From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tom St Denis Subject: [PATCH 1/3] drm/amd/amdgpu: Add debugfs support for reading GPRs (v2) Date: Tue, 6 Dec 2016 09:50:12 -0500 Message-ID: <20161206145014.9140-2-tom.stdenis@amd.com> References: <20161206145014.9140-1-tom.stdenis@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20161206145014.9140-1-tom.stdenis-5C7GfCeVMHo@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Tom St Denis SW1wbGVtZW50ZWQgZm9yIFNHUFJzIGZvciBHRlggdjggaW5pdGlhbGx5LgoKKHYyKSBjbGVhbnVw IG1pbm9yIHdoaXRlc3BhY2UgYW5kIHJlbW92ZSBzYW5pdHkgY2hlY2sgYW5kCiAgICAgYWRkcmVz c2luZyBpcyBpbiBkd29yZHMgbm90IGJ5dGVzCgpTaWduZWQtb2ZmLWJ5OiBUb20gU3QgRGVuaXMg PHRvbS5zdGRlbmlzQGFtZC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1LmggICAgICAgIHwgIDIgKwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Rl dmljZS5jIHwgNjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9nZnhfdjhfMC5jICAgICAgfCAyNSArKysrKysrKysrKwogMyBmaWxlcyBj aGFuZ2VkLCA5NCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaApp bmRleCA0ZjY0YmIxNmE4ZDMuLjI4MzQ0NTFlZWY4YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv YW1kZ3B1LmgKQEAgLTg0NCw2ICs4NDQsOCBAQCBzdHJ1Y3QgYW1kZ3B1X2dmeF9mdW5jcyB7CiAJ dWludDY0X3QgKCpnZXRfZ3B1X2Nsb2NrX2NvdW50ZXIpKHN0cnVjdCBhbWRncHVfZGV2aWNlICph ZGV2KTsKIAl2b2lkICgqc2VsZWN0X3NlX3NoKShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwg dTMyIHNlX251bSwgdTMyIHNoX251bSwgdTMyIGluc3RhbmNlKTsKIAl2b2lkICgqcmVhZF93YXZl X2RhdGEpKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCB1aW50MzJfdCBzaW1kLCB1aW50MzJf dCB3YXZlLCB1aW50MzJfdCAqZHN0LCBpbnQgKm5vX2ZpZWxkcyk7CisJdm9pZCAoKnJlYWRfd2F2 ZV92Z3Bycykoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHVpbnQzMl90IHNpbWQsIHVpbnQz Ml90IHdhdmUsIHVpbnQzMl90IHRocmVhZCwgdWludDMyX3Qgc3RhcnQsIHVpbnQzMl90IHNpemUs IHVpbnQzMl90ICpkc3QpOworCXZvaWQgKCpyZWFkX3dhdmVfc2dwcnMpKHN0cnVjdCBhbWRncHVf ZGV2aWNlICphZGV2LCB1aW50MzJfdCBzaW1kLCB1aW50MzJfdCB3YXZlLCB1aW50MzJfdCBzdGFy dCwgdWludDMyX3Qgc2l6ZSwgdWludDMyX3QgKmRzdCk7CiB9OwogCiBzdHJ1Y3QgYW1kZ3B1X2dm eCB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNl LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMKaW5kZXggMjVh ZDczNmI1Y2E1Li42OGQ0ODllMjhjYmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9kZXZpY2UuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfZGV2aWNlLmMKQEAgLTMwNTUsNiArMzA1NSw2NiBAQCBzdGF0aWMgc3NpemVfdCBhbWRn cHVfZGVidWdmc193YXZlX3JlYWQoc3RydWN0IGZpbGUgKmYsIGNoYXIgX191c2VyICpidWYsCiAJ cmV0dXJuIHJlc3VsdDsKIH0KIAorc3RhdGljIHNzaXplX3QgYW1kZ3B1X2RlYnVnZnNfZ3ByX3Jl YWQoc3RydWN0IGZpbGUgKmYsIGNoYXIgX191c2VyICpidWYsCisJCQkJCXNpemVfdCBzaXplLCBs b2ZmX3QgKnBvcykKK3sKKwlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiA9IGYtPmZfaW5vZGUt PmlfcHJpdmF0ZTsKKwlpbnQgcjsKKwlzc2l6ZV90IHJlc3VsdCA9IDA7CisJdWludDMyX3Qgb2Zm c2V0LCBzZSwgc2gsIGN1LCB3YXZlLCBzaW1kLCB0aHJlYWQsIGJhbmssICpkYXRhOworCisJaWYg KHNpemUgJiAzIHx8ICpwb3MgJiAzKQorCQlyZXR1cm4gLUVJTlZBTDsKKworCS8qIGRlY29kZSBv ZmZzZXQgKi8KKwlvZmZzZXQgPSAoKnBvcyAmIDB4RkZGKTsgICAgICAgLyogaW4gZHdvcmRzICov CisJc2UgPSAoKCpwb3MgPj4gMTIpICYgMHhGRik7CisJc2ggPSAoKCpwb3MgPj4gMjApICYgMHhG Rik7CisJY3UgPSAoKCpwb3MgPj4gMjgpICYgMHhGRik7CisJd2F2ZSA9ICgoKnBvcyA+PiAzNikg JiAweEZGKTsKKwlzaW1kID0gKCgqcG9zID4+IDQ0KSAmIDB4RkYpOworCXRocmVhZCA9ICgoKnBv cyA+PiA1MikgJiAweEZGKTsKKwliYW5rID0gKCgqcG9zID4+IDYwKSAmIDEpOworCisJZGF0YSA9 IGttYWxsb2NfYXJyYXkoMTAyNCwgc2l6ZW9mKCpkYXRhKSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFk YXRhKQorCQlyZXR1cm4gLUVOT01FTTsKKworCS8qIHN3aXRjaCB0byB0aGUgc3BlY2lmaWMgc2Uv c2gvY3UgKi8KKwltdXRleF9sb2NrKCZhZGV2LT5ncmJtX2lkeF9tdXRleCk7CisJYW1kZ3B1X2dm eF9zZWxlY3Rfc2Vfc2goYWRldiwgc2UsIHNoLCBjdSk7CisKKwlpZiAoYmFuayA9PSAwKSB7CisJ CWlmIChhZGV2LT5nZnguZnVuY3MtPnJlYWRfd2F2ZV92Z3BycykKKwkJCWFkZXYtPmdmeC5mdW5j cy0+cmVhZF93YXZlX3ZncHJzKGFkZXYsIHNpbWQsIHdhdmUsIHRocmVhZCwgb2Zmc2V0LCBzaXpl Pj4yLCBkYXRhKTsKKwl9IGVsc2UgeworCQlpZiAoYWRldi0+Z2Z4LmZ1bmNzLT5yZWFkX3dhdmVf c2dwcnMpCisJCQlhZGV2LT5nZnguZnVuY3MtPnJlYWRfd2F2ZV9zZ3BycyhhZGV2LCBzaW1kLCB3 YXZlLCBvZmZzZXQsIHNpemU+PjIsIGRhdGEpOworCX0KKworCWFtZGdwdV9nZnhfc2VsZWN0X3Nl X3NoKGFkZXYsIDB4RkZGRkZGRkYsIDB4RkZGRkZGRkYsIDB4RkZGRkZGRkYpOworCW11dGV4X3Vu bG9jaygmYWRldi0+Z3JibV9pZHhfbXV0ZXgpOworCisJd2hpbGUgKHNpemUpIHsKKwkJdWludDMy X3QgdmFsdWU7CisKKwkJdmFsdWUgPSBkYXRhW29mZnNldCsrXTsKKwkJciA9IHB1dF91c2VyKHZh bHVlLCAodWludDMyX3QgKilidWYpOworCQlpZiAocikgeworCQkJcmVzdWx0ID0gcjsKKwkJCWdv dG8gZXJyOworCQl9CisKKwkJcmVzdWx0ICs9IDQ7CisJCWJ1ZiArPSA0OworCQlzaXplIC09IDQ7 CisJfQorCitlcnI6CisJa2ZyZWUoZGF0YSk7CisJcmV0dXJuIHJlc3VsdDsKK30KKwogc3RhdGlj IGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgYW1kZ3B1X2RlYnVnZnNfcmVnc19mb3BzID0g ewogCS5vd25lciA9IFRISVNfTU9EVUxFLAogCS5yZWFkID0gYW1kZ3B1X2RlYnVnZnNfcmVnc19y ZWFkLApAQCAtMzA5Nyw2ICszMTU3LDExIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZmlsZV9vcGVy YXRpb25zIGFtZGdwdV9kZWJ1Z2ZzX3dhdmVfZm9wcyA9IHsKIAkucmVhZCA9IGFtZGdwdV9kZWJ1 Z2ZzX3dhdmVfcmVhZCwKIAkubGxzZWVrID0gZGVmYXVsdF9sbHNlZWsKIH07CitzdGF0aWMgY29u c3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBhbWRncHVfZGVidWdmc19ncHJfZm9wcyA9IHsKKwku b3duZXIgPSBUSElTX01PRFVMRSwKKwkucmVhZCA9IGFtZGdwdV9kZWJ1Z2ZzX2dwcl9yZWFkLAor CS5sbHNlZWsgPSBkZWZhdWx0X2xsc2VlaworfTsKIAogc3RhdGljIGNvbnN0IHN0cnVjdCBmaWxl X29wZXJhdGlvbnMgKmRlYnVnZnNfcmVnc1tdID0gewogCSZhbWRncHVfZGVidWdmc19yZWdzX2Zv cHMsCkBAIC0zMTA2LDYgKzMxNzEsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0 aW9ucyAqZGVidWdmc19yZWdzW10gPSB7CiAJJmFtZGdwdV9kZWJ1Z2ZzX2djYV9jb25maWdfZm9w cywKIAkmYW1kZ3B1X2RlYnVnZnNfc2Vuc29yc19mb3BzLAogCSZhbWRncHVfZGVidWdmc193YXZl X2ZvcHMsCisJJmFtZGdwdV9kZWJ1Z2ZzX2dwcl9mb3BzLAogfTsKIAogc3RhdGljIGNvbnN0IGNo YXIgKmRlYnVnZnNfcmVnc19uYW1lc1tdID0gewpAQCAtMzExNiw2ICszMTgyLDcgQEAgc3RhdGlj IGNvbnN0IGNoYXIgKmRlYnVnZnNfcmVnc19uYW1lc1tdID0gewogCSJhbWRncHVfZ2NhX2NvbmZp ZyIsCiAJImFtZGdwdV9zZW5zb3JzIiwKIAkiYW1kZ3B1X3dhdmUiLAorCSJhbWRncHVfZ3ByIiwK IH07CiAKIHN0YXRpYyBpbnQgYW1kZ3B1X2RlYnVnZnNfcmVnc19pbml0KHN0cnVjdCBhbWRncHVf ZGV2aWNlICphZGV2KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4 X3Y4XzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OF8wLmMKaW5kZXggOWI4 ZDNmZTY3YWRiLi4xODAzMDlmNTc4NGMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2dmeF92OF8wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y4 XzAuYwpAQCAtNTE4NCw2ICs1MTg0LDIxIEBAIHN0YXRpYyB1aW50MzJfdCB3YXZlX3JlYWRfaW5k KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCB1aW50MzJfdCBzaW1kLCB1aW50MzJfCiAJcmV0 dXJuIFJSRUczMihtbVNRX0lORF9EQVRBKTsKIH0KIAorc3RhdGljIHZvaWQgd2F2ZV9yZWFkX3Jl Z3Moc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHVpbnQzMl90IHNpbWQsCisJCQkgICB1aW50 MzJfdCB3YXZlLCB1aW50MzJfdCB0aHJlYWQsCisJCQkgICB1aW50MzJfdCByZWdubywgdWludDMy X3QgbnVtLCB1aW50MzJfdCAqb3V0KQoreworCVdSRUczMihtbVNRX0lORF9JTkRFWCwKKwkJKHdh dmUgPDwgU1FfSU5EX0lOREVYX19XQVZFX0lEX19TSElGVCkgfAorCQkoc2ltZCA8PCBTUV9JTkRf SU5ERVhfX1NJTURfSURfX1NISUZUKSB8CisJCShyZWdubyA8PCBTUV9JTkRfSU5ERVhfX0lOREVY X19TSElGVCkgfAorCQkodGhyZWFkIDw8IFNRX0lORF9JTkRFWF9fVEhSRUFEX0lEX19TSElGVCkg fAorCQkoU1FfSU5EX0lOREVYX19GT1JDRV9SRUFEX01BU0spIHwKKwkJKFNRX0lORF9JTkRFWF9f QVVUT19JTkNSX01BU0spKTsKKwl3aGlsZSAobnVtLS0pCisJCSoob3V0KyspID0gUlJFRzMyKG1t U1FfSU5EX0RBVEEpOworfQorCiBzdGF0aWMgdm9pZCBnZnhfdjhfMF9yZWFkX3dhdmVfZGF0YShz dHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdWludDMyX3Qgc2ltZCwgdWludDMyX3Qgd2F2ZSwg dWludDMyX3QgKmRzdCwgaW50ICpub19maWVsZHMpCiB7CiAJLyogdHlwZSAwIHdhdmUgZGF0YSAq LwpAQCAtNTIwOCwxMSArNTIyMywyMSBAQCBzdGF0aWMgdm9pZCBnZnhfdjhfMF9yZWFkX3dhdmVf ZGF0YShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdWludDMyX3Qgc2ltZCwgdQogCWRzdFso Km5vX2ZpZWxkcykrK10gPSB3YXZlX3JlYWRfaW5kKGFkZXYsIHNpbWQsIHdhdmUsIGl4U1FfV0FW RV9NMCk7CiB9CiAKK3N0YXRpYyB2b2lkIGdmeF92OF8wX3JlYWRfd2F2ZV9zZ3BycyhzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldiwgdWludDMyX3Qgc2ltZCwKKwkJCQkgICAgIHVpbnQzMl90IHdh dmUsIHVpbnQzMl90IHN0YXJ0LAorCQkJCSAgICAgdWludDMyX3Qgc2l6ZSwgdWludDMyX3QgKmRz dCkKK3sKKwl3YXZlX3JlYWRfcmVncygKKwkJYWRldiwgc2ltZCwgd2F2ZSwgMCwKKwkJc3RhcnQg KyBTUUlORF9XQVZFX1NHUFJTX09GRlNFVCwgc2l6ZSwgZHN0KTsKK30KKwogCiBzdGF0aWMgY29u c3Qgc3RydWN0IGFtZGdwdV9nZnhfZnVuY3MgZ2Z4X3Y4XzBfZ2Z4X2Z1bmNzID0gewogCS5nZXRf Z3B1X2Nsb2NrX2NvdW50ZXIgPSAmZ2Z4X3Y4XzBfZ2V0X2dwdV9jbG9ja19jb3VudGVyLAogCS5z ZWxlY3Rfc2Vfc2ggPSAmZ2Z4X3Y4XzBfc2VsZWN0X3NlX3NoLAogCS5yZWFkX3dhdmVfZGF0YSA9 ICZnZnhfdjhfMF9yZWFkX3dhdmVfZGF0YSwKKwkucmVhZF93YXZlX3NncHJzID0gJmdmeF92OF8w X3JlYWRfd2F2ZV9zZ3BycywKIH07CiAKIHN0YXRpYyBpbnQgZ2Z4X3Y4XzBfZWFybHlfaW5pdCh2 b2lkICpoYW5kbGUpCi0tIAoyLjEwLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v YW1kLWdmeAo=