From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vivek Gautam Subject: [PATCH v6 5/6] iommu/arm-smmu: Add support for qcom, smmu-v2 variant Date: Fri, 19 Jan 2018 17:13:42 +0530 Message-ID: <1516362223-22946-6-git-send-email-vivek.gautam@codeaurora.org> References: <1516362223-22946-1-git-send-email-vivek.gautam@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1516362223-22946-1-git-send-email-vivek.gautam-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: alex.williamson-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org, robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, mark.rutland-5wv7dgnIgG8@public.gmane.org, rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org, robin.murphy-5wv7dgnIgG8@public.gmane.org, will.deacon-5wv7dgnIgG8@public.gmane.org, iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org Cc: architt-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org, vivek.gautam-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, sricharan-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, m.szyprowski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org List-Id: iommu@lists.linux-foundation.org cWNvbSxzbW11LXYyIGlzIGFuIGFybSxzbW11LXYyIGltcGxlbWVudGF0aW9uIHdpdGggc3BlY2lm aWMKY2xvY2sgYW5kIHBvd2VyIHJlcXVpcmVtZW50cy4gVGhpcyBzbW11IGNvcmUgaXMgdXNlZCB3 aXRoCm11bHRpcGxlIG1hc3RlcnMgb24gbXNtODk5Niwgdml6LiBtZHNzLCB2aWRlbywgZXRjLgpB ZGQgYmluZGluZ3MgZm9yIHRoZSBzYW1lLgoKU2lnbmVkLW9mZi1ieTogVml2ZWsgR2F1dGFtIDx2 aXZlay5nYXV0YW1AY29kZWF1cm9yYS5vcmc+Ci0tLQogLi4uL2RldmljZXRyZWUvYmluZGluZ3Mv aW9tbXUvYXJtLHNtbXUudHh0ICAgICAgICAgfCA0MyArKysrKysrKysrKysrKysrKysrKysrCiBk cml2ZXJzL2lvbW11L2FybS1zbW11LmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDEzICsr KysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL0Rv Y3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9pb21tdS9hcm0sc21tdS50eHQgYi9Eb2N1 bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvaW9tbXUvYXJtLHNtbXUudHh0CmluZGV4IDhh NmZmY2UxMmFmNS4uMTY5MjIyYWUyNzA2IDEwMDY0NAotLS0gYS9Eb2N1bWVudGF0aW9uL2Rldmlj ZXRyZWUvYmluZGluZ3MvaW9tbXUvYXJtLHNtbXUudHh0CisrKyBiL0RvY3VtZW50YXRpb24vZGV2 aWNldHJlZS9iaW5kaW5ncy9pb21tdS9hcm0sc21tdS50eHQKQEAgLTE3LDEwICsxNywxOSBAQCBj b25kaXRpb25zLgogICAgICAgICAgICAgICAgICAgICAgICAgImFybSxtbXUtNDAxIgogICAgICAg ICAgICAgICAgICAgICAgICAgImFybSxtbXUtNTAwIgogICAgICAgICAgICAgICAgICAgICAgICAg ImNhdml1bSxzbW11LXYyIgorICAgICAgICAgICAgICAgICAgICAgICAgInFjb20sPHNvYz4tc21t dS12MiIsICJxY29tLHNtbXUtdjIiCiAKICAgICAgICAgICAgICAgICAgIGRlcGVuZGluZyBvbiB0 aGUgcGFydGljdWxhciBpbXBsZW1lbnRhdGlvbiBhbmQvb3IgdGhlCiAgICAgICAgICAgICAgICAg ICB2ZXJzaW9uIG9mIHRoZSBhcmNoaXRlY3R1cmUgaW1wbGVtZW50ZWQuCiAKKyAgICAgICAgICAg ICAgICAgIEEgbnVtYmVyIG9mIFFjb20gU29DcyB1c2UgcWNvbSxzbW11LXYyIHZlcnNpb24gb2Yg dGhlIElQLgorICAgICAgICAgICAgICAgICAgInFjb20sPHNvYz4tc21tdS12MiIgcmVwcmVzZW50 cyBhIHNvYyBzcGVjaWZpYyBjb21wYXRpYmxlCisgICAgICAgICAgICAgICAgICBzdHJpbmcgdGhh dCBzaG91bGQgYmUgcHJlc2VudCBhbG9uZyB3aXRoIHRoZSAicWNvbSxzbW11LXYyIgorICAgICAg ICAgICAgICAgICAgdG8gZmFjaWxpdGF0ZSBTb0Mgc3BlY2lmaWMgY2xvY2tzL3Bvd2VyIGNvbm5l Y3Rpb25zIGFuZCB0bworICAgICAgICAgICAgICAgICAgYWRkcmVzcyBzcGVjaWZpYyBidWcgZml4 ZXMuCisgICAgICAgICAgICAgICAgICBBbiBleGFtcGxlIHN0cmluZyB3b3VsZCBiZSAtCisgICAg ICAgICAgICAgICAgICAicWNvbSxtc204OTk2LXNtbXUtdjIiLCAicWNvbSxzbW11LXYyIi4KKwog LSByZWcgICAgICAgICAgIDogQmFzZSBhZGRyZXNzIGFuZCBzaXplIG9mIHRoZSBTTU1VLgogCiAt ICNnbG9iYWwtaW50ZXJydXB0cyA6IFRoZSBudW1iZXIgb2YgZ2xvYmFsIGludGVycnVwdHMgZXhw b3NlZCBieSB0aGUKQEAgLTcxLDYgKzgwLDIzIEBAIGNvbmRpdGlvbnMuCiAgICAgICAgICAgICAg ICAgICBvciB1c2luZyBzdHJlYW0gbWF0Y2hpbmcgd2l0aCAjaW9tbXUtY2VsbHMgPSA8Mj4sIGFu ZAogICAgICAgICAgICAgICAgICAgbWF5IGJlIGlnbm9yZWQgaWYgcHJlc2VudCBpbiBzdWNoIGNh c2VzLgogCistIGNsb2NrLW5hbWVzOiAgICBTaG91bGQgYmUgImJ1cyIsIGFuZCAiaWZhY2UiIGZv ciAicWNvbSxzbW11LXYyIgorICAgICAgICAgICAgICAgICAgaW1wbGVtZW50YXRpb24uCisKKyAg ICAgICAgICAgICAgICAgICJidXMiIGNsb2NrIGZvciAicWNvbSxzbW11LXYyIiBpcyByZXF1aXJl ZCBmb3IgZG93bnN0cmVhbQorICAgICAgICAgICAgICAgICAgYnVzIGFjY2VzcyBhbmQgZm9yIHRo ZSBzbW11IHB0dy4KKworICAgICAgICAgICAgICAgICAgImlmYWNlIiBjbG9jayBpcyByZXF1aXJl ZCB0byBhY2Nlc3Mgc21tdSdzIHJlZ2lzdGVycyB0aHJvdWdoCisgICAgICAgICAgICAgICAgICB0 aGUgVENVJ3MgcHJvZ3JhbW1pbmcgaW50ZXJmYWNlLgorCistIGNsb2NrczogICAgICAgICBQaGFu ZGxlcyBmb3IgcmVzcGVjdGl2ZSBjbG9ja3MgZGVzY3JpYmVkIGJ5IGNsb2NrLW5hbWVzLgorCist IHBvd2VyLWRvbWFpbnM6ICBQaGFuZGxlcyB0byBTTU1VJ3MgcG93ZXIgZG9tYWluIHNwZWNpZmll ci4gVGhpcyBpcworICAgICAgICAgICAgICAgICAgcmVxdWlyZWQgZXZlbiBpZiBTTU1VIGJlbG9u Z3MgdG8gdGhlIG1hc3RlcidzIHBvd2VyCisgICAgICAgICAgICAgICAgICBkb21haW4sIGFzIHRo ZSBTTU1VIHdpbGwgaGF2ZSB0byBiZSBlbmFibGVkIGFuZAorICAgICAgICAgICAgICAgICAgYWNj ZXNzZWQgYmVmb3JlIG1hc3RlciBnZXRzIGVuYWJsZWQgYW5kIGxpbmtlZCB0byBpdHMKKyAgICAg ICAgICAgICAgICAgIFNNTVUuCisKICoqIERlcHJlY2F0ZWQgcHJvcGVydGllczoKIAogLSBtbXUt bWFzdGVycyAoZGVwcmVjYXRlZCBpbiBmYXZvdXIgb2YgdGhlIGdlbmVyaWMgImlvbW11cyIgYmlu ZGluZykgOgpAQCAtMTM3LDMgKzE2MywyMCBAQCBjb25kaXRpb25zLgogICAgICAgICAgICAgICAg IGlvbW11LW1hcCA9IDwwICZzbW11MyAwIDB4NDAwPjsKICAgICAgICAgICAgICAgICAuLi4KICAg ICAgICAgfTsKKworCS8qIFFjb20ncyBhcm0sc21tdS12MiBpbXBsZW1lbnRhdGlvbiAqLworCXNt bXU0OiBpb21tdSB7CisJCWNvbXBhdGlibGUgPSAicWNvbSxtc204OTk2LXNtbXUtdjIiLCAicWNv bSxzbW11LXYyIjsKKwkJcmVnID0gPDB4ZDAwMDAwIDB4MTAwMDA+OworCisJCSNnbG9iYWwtaW50 ZXJydXB0cyA9IDwxPjsKKwkJaW50ZXJydXB0cyA9IDxHSUNfU1BJIDczIElSUV9UWVBFX0xFVkVM X0hJR0g+LAorCQkJICAgICA8R0lDX1NQSSAzMjAgSVJRX1RZUEVfTEVWRUxfSElHSD4sCisJCQkg ICAgIDxHSUNfU1BJIDMyMSBJUlFfVFlQRV9MRVZFTF9ISUdIPjsKKwkJI2lvbW11LWNlbGxzID0g PDE+OworCQlwb3dlci1kb21haW5zID0gPCZtbWNjIE1EU1NfR0RTQz47CisKKwkJY2xvY2tzID0g PCZtbWNjIFNNTVVfTURQX0FYSV9DTEs+LAorCQkJIDwmbW1jYyBTTU1VX01EUF9BSEJfQ0xLPjsK KwkJY2xvY2stbmFtZXMgPSAiYnVzIiwgImlmYWNlIjsKKwl9OwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9pb21tdS9hcm0tc21tdS5jIGIvZHJpdmVycy9pb21tdS9hcm0tc21tdS5jCmluZGV4IDMzYmJj ZmVkYjg5Ni4uMmFkZTIxNGM0MWJjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2lvbW11L2FybS1zbW11 LmMKKysrIGIvZHJpdmVycy9pb21tdS9hcm0tc21tdS5jCkBAIC0xMTksNiArMTE5LDcgQEAgZW51 bSBhcm1fc21tdV9pbXBsZW1lbnRhdGlvbiB7CiAJR0VORVJJQ19TTU1VLAogCUFSTV9NTVU1MDAs CiAJQ0FWSVVNX1NNTVVWMiwKKwlRQ09NX1NNTVVWMiwKIH07CiAKIHN0cnVjdCBhcm1fc21tdV9z MmNyIHsKQEAgLTE5NzEsNiArMTk3MiwxNyBAQCBzdHJ1Y3QgYXJtX3NtbXVfbWF0Y2hfZGF0YSB7 CiBBUk1fU01NVV9NQVRDSF9EQVRBKGFybV9tbXU1MDAsIEFSTV9TTU1VX1YyLCBBUk1fTU1VNTAw KTsKIEFSTV9TTU1VX01BVENIX0RBVEEoY2F2aXVtX3NtbXV2MiwgQVJNX1NNTVVfVjIsIENBVklV TV9TTU1VVjIpOwogCitzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0IHFjb21fc21tdXYyX2Nsa3Nb XSA9IHsKKwkiYnVzIiwgImlmYWNlIiwKK307CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYXJtX3Nt bXVfbWF0Y2hfZGF0YSBxY29tX3NtbXV2MiA9IHsKKwkudmVyc2lvbiA9IEFSTV9TTU1VX1YyLAor CS5tb2RlbCA9IFFDT01fU01NVVYyLAorCS5jbGtzID0gcWNvbV9zbW11djJfY2xrcywKKwkubnVt X2Nsa3MgPSBBUlJBWV9TSVpFKHFjb21fc21tdXYyX2Nsa3MpLAorfTsKKwogc3RhdGljIGNvbnN0 IHN0cnVjdCBvZl9kZXZpY2VfaWQgYXJtX3NtbXVfb2ZfbWF0Y2hbXSA9IHsKIAl7IC5jb21wYXRp YmxlID0gImFybSxzbW11LXYxIiwgLmRhdGEgPSAmc21tdV9nZW5lcmljX3YxIH0sCiAJeyAuY29t cGF0aWJsZSA9ICJhcm0sc21tdS12MiIsIC5kYXRhID0gJnNtbXVfZ2VuZXJpY192MiB9LApAQCAt MTk3OCw2ICsxOTkwLDcgQEAgc3RydWN0IGFybV9zbW11X21hdGNoX2RhdGEgewogCXsgLmNvbXBh dGlibGUgPSAiYXJtLG1tdS00MDEiLCAuZGF0YSA9ICZhcm1fbW11NDAxIH0sCiAJeyAuY29tcGF0 aWJsZSA9ICJhcm0sbW11LTUwMCIsIC5kYXRhID0gJmFybV9tbXU1MDAgfSwKIAl7IC5jb21wYXRp YmxlID0gImNhdml1bSxzbW11LXYyIiwgLmRhdGEgPSAmY2F2aXVtX3NtbXV2MiB9LAorCXsgLmNv bXBhdGlibGUgPSAicWNvbSxzbW11LXYyIiwgLmRhdGEgPSAmcWNvbV9zbW11djIgfSwKIAl7IH0s CiB9OwogTU9EVUxFX0RFVklDRV9UQUJMRShvZiwgYXJtX3NtbXVfb2ZfbWF0Y2gpOwotLSAKUVVB TENPTU0gSU5ESUEsIG9uIGJlaGFsZiBvZiBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRlciwgSW5j LiBpcyBhIG1lbWJlcgpvZiBDb2RlIEF1cm9yYSBGb3J1bSwgaG9zdGVkIGJ5IFRoZSBMaW51eCBG b3VuZGF0aW9uCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpGcmVlZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9mcmVlZHJlbm8K