From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andres Rodriguez Subject: [PATCH 10/25] drm/amdgpu: teach amdgpu how to enable interrupts for any pipe v2 Date: Tue, 4 Apr 2017 18:05:36 -0400 Message-ID: <20170404220551.8669-11-andresx7@gmail.com> References: <20170404220551.8669-1-andresx7@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170404220551.8669-1-andresx7-Re5JQEeQqe8AvxtiuMwx3w@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: andresx7-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org VGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gaXMgaGFyZGNvZGVkIHRvIGVuYWJsZSBNRTEvUElQ RTAgaW50ZXJydXB0cwpvbmx5LgoKVGhpcyBwYXRjaCBhbGxvd3MgYW1kZ3B1IHRvIGVuYWJsZSBp bnRlcnJ1cHRzIGZvciBhbnkgcGlwZSBvZiBNRTEuCgp2MjogYWRkZWQgZ2Z4OSBzdXBwb3J0ClNp Z25lZC1vZmYtYnk6IEFuZHJlcyBSb2RyaWd1ZXogPGFuZHJlc3g3QGdtYWlsLmNvbT4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjdfMC5jIHwgNDggKysrKysrKysrKysrLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjhfMC5j IHwgMzMgKysrKysrKysrKystLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2dmeF92OV8wLmMgfCA1MCArKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMyBm aWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCA4MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjdfMC5jIGIvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvZ2Z4X3Y3XzAuYwppbmRleCAwNTg2ZjFjLi4yMTM1MzI0IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjdfMC5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92N18wLmMKQEAgLTUwNTksNTYgKzUwNTksNDIgQEAgc3Rh dGljIHZvaWQgZ2Z4X3Y3XzBfc2V0X2dmeF9lb3BfaW50ZXJydXB0X3N0YXRlKHN0cnVjdCBhbWRn cHVfZGV2aWNlICphZGV2LAogCQlicmVhazsKIAlkZWZhdWx0OgogCQlicmVhazsKIAl9CiB9CiAK IHN0YXRpYyB2b2lkIGdmeF92N18wX3NldF9jb21wdXRlX2VvcF9pbnRlcnJ1cHRfc3RhdGUoc3Ry dWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCiAJCQkJCQkgICAgIGludCBtZSwgaW50IHBpcGUsCiAJ CQkJCQkgICAgIGVudW0gYW1kZ3B1X2ludGVycnVwdF9zdGF0ZSBzdGF0ZSkKIHsKLQl1MzIgbWVj X2ludF9jbnRsLCBtZWNfaW50X2NudGxfcmVnOwotCi0JLyoKLQkgKiBhbWRncHUgY29udHJvbHMg b25seSBwaXBlIDAgb2YgTUVDMS4gVGhhdCdzIHdoeSB0aGlzIGZ1bmN0aW9uIG9ubHkKLQkgKiBo YW5kbGVzIHRoZSBzZXR0aW5nIG9mIGludGVycnVwdHMgZm9yIHRoaXMgc3BlY2lmaWMgcGlwZS4g QWxsIG90aGVyCi0JICogcGlwZXMnIGludGVycnVwdHMgYXJlIHNldCBieSBhbWRrZmQuCisJLyog TWUgMCBpcyBmb3IgZ3JhcGhpY3MgYW5kIE1lIDIgaXMgcmVzZXJ2ZWQgZm9yIEhXIHNjaGVkdWxp bmcKKwkgKiBTbyB3ZSBzaG91bGQgb25seSByZWFsbHkgYmUgY29uZmlndXJpbmcgTUUgMSBpLmUu IE1FQzAKIAkgKi8KLQotCWlmIChtZSA9PSAxKSB7Ci0JCXN3aXRjaCAocGlwZSkgewotCQljYXNl IDA6Ci0JCQltZWNfaW50X2NudGxfcmVnID0gbW1DUF9NRTFfUElQRTBfSU5UX0NOVEw7Ci0JCQli cmVhazsKLQkJZGVmYXVsdDoKLQkJCURSTV9ERUJVRygiaW52YWxpZCBwaXBlICVkXG4iLCBwaXBl KTsKLQkJCXJldHVybjsKLQkJfQotCX0gZWxzZSB7Ci0JCURSTV9ERUJVRygiaW52YWxpZCBtZSAl ZFxuIiwgbWUpOworCWlmIChtZSAhPSAxKSB7CisJCURSTV9FUlJPUigiSWdub3JpbmcgcmVxdWVz dCB0byBlbmFibGUgaW50ZXJydXB0cyBmb3IgaW52YWxpZCBtZTolZFxuIiwgbWUpOwogCQlyZXR1 cm47CiAJfQogCi0Jc3dpdGNoIChzdGF0ZSkgewotCWNhc2UgQU1ER1BVX0lSUV9TVEFURV9ESVNB QkxFOgotCQltZWNfaW50X2NudGwgPSBSUkVHMzIobWVjX2ludF9jbnRsX3JlZyk7Ci0JCW1lY19p bnRfY250bCAmPSB+Q1BfSU5UX0NOVExfUklORzBfX1RJTUVfU1RBTVBfSU5UX0VOQUJMRV9NQVNL OwotCQlXUkVHMzIobWVjX2ludF9jbnRsX3JlZywgbWVjX2ludF9jbnRsKTsKLQkJYnJlYWs7Ci0J Y2FzZSBBTURHUFVfSVJRX1NUQVRFX0VOQUJMRToKLQkJbWVjX2ludF9jbnRsID0gUlJFRzMyKG1l Y19pbnRfY250bF9yZWcpOwotCQltZWNfaW50X2NudGwgfD0gQ1BfSU5UX0NOVExfUklORzBfX1RJ TUVfU1RBTVBfSU5UX0VOQUJMRV9NQVNLOwotCQlXUkVHMzIobWVjX2ludF9jbnRsX3JlZywgbWVj X2ludF9jbnRsKTsKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJYnJlYWs7CisJaWYgKHBpcGUgPj0g YWRldi0+Z2Z4Lm1lYy5udW1fcGlwZV9wZXJfbWVjKSB7CisJCURSTV9FUlJPUigiSWdub3Jpbmcg cmVxdWVzdCB0byBlbmFibGUgaW50ZXJydXB0cyBmb3IgaW52YWxpZCAiCisJCQkJIm1lOiVkIHBp cGU6JWRcbiIsIHBpcGUsIG1lKTsKKwkJcmV0dXJuOwogCX0KKworCW11dGV4X2xvY2soJmFkZXYt PnNyYm1fbXV0ZXgpOworCWNpa19zcmJtX3NlbGVjdChhZGV2LCBtZSwgcGlwZSwgMCwgMCk7CisK KwlXUkVHMzJfRklFTEQoQ1BDX0lOVF9DTlRMLCBUSU1FX1NUQU1QX0lOVF9FTkFCTEUsCisJCQlz dGF0ZSA9PSBBTURHUFVfSVJRX1NUQVRFX0RJU0FCTEUgPyAwIDogMSk7CisKKwljaWtfc3JibV9z ZWxlY3QoYWRldiwgMCwgMCwgMCwgMCk7CisJbXV0ZXhfdW5sb2NrKCZhZGV2LT5zcmJtX211dGV4 KTsKIH0KIAogc3RhdGljIGludCBnZnhfdjdfMF9zZXRfcHJpdl9yZWdfZmF1bHRfc3RhdGUoc3Ry dWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCiAJCQkJCSAgICAgc3RydWN0IGFtZGdwdV9pcnFfc3Jj ICpzcmMsCiAJCQkJCSAgICAgdW5zaWduZWQgdHlwZSwKIAkJCQkJICAgICBlbnVtIGFtZGdwdV9p bnRlcnJ1cHRfc3RhdGUgc3RhdGUpCiB7CiAJdTMyIGNwX2ludF9jbnRsOwogCiAJc3dpdGNoIChz dGF0ZSkgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y4XzAu YyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OF8wLmMKaW5kZXggMTc3OTkyYy4u ZTllMDEzYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y4XzAu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjhfMC5jCkBAIC02ODEzLDQx ICs2ODEzLDQwIEBAIHN0YXRpYyB2b2lkIGdmeF92OF8wX3NldF9nZnhfZW9wX2ludGVycnVwdF9z dGF0ZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKIAkJCQkJCSBlbnVtIGFtZGdwdV9pbnRl cnJ1cHRfc3RhdGUgc3RhdGUpCiB7CiAJV1JFRzMyX0ZJRUxEKENQX0lOVF9DTlRMX1JJTkcwLCBU SU1FX1NUQU1QX0lOVF9FTkFCTEUsCiAJCSAgICAgc3RhdGUgPT0gQU1ER1BVX0lSUV9TVEFURV9E SVNBQkxFID8gMCA6IDEpOwogfQogCiBzdGF0aWMgdm9pZCBnZnhfdjhfMF9zZXRfY29tcHV0ZV9l b3BfaW50ZXJydXB0X3N0YXRlKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LAogCQkJCQkJICAg ICBpbnQgbWUsIGludCBwaXBlLAogCQkJCQkJICAgICBlbnVtIGFtZGdwdV9pbnRlcnJ1cHRfc3Rh dGUgc3RhdGUpCiB7Ci0JLyoKLQkgKiBhbWRncHUgY29udHJvbHMgb25seSBwaXBlIDAgb2YgTUVD MS4gVGhhdCdzIHdoeSB0aGlzIGZ1bmN0aW9uIG9ubHkKLQkgKiBoYW5kbGVzIHRoZSBzZXR0aW5n IG9mIGludGVycnVwdHMgZm9yIHRoaXMgc3BlY2lmaWMgcGlwZS4gQWxsIG90aGVyCi0JICogcGlw ZXMnIGludGVycnVwdHMgYXJlIHNldCBieSBhbWRrZmQuCi0JICovCisJLyogTWUgMCBpcyByZXNl cnZlZCBmb3IgZ3JhcGhpY3MgKi8KKwlpZiAobWUgPCAxIHx8IG1lID4gYWRldi0+Z2Z4Lm1lYy5u dW1fbWVjKSB7CisJCURSTV9FUlJPUigiSWdub3JpbmcgcmVxdWVzdCB0byBlbmFibGUgaW50ZXJy dXB0cyBmb3IgaW52YWxpZCBtZTolZFxuIiwgbWUpOworCQlyZXR1cm47CisJfQogCi0JaWYgKG1l ID09IDEpIHsKLQkJc3dpdGNoIChwaXBlKSB7Ci0JCWNhc2UgMDoKLQkJCWJyZWFrOwotCQlkZWZh dWx0OgotCQkJRFJNX0RFQlVHKCJpbnZhbGlkIHBpcGUgJWRcbiIsIHBpcGUpOwotCQkJcmV0dXJu OwotCQl9Ci0JfSBlbHNlIHsKLQkJRFJNX0RFQlVHKCJpbnZhbGlkIG1lICVkXG4iLCBtZSk7CisJ aWYgKHBpcGUgPj0gYWRldi0+Z2Z4Lm1lYy5udW1fcGlwZV9wZXJfbWVjKSB7CisJCURSTV9FUlJP UigiSWdub3JpbmcgcmVxdWVzdCB0byBlbmFibGUgaW50ZXJydXB0cyBmb3IgaW52YWxpZCAiCisJ CQkJIm1lOiVkIHBpcGU6JWRcbiIsIHBpcGUsIG1lKTsKIAkJcmV0dXJuOwogCX0KIAotCVdSRUcz Ml9GSUVMRChDUF9NRTFfUElQRTBfSU5UX0NOVEwsIFRJTUVfU1RBTVBfSU5UX0VOQUJMRSwKLQkJ ICAgICBzdGF0ZSA9PSBBTURHUFVfSVJRX1NUQVRFX0RJU0FCTEUgPyAwIDogMSk7CisJbXV0ZXhf bG9jaygmYWRldi0+c3JibV9tdXRleCk7CisJdmlfc3JibV9zZWxlY3QoYWRldiwgbWUsIHBpcGUs IDAsIDApOworCisJV1JFRzMyX0ZJRUxEKENQQ19JTlRfQ05UTCwgVElNRV9TVEFNUF9JTlRfRU5B QkxFLAorCQkJc3RhdGUgPT0gQU1ER1BVX0lSUV9TVEFURV9ESVNBQkxFID8gMCA6IDEpOworCisJ dmlfc3JibV9zZWxlY3QoYWRldiwgMCwgMCwgMCwgMCk7CisJbXV0ZXhfdW5sb2NrKCZhZGV2LT5z cmJtX211dGV4KTsKIH0KIAogc3RhdGljIGludCBnZnhfdjhfMF9zZXRfcHJpdl9yZWdfZmF1bHRf c3RhdGUoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsCiAJCQkJCSAgICAgc3RydWN0IGFtZGdw dV9pcnFfc3JjICpzb3VyY2UsCiAJCQkJCSAgICAgdW5zaWduZWQgdHlwZSwKIAkJCQkJICAgICBl bnVtIGFtZGdwdV9pbnRlcnJ1cHRfc3RhdGUgc3RhdGUpCiB7CiAJV1JFRzMyX0ZJRUxEKENQX0lO VF9DTlRMX1JJTkcwLCBQUklWX1JFR19JTlRfRU5BQkxFLAogCQkgICAgIHN0YXRlID09IEFNREdQ VV9JUlFfU1RBVEVfRElTQUJMRSA/IDAgOiAxKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvZ2Z4X3Y5XzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dm eF92OV8wLmMKaW5kZXggZGU2ZTUzNy4uOTc2YzM5MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvZ2Z4X3Y5XzAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9nZnhfdjlfMC5jCkBAIC0zNDc0LDU4ICszNDc0LDQwIEBAIHN0YXRpYyB2b2lkIGdmeF92OV8w X3NldF9nZnhfZW9wX2ludGVycnVwdF9zdGF0ZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwK IAkJYnJlYWs7CiAJZGVmYXVsdDoKIAkJYnJlYWs7CiAJfQogfQogCiBzdGF0aWMgdm9pZCBnZnhf djlfMF9zZXRfY29tcHV0ZV9lb3BfaW50ZXJydXB0X3N0YXRlKHN0cnVjdCBhbWRncHVfZGV2aWNl ICphZGV2LAogCQkJCQkJICAgICBpbnQgbWUsIGludCBwaXBlLAogCQkJCQkJICAgICBlbnVtIGFt ZGdwdV9pbnRlcnJ1cHRfc3RhdGUgc3RhdGUpCiB7Ci0JdTMyIG1lY19pbnRfY250bCwgbWVjX2lu dF9jbnRsX3JlZzsKLQotCS8qCi0JICogYW1kZ3B1IGNvbnRyb2xzIG9ubHkgcGlwZSAwIG9mIE1F QzEuIFRoYXQncyB3aHkgdGhpcyBmdW5jdGlvbiBvbmx5Ci0JICogaGFuZGxlcyB0aGUgc2V0dGlu ZyBvZiBpbnRlcnJ1cHRzIGZvciB0aGlzIHNwZWNpZmljIHBpcGUuIEFsbCBvdGhlcgotCSAqIHBp cGVzJyBpbnRlcnJ1cHRzIGFyZSBzZXQgYnkgYW1ka2ZkLgotCSAqLwotCi0JaWYgKG1lID09IDEp IHsKLQkJc3dpdGNoIChwaXBlKSB7Ci0JCWNhc2UgMDoKLQkJCW1lY19pbnRfY250bF9yZWcgPSBT T0MxNV9SRUdfT0ZGU0VUKEdDLCAwLCBtbUNQX01FMV9QSVBFMF9JTlRfQ05UTCk7Ci0JCQlicmVh azsKLQkJZGVmYXVsdDoKLQkJCURSTV9ERUJVRygiaW52YWxpZCBwaXBlICVkXG4iLCBwaXBlKTsK LQkJCXJldHVybjsKLQkJfQotCX0gZWxzZSB7Ci0JCURSTV9ERUJVRygiaW52YWxpZCBtZSAlZFxu IiwgbWUpOworCS8qIE1lIDAgaXMgcmVzZXJ2ZWQgZm9yIGdyYXBoaWNzICovCisJaWYgKG1lIDwg MSB8fCBtZSA+IGFkZXYtPmdmeC5tZWMubnVtX21lYykgeworCQlEUk1fRVJST1IoIklnbm9yaW5n IHJlcXVlc3QgdG8gZW5hYmxlIGludGVycnVwdHMgZm9yIGludmFsaWQgbWU6JWRcbiIsIG1lKTsK IAkJcmV0dXJuOwogCX0KIAotCXN3aXRjaCAoc3RhdGUpIHsKLQljYXNlIEFNREdQVV9JUlFfU1RB VEVfRElTQUJMRToKLQkJbWVjX2ludF9jbnRsID0gUlJFRzMyKG1lY19pbnRfY250bF9yZWcpOwot CQltZWNfaW50X2NudGwgPSBSRUdfU0VUX0ZJRUxEKG1lY19pbnRfY250bCwgQ1BfTUUxX1BJUEUw X0lOVF9DTlRMLAotCQkJCQkgICAgIFRJTUVfU1RBTVBfSU5UX0VOQUJMRSwgMCk7Ci0JCVdSRUcz MihtZWNfaW50X2NudGxfcmVnLCBtZWNfaW50X2NudGwpOwotCQlicmVhazsKLQljYXNlIEFNREdQ VV9JUlFfU1RBVEVfRU5BQkxFOgotCQltZWNfaW50X2NudGwgPSBSUkVHMzIobWVjX2ludF9jbnRs X3JlZyk7Ci0JCW1lY19pbnRfY250bCA9IFJFR19TRVRfRklFTEQobWVjX2ludF9jbnRsLCBDUF9N RTFfUElQRTBfSU5UX0NOVEwsCi0JCQkJCSAgICAgVElNRV9TVEFNUF9JTlRfRU5BQkxFLCAxKTsK LQkJV1JFRzMyKG1lY19pbnRfY250bF9yZWcsIG1lY19pbnRfY250bCk7Ci0JCWJyZWFrOwotCWRl ZmF1bHQ6Ci0JCWJyZWFrOworCWlmIChwaXBlID49IGFkZXYtPmdmeC5tZWMubnVtX3BpcGVfcGVy X21lYykgeworCQlEUk1fRVJST1IoIklnbm9yaW5nIHJlcXVlc3QgdG8gZW5hYmxlIGludGVycnVw dHMgZm9yIGludmFsaWQgIgorCQkJCSJtZTolZCBwaXBlOiVkXG4iLCBwaXBlLCBtZSk7CisJCXJl dHVybjsKIAl9CisKKwltdXRleF9sb2NrKCZhZGV2LT5zcmJtX211dGV4KTsKKwl2aV9zcmJtX3Nl bGVjdChhZGV2LCBtZSwgcGlwZSwgMCwgMCk7CisKKwlXUkVHMzJfRklFTEQoQ1BDX0lOVF9DTlRM LCBUSU1FX1NUQU1QX0lOVF9FTkFCTEUsCisJCQlzdGF0ZSA9PSBBTURHUFVfSVJRX1NUQVRFX0RJ U0FCTEUgPyAwIDogMSk7CisKKwl2aV9zcmJtX3NlbGVjdChhZGV2LCAwLCAwLCAwLCAwKTsKKwlt dXRleF91bmxvY2soJmFkZXYtPnNyYm1fbXV0ZXgpOwogfQogCiBzdGF0aWMgaW50IGdmeF92OV8w X3NldF9wcml2X3JlZ19mYXVsdF9zdGF0ZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKIAkJ CQkJICAgICBzdHJ1Y3QgYW1kZ3B1X2lycV9zcmMgKnNvdXJjZSwKIAkJCQkJICAgICB1bnNpZ25l ZCB0eXBlLAogCQkJCQkgICAgIGVudW0gYW1kZ3B1X2ludGVycnVwdF9zdGF0ZSBzdGF0ZSkKIHsK IAl1MzIgY3BfaW50X2NudGw7CiAKIAlzd2l0Y2ggKHN0YXRlKSB7Ci0tIAoyLjkuMwoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5n IGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg==