From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sasha Levin Subject: [PATCH AUTOSEL 5.0 194/262] drm/msm/dpu: Convert to a chained irq chip Date: Wed, 27 Mar 2019 14:00:49 -0400 Message-ID: <20190327180158.10245-194-sashal@kernel.org> References: <20190327180158.10245-1-sashal@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190327180158.10245-1-sashal-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: Sasha Levin , Rajesh Yadav , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Stephen Boyd , Jayant Shekhar , Jordan Crouse , Sean Paul , Jeykumar Sankaran , freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogU3RlcGhlbiBCb3lkIDxzd2JveWRAY2hyb21pdW0ub3JnPgoKWyBVcHN0cmVhbSBjb21t aXQgMDcwZTY0ZGMxYmJjODc5YjdlMGU5ZmZmY2NkOWRkMTM5YmFmODlmMCBdCgpEZXZpY2VzIHRo YXQgbWFrZSB1cCBEUFUsIGkuZS4gZ3JhcGhpY3MgY2FyZCwgcmVxdWVzdCB0aGVpciBpbnRlcnJ1 cHRzCmZyb20gdGhpcyAidmlydHVhbCIgaW50ZXJydXB0IGNoaXAuIFRoZSBpbnRlcnJ1cHQgY2hp cCBidWlsZHMgdXBvbiBhIEdJQwpTUEkgaW50ZXJydXB0IHRoYXQgcmFpc2VzIGhpZ2ggd2hlbiBh bnkgb2YgdGhlIGludGVycnVwdHMgaW4gdGhlIERQVSdzCmlycSBzdGF0dXMgcmVnaXN0ZXIgYXJl IHRyaWdnZXJlZC4gRnJvbSB0aGUga2VybmVsJ3MgcGVyc3BlY3RpdmUgdGhpcyBpcwphIGNoYWlu ZWQgaXJxIGNoaXAsIHNvIHJlcXVlc3RpbmcgYSBmbG93IGhhbmRsZXIgZm9yIHRoZSBHSUMgU1BJ IGFuZAp0aGVuIGNhbGxpbmcgZ2VuZXJpYyBJUlEgaGFuZGxpbmcgY29kZSBmcm9tIHRoYXQgaXJx IGhhbmRsZXIgaXMgbm90CmNvbXBsZXRlbHkgcHJvcGVyLiBJdCdzIGJldHRlciB0byBjb252ZXJ0 IHRoaXMgdG8gYSBjaGFpbmVkIGlycSBzbyB0aGF0CnRoZSBHSUMgU1BJIGlycSBkb2Vzbid0IGFw cGVhciBpbiAvcHJvYy9pbnRlcnJ1cHRzLCBjYW4ndCBoYXZlIENQVQphZmZpbml0eSBjaGFuZ2Vk LCBhbmQgd29uJ3QgYmUgYWNjb3VudGVkIGZvciB3aXRoIGlycSBzdGF0cy4gRG9pbmcgdGhpcwph bHNvIHNpbGVuY2VzIGEgcmVjdXJzaXZlIGxvY2tkZXAgd2FybmluZyBiZWNhdXNlIHdlIGNhbiBz cGVjaWZ5IGEKZGlmZmVyZW50IGxvY2sgY2xhc3MgZm9yIHRoZSBjaGFpbmVkIGludGVycnVwdHMs IHNpbGVuY2luZyBhIHdhcm5pbmcKdGhhdCBpcyBlYXN5IHRvIHNlZSB3aXRoICd0aHJlYWRpcnFz JyBvbiB0aGUga2VybmVsIGNvbW1hbmRsaW5lLgoKIFdBUk5JTkc6IGluY29uc2lzdGVudCBsb2Nr IHN0YXRlCiA0LjE5LjEwICM3NiBUYWludGVkOiBHICAgICAgICBXCiAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQogaW5jb25zaXN0ZW50IHtJTi1IQVJESVJRLVd9IC0+IHtIQVJESVJR LU9OLVd9IHVzYWdlLgogaXJxLzQwLWRwdV9tZHNzLzIwMyBbSEMwWzBdOlNDMFsyXTpIRTE6U0Uw XSB0YWtlczoKIDAwMDAwMDAwNTNlYTkwMjEgKCZpcnFfZGVzY19sb2NrX2NsYXNzKXs/Li0ufSwg YXQ6IGhhbmRsZV9sZXZlbF9pcnErMHgzNC8weDI2Ywoge0lOLUhBUkRJUlEtV30gc3RhdGUgd2Fz IHJlZ2lzdGVyZWQgYXQ6CiAgIGxvY2tfYWNxdWlyZSsweDI0NC8weDM2MAogICBfcmF3X3NwaW5f bG9jaysweDY0LzB4YTAKICAgaGFuZGxlX2Zhc3Rlb2lfaXJxKzB4NTQvMHgyZWMKICAgZ2VuZXJp Y19oYW5kbGVfaXJxKzB4NDQvMHg1YwogICBfX2hhbmRsZV9kb21haW5faXJxKzB4OWMvMHgxMWMK ICAgZ2ljX2hhbmRsZV9pcnErMHgyMDgvMHgyNjAKICAgZWwxX2lycSsweGI0LzB4MTMwCiAgIGFy Y2hfY3B1X2lkbGUrMHgxNzgvMHgzY2MKICAgZGVmYXVsdF9pZGxlX2NhbGwrMHgzYy8weDU0CiAg IGRvX2lkbGUrMHgxYTgvMHgzZGMKICAgY3B1X3N0YXJ0dXBfZW50cnkrMHgyNC8weDI4CiAgIHJl c3RfaW5pdCsweDI0MC8weDI3MAogICBzdGFydF9rZXJuZWwrMHg1YTgvMHg2YmMKIGlycSBldmVu dCBzdGFtcDogMTgKIGhhcmRpcnFzIGxhc3QgIGVuYWJsZWQgYXQgKDE3KTogWzxmZmZmZmY5MDQy Mzg1ZTgwPl0gX3Jhd19zcGluX3VubG9ja19pcnErMHg0MC8weGMwCiBoYXJkaXJxcyBsYXN0IGRp c2FibGVkIGF0ICgxNik6IFs8ZmZmZmZmOTA0MjM3YTFmND5dIF9fc2NoZWR1bGUrMHgyMGMvMHgx YmJjCiBzb2Z0aXJxcyBsYXN0ICBlbmFibGVkIGF0ICgwKTogWzxmZmZmZmY5MDQwZjMxOGQwPl0g Y29weV9wcm9jZXNzKzB4YjUwLzB4Mzk2NAogc29mdGlycXMgbGFzdCBkaXNhYmxlZCBhdCAoMTgp OiBbPGZmZmZmZjkwNDEwMzYzNjQ+XSBsb2NhbF9iaF9kaXNhYmxlKzB4OC8weDIwCgogb3RoZXIg aW5mbyB0aGF0IG1pZ2h0IGhlbHAgdXMgZGVidWcgdGhpczoKICBQb3NzaWJsZSB1bnNhZmUgbG9j a2luZyBzY2VuYXJpbzoKCiAgICAgICAgQ1BVMAogICAgICAgIC0tLS0KICAgbG9jaygmaXJxX2Rl c2NfbG9ja19jbGFzcyk7CiAgIDxJbnRlcnJ1cHQ+CiAgICAgbG9jaygmaXJxX2Rlc2NfbG9ja19j bGFzcyk7CgogICoqKiBERUFETE9DSyAqKioKCiBubyBsb2NrcyBoZWxkIGJ5IGlycS80MC1kcHVf bWRzcy8yMDMuCgogc3RhY2sgYmFja3RyYWNlOgogQ1BVOiAwIFBJRDogMjAzIENvbW06IGlycS80 MC1kcHVfbWRzcyBUYWludGVkOiBHICAgICAgICBXICAgICAgICAgNC4xOS4xMCAjNzYKIENhbGwg dHJhY2U6CiAgZHVtcF9iYWNrdHJhY2UrMHgwLzB4MmY4CiAgc2hvd19zdGFjaysweDIwLzB4MmMK ICBfX2R1bXBfc3RhY2srMHgyMC8weDI4CiAgZHVtcF9zdGFjaysweGNjLzB4MTBjCiAgbWFya19s b2NrKzB4YmUwLzB4ZTI0CiAgX19sb2NrX2FjcXVpcmUrMHg0Y2MvMHgyNzA4CiAgbG9ja19hY3F1 aXJlKzB4MjQ0LzB4MzYwCiAgX3Jhd19zcGluX2xvY2srMHg2NC8weGEwCiAgaGFuZGxlX2xldmVs X2lycSsweDM0LzB4MjZjCiAgZ2VuZXJpY19oYW5kbGVfaXJxKzB4NDQvMHg1YwogIGRwdV9tZHNz X2lycSsweDY0LzB4ZWMKICBpcnFfZm9yY2VkX3RocmVhZF9mbisweDU4LzB4OWMKICBpcnFfdGhy ZWFkKzB4MTIwLzB4MWRjCiAga3RocmVhZCsweDI0OC8weDI2MAogIHJldF9mcm9tX2ZvcmsrMHgx MC8weDE4CiAtLS0tLS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0KIGlycSAxNjkgaGFu ZGxlciBpcnFfZGVmYXVsdF9wcmltYXJ5X2hhbmRsZXIrMHgwLzB4MTggZW5hYmxlZCBpbnRlcnJ1 cHRzCgpDYzogU2VhbiBQYXVsIDxzZWFucGF1bEBjaHJvbWl1bS5vcmc+CkNjOiBKb3JkYW4gQ3Jv dXNlIDxqY3JvdXNlQGNvZGVhdXJvcmEub3JnPgpDYzogSmF5YW50IFNoZWtoYXIgPGpzaGVraGFy QGNvZGVhdXJvcmEub3JnPgpDYzogUmFqZXNoIFlhZGF2IDxyeWFkYXZAY29kZWF1cm9yYS5vcmc+ CkNjOiBKZXlrdW1hciBTYW5rYXJhbiA8anNhbmthQGNvZGVhdXJvcmEub3JnPgpTaWduZWQtb2Zm LWJ5OiBTdGVwaGVuIEJveWQgPHN3Ym95ZEBjaHJvbWl1bS5vcmc+ClNpZ25lZC1vZmYtYnk6IFNl YW4gUGF1bCA8c2VhbnBhdWxAY2hyb21pdW0ub3JnPgpTaWduZWQtb2ZmLWJ5OiBTYXNoYSBMZXZp biA8c2FzaGFsQGtlcm5lbC5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEv ZHB1X21kc3MuYyB8IDM2ICsrKysrKysrKysrKysrLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQs IDIxIGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9tZHNzLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rp c3AvZHB1MS9kcHVfbWRzcy5jCmluZGV4IGNiMzA3YTJhYmYwNi4uNzMxNmI0YWIxYjg1IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfbWRzcy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9tZHNzLmMKQEAgLTIzLDExICsyMywxNCBA QCBzdHJ1Y3QgZHB1X21kc3MgewogCXN0cnVjdCBkcHVfaXJxX2NvbnRyb2xsZXIgaXJxX2NvbnRy b2xsZXI7CiB9OwogCi1zdGF0aWMgaXJxcmV0dXJuX3QgZHB1X21kc3NfaXJxKGludCBpcnEsIHZv aWQgKmFyZykKK3N0YXRpYyB2b2lkIGRwdV9tZHNzX2lycShzdHJ1Y3QgaXJxX2Rlc2MgKmRlc2Mp CiB7Ci0Jc3RydWN0IGRwdV9tZHNzICpkcHVfbWRzcyA9IGFyZzsKKwlzdHJ1Y3QgZHB1X21kc3Mg KmRwdV9tZHNzID0gaXJxX2Rlc2NfZ2V0X2hhbmRsZXJfZGF0YShkZXNjKTsKKwlzdHJ1Y3QgaXJx X2NoaXAgKmNoaXAgPSBpcnFfZGVzY19nZXRfY2hpcChkZXNjKTsKIAl1MzIgaW50ZXJydXB0czsK IAorCWNoYWluZWRfaXJxX2VudGVyKGNoaXAsIGRlc2MpOworCiAJaW50ZXJydXB0cyA9IHJlYWRs X3JlbGF4ZWQoZHB1X21kc3MtPm1taW8gKyBIV19JTlRSX1NUQVRVUyk7CiAKIAl3aGlsZSAoaW50 ZXJydXB0cykgewpAQCAtMzksMjAgKzQyLDIwIEBAIHN0YXRpYyBpcnFyZXR1cm5fdCBkcHVfbWRz c19pcnEoaW50IGlycSwgdm9pZCAqYXJnKQogCQkJCQkgICBod2lycSk7CiAJCWlmIChtYXBwaW5n ID09IDApIHsKIAkJCURSTV9FUlJPUigiY291bGRuJ3QgZmluZCBpcnEgbWFwcGluZyBmb3IgJWx1 XG4iLCBod2lycSk7Ci0JCQlyZXR1cm4gSVJRX05PTkU7CisJCQlicmVhazsKIAkJfQogCiAJCXJj ID0gZ2VuZXJpY19oYW5kbGVfaXJxKG1hcHBpbmcpOwogCQlpZiAocmMgPCAwKSB7CiAJCQlEUk1f RVJST1IoImhhbmRsZSBpcnEgZmFpbDogaXJxPSVsdSBtYXBwaW5nPSV1IHJjPSVkXG4iLAogCQkJ CSAgaHdpcnEsIG1hcHBpbmcsIHJjKTsKLQkJCXJldHVybiBJUlFfTk9ORTsKKwkJCWJyZWFrOwog CQl9CiAKIAkJaW50ZXJydXB0cyAmPSB+KDEgPDwgaHdpcnEpOwogCX0KIAotCXJldHVybiBJUlFf SEFORExFRDsKKwljaGFpbmVkX2lycV9leGl0KGNoaXAsIGRlc2MpOwogfQogCiBzdGF0aWMgdm9p ZCBkcHVfbWRzc19pcnFfbWFzayhzdHJ1Y3QgaXJxX2RhdGEgKmlycWQpCkBAIC04MywxNiArODYs MTYgQEAgc3RhdGljIHN0cnVjdCBpcnFfY2hpcCBkcHVfbWRzc19pcnFfY2hpcCA9IHsKIAkuaXJx X3VubWFzayA9IGRwdV9tZHNzX2lycV91bm1hc2ssCiB9OwogCitzdGF0aWMgc3RydWN0IGxvY2tf Y2xhc3Nfa2V5IGRwdV9tZHNzX2xvY2tfa2V5LCBkcHVfbWRzc19yZXF1ZXN0X2tleTsKKwogc3Rh dGljIGludCBkcHVfbWRzc19pcnFkb21haW5fbWFwKHN0cnVjdCBpcnFfZG9tYWluICpkb21haW4s CiAJCXVuc2lnbmVkIGludCBpcnEsIGlycV9od19udW1iZXJfdCBod2lycSkKIHsKIAlzdHJ1Y3Qg ZHB1X21kc3MgKmRwdV9tZHNzID0gZG9tYWluLT5ob3N0X2RhdGE7Ci0JaW50IHJldDsKIAorCWly cV9zZXRfbG9ja2RlcF9jbGFzcyhpcnEsICZkcHVfbWRzc19sb2NrX2tleSwgJmRwdV9tZHNzX3Jl cXVlc3Rfa2V5KTsKIAlpcnFfc2V0X2NoaXBfYW5kX2hhbmRsZXIoaXJxLCAmZHB1X21kc3NfaXJx X2NoaXAsIGhhbmRsZV9sZXZlbF9pcnEpOwotCXJldCA9IGlycV9zZXRfY2hpcF9kYXRhKGlycSwg ZHB1X21kc3MpOwotCi0JcmV0dXJuIHJldDsKKwlyZXR1cm4gaXJxX3NldF9jaGlwX2RhdGEoaXJx LCBkcHVfbWRzcyk7CiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaXJxX2RvbWFpbl9vcHMgZHB1 X21kc3NfaXJxZG9tYWluX29wcyA9IHsKQEAgLTE1OSwxMSArMTYyLDEzIEBAIHN0YXRpYyB2b2lk IGRwdV9tZHNzX2Rlc3Ryb3koc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlzdHJ1Y3QgbXNtX2Ry bV9wcml2YXRlICpwcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1Y3QgZHB1X21kc3MgKmRw dV9tZHNzID0gdG9fZHB1X21kc3MocHJpdi0+bWRzcyk7CiAJc3RydWN0IGRzc19tb2R1bGVfcG93 ZXIgKm1wID0gJmRwdV9tZHNzLT5tcDsKKwlpbnQgaXJxOwogCiAJcG1fcnVudGltZV9zdXNwZW5k KGRldi0+ZGV2KTsKIAlwbV9ydW50aW1lX2Rpc2FibGUoZGV2LT5kZXYpOwogCV9kcHVfbWRzc19p cnFfZG9tYWluX2ZpbmkoZHB1X21kc3MpOwotCWZyZWVfaXJxKHBsYXRmb3JtX2dldF9pcnEocGRl diwgMCksIGRwdV9tZHNzKTsKKwlpcnEgPSBwbGF0Zm9ybV9nZXRfaXJxKHBkZXYsIDApOworCWly cV9zZXRfY2hhaW5lZF9oYW5kbGVyX2FuZF9kYXRhKGlycSwgTlVMTCwgTlVMTCk7CiAJbXNtX2Rz c19wdXRfY2xrKG1wLT5jbGtfY29uZmlnLCBtcC0+bnVtX2Nsayk7CiAJZGV2bV9rZnJlZSgmcGRl di0+ZGV2LCBtcC0+Y2xrX2NvbmZpZyk7CiAKQEAgLTE4Nyw2ICsxOTIsNyBAQCBpbnQgZHB1X21k c3NfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCXN0cnVjdCBkcHVfbWRzcyAqZHB1X21k c3M7CiAJc3RydWN0IGRzc19tb2R1bGVfcG93ZXIgKm1wOwogCWludCByZXQgPSAwOworCWludCBp cnE7CiAKIAlkcHVfbWRzcyA9IGRldm1fa3phbGxvYyhkZXYtPmRldiwgc2l6ZW9mKCpkcHVfbWRz cyksIEdGUF9LRVJORUwpOwogCWlmICghZHB1X21kc3MpCkBAIC0yMTksMTIgKzIyNSwxMiBAQCBp bnQgZHB1X21kc3NfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWlmIChyZXQpCiAJCWdv dG8gaXJxX2RvbWFpbl9lcnJvcjsKIAotCXJldCA9IHJlcXVlc3RfaXJxKHBsYXRmb3JtX2dldF9p cnEocGRldiwgMCksCi0JCQlkcHVfbWRzc19pcnEsIDAsICJkcHVfbWRzc19pc3IiLCBkcHVfbWRz cyk7Ci0JaWYgKHJldCkgewotCQlEUFVfRVJST1IoImZhaWxlZCB0byBpbml0IGlycTogJWRcbiIs IHJldCk7CisJaXJxID0gcGxhdGZvcm1fZ2V0X2lycShwZGV2LCAwKTsKKwlpZiAoaXJxIDwgMCkK IAkJZ290byBpcnFfZXJyb3I7Ci0JfQorCisJaXJxX3NldF9jaGFpbmVkX2hhbmRsZXJfYW5kX2Rh dGEoaXJxLCBkcHVfbWRzc19pcnEsCisJCQkJCSBkcHVfbWRzcyk7CiAKIAlwbV9ydW50aW1lX2Vu YWJsZShkZXYtPmRldik7CiAKLS0gCjIuMTkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KRnJlZWRyZW5vIG1haWxpbmcgbGlzdApGcmVlZHJlbm9AbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZnJlZWRyZW5v