From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: [PATCH v6 19/26] xen/arm: generate vpl011 node on device tree for domU Date: Fri, 2 Nov 2018 16:45:11 -0700 Message-ID: <1541202318-9840-19-git-send-email-sstabellini@kernel.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: julien.grall@arm.com Cc: Stefano Stabellini , Achin.Gupta@arm.com, sstabellini@kernel.org, andrii_anisov@epam.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org SW50cm9kdWNlIHZwbDAxMSBzdXBwb3J0IHRvIGd1ZXN0cyBzdGFydGVkIGZyb20gWGVuOiBpdCBw cm92aWRlcyBhCnNpbXBsZSB3YXkgdG8gcHJpbnQgb3V0cHV0IGZyb20gYSBndWVzdCwgYXMgbW9z dCBndWVzdHMgY29tZSB3aXRoIGEKcGwwMTEgZHJpdmVyLiBJdCBpcyBhbHNvIGFibGUgdG8gcHJv dmlkZSBhIHdvcmtpbmcgY29uc29sZSB3aXRoCmludGVycnVwdCBzdXBwb3J0LgoKVGhlIFVBUlQg ZXhwb3NlZCB0byB0aGUgZ3Vlc3QgaXMgYSBTQlNBIGNvbXBhdGlibGUgVUFSVCBhbmQgbm90IGEg UEwwMTEuClNCU0EgVUFSVCBpcyBhIHN1YnNldCBvZiBQTDAxMSByMXA1LiBBIGZ1bGwgUEwwMTEg aW1wbGVtZW50YXRpb24gaW4gWGVuCndvdWxkIGp1c3QgYmUgdG9vIGRpZmZpY3VsdCwgc28gZ3Vl c3RzIG1heSByZXF1aXJlIHNvbWUgZHJpdmVycyBjaGFuZ2VzLgoKRW5hYmxlIHZwbDAxMSBjb25k aXRpb25hbGx5IGlmIHRoZSB1c2VyIHJlcXVlc3RlZCBpdC4KClNpZ25lZC1vZmYtYnk6IFN0ZWZh bm8gU3RhYmVsbGluaSA8c3RlZmFub3NAeGlsaW54LmNvbT4KQWNrZWQtYnk6IEp1bGllbiBHcmFs bCA8anVsaWVuLmdyYWxsQGFybS5jb20+Ci0tLQpDaGFuZ2VzIGluIHY1OgotIHVzZSBkdF9wcm9w ZXJ0eV9yZWFkX2Jvb2wKCkNoYW5nZXMgaW4gdjQ6Ci0gbW92ZSByZW5hbWUgc2V0X2ludGVycnVw dF9wcGkgYW5kIG1ha2luZyBzZXRfaW50ZXJydXB0X3BwaSBnZW5lcmljIHRvCiAgYSBzZXBhcmF0 ZSBwYXRjaAotIHByb3Blcmx5IG5hbWUgdGhlIHZwbDAxMSBkZXZpY2Ugbm9kZSBuYW1lCi0gY29k ZSBzdHlsZQotIHVzZSAjZGVmaW5lIGZvciBhZGRyY2VsbHMgYW5kIHNpemVjZWxscwoKQ2hhbmdl cyBpbiB2MzoKLSB1c2UgYm9vbAotIHJldGFpbiBCVUdfT04oaXJxIDwgMTYpCi0gYWRkIHZwbDAx MSBib29sIHRvIGtpbmZvCi0gcmV0dXJuIGVycm9yIG9mIHZwbDAxMSBpcyByZXF1aXJlZCBidXQg Q09ORklHX1NCU0FfVlVBUlRfQ09OU09MRSBpcwogIG1pc3NpbmcKCkNoYW5nZXMgaW4gdjI6Ci0g Y29kZSBzdHlsZSBmaXhlcwotIG1ha2Ugc2V0X2ludGVycnVwdF9wcGkgZ2VuZXJpYwotIHJlbmFt ZSBzZXRfaW50ZXJydXB0X3BwaSB0byBzZXRfaW50ZXJydXB0Ci0gb25seSBtYWtlIHRoZSB2cGww MTEgbm9kZSBpZiB0aGUgb3B0aW9uIHdhcyBlbmFibGVkCi0tLQogeGVuL2FyY2gvYXJtL2RvbWFp bl9idWlsZC5jIHwgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCiB4ZW4vYXJjaC9hcm0va2VybmVsLmggICAgICAgfCAgMyArKysKIDIgZmlsZXMgY2hhbmdl ZCwgNjMgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9kb21haW5fYnVp bGQuYyBiL3hlbi9hcmNoL2FybS9kb21haW5fYnVpbGQuYwppbmRleCA0NGM3ODYxLi5kODFlYzUz IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vZG9tYWluX2J1aWxkLmMKKysrIGIveGVuL2FyY2gv YXJtL2RvbWFpbl9idWlsZC5jCkBAIC0xNjIzLDYgKzE2MjMsNTQgQEAgc3RhdGljIGludCBfX2lu aXQgbWFrZV90aW1lcl9kb21VX25vZGUoY29uc3Qgc3RydWN0IGRvbWFpbiAqZCwgdm9pZCAqZmR0 KQogICAgIHJldHVybiByZXM7CiB9CiAKKyNpZmRlZiBDT05GSUdfU0JTQV9WVUFSVF9DT05TT0xF CitzdGF0aWMgaW50IF9faW5pdCBtYWtlX3ZwbDAxMV91YXJ0X25vZGUoY29uc3Qgc3RydWN0IGRv bWFpbiAqZCwgdm9pZCAqZmR0KQoreworICAgIGludCByZXM7CisgICAgZ2ljX2ludGVycnVwdF90 IGludHI7CisgICAgX19iZTMyIHJlZ1tHVUVTVF9ST09UX0FERFJFU1NfQ0VMTFMgKyBHVUVTVF9S T09UX1NJWkVfQ0VMTFNdOworICAgIF9fYmUzMiAqY2VsbHM7CisKKyAgICByZXMgPSBmZHRfYmVn aW5fbm9kZShmZHQsICJzYnNhLXVhcnRAIl9fc3RyaW5naWZ5KEdVRVNUX1BMMDExX0JBU0UpKTsK KyAgICBpZiAoIHJlcyApCisgICAgICAgIHJldHVybiByZXM7CisKKyAgICByZXMgPSBmZHRfcHJv cGVydHlfc3RyaW5nKGZkdCwgImNvbXBhdGlibGUiLCAiYXJtLHNic2EtdWFydCIpOworICAgIGlm ICggcmVzICkKKyAgICAgICAgcmV0dXJuIHJlczsKKworICAgIGNlbGxzID0gJnJlZ1swXTsKKyAg ICBkdF9jaGlsZF9zZXRfcmFuZ2UoJmNlbGxzLCBHVUVTVF9ST09UX0FERFJFU1NfQ0VMTFMsCisg ICAgICAgICAgICAgICAgICAgICAgIEdVRVNUX1JPT1RfU0laRV9DRUxMUywgR1VFU1RfUEwwMTFf QkFTRSwKKyAgICAgICAgICAgICAgICAgICAgICAgR1VFU1RfUEwwMTFfU0laRSk7CisgICAgaWYg KCByZXMgKQorICAgICAgICByZXR1cm4gcmVzOworICAgIHJlcyA9IGZkdF9wcm9wZXJ0eShmZHQs ICJyZWciLCByZWcsIHNpemVvZihyZWcpKTsKKyAgICBpZiAoIHJlcyApCisgICAgICAgIHJldHVy biByZXM7CisKKyAgICBzZXRfaW50ZXJydXB0KGludHIsIEdVRVNUX1ZQTDAxMV9TUEksIDB4Ziwg RFRfSVJRX1RZUEVfTEVWRUxfSElHSCk7CisKKyAgICByZXMgPSBmZHRfcHJvcGVydHkoZmR0LCAi aW50ZXJydXB0cyIsIGludHIsIHNpemVvZiAoaW50cikpOworICAgIGlmICggcmVzICkKKyAgICAg ICAgcmV0dXJuIHJlczsKKworICAgIHJlcyA9IGZkdF9wcm9wZXJ0eV9jZWxsKGZkdCwgImludGVy cnVwdC1wYXJlbnQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdVRVNUX1BIQU5ETEVf R0lDKTsKKyAgICBpZiAoIHJlcyApCisgICAgICAgIHJldHVybiByZXM7CisKKyAgICAvKiBVc2Ug YSBkZWZhdWx0IGJhdWQgcmF0ZSBvZiAxMTUyMDAuICovCisgICAgZmR0X3Byb3BlcnR5X3UzMihm ZHQsICJjdXJyZW50LXNwZWVkIiwgMTE1MjAwKTsKKworICAgIHJlcyA9IGZkdF9lbmRfbm9kZShm ZHQpOworICAgIGlmICggcmVzICkKKyAgICAgICAgcmV0dXJuIHJlczsKKworICAgIHJldHVybiAw OworfQorI2VuZGlmCisKIC8qCiAgKiBUaGUgbWF4IHNpemUgZm9yIERUIGlzIDJNQi4gSG93ZXZl ciwgdGhlIGdlbmVyYXRlZCBEVCBpcyBzbWFsbCwgNEtCCiAgKiBhcmUgZW5vdWdoIGZvciBub3cs IGJ1dCB3ZSBtaWdodCBoYXZlIHRvIGluY3JlYXNlIGl0IGluIHRoZSBmdXR1cmUuCkBAIC0xNjg0 LDYgKzE3MzIsMTYgQEAgc3RhdGljIGludCBfX2luaXQgcHJlcGFyZV9kdGJfZG9tVShzdHJ1Y3Qg ZG9tYWluICpkLCBzdHJ1Y3Qga2VybmVsX2luZm8gKmtpbmZvKQogICAgIGlmICggcmV0ICkKICAg ICAgICAgZ290byBlcnI7CiAKKyAgICBpZiAoIGtpbmZvLT52cGwwMTEgKQorICAgIHsKKyAgICAg ICAgcmV0ID0gLUVJTlZBTDsKKyNpZmRlZiBDT05GSUdfU0JTQV9WVUFSVF9DT05TT0xFCisgICAg ICAgIHJldCA9IG1ha2VfdnBsMDExX3VhcnRfbm9kZShkLCBraW5mby0+ZmR0KTsKKyNlbmRpZgor ICAgICAgICBpZiAoIHJldCApCisgICAgICAgICAgICBnb3RvIGVycjsKKyAgICB9CisKICAgICBy ZXQgPSBmZHRfZW5kX25vZGUoa2luZm8tPmZkdCk7CiAgICAgaWYgKCByZXQgPCAwICkKICAgICAg ICAgZ290byBlcnI7CkBAIC0yNTUyLDYgKzI2MTAsOCBAQCBzdGF0aWMgaW50IF9faW5pdCBjb25z dHJ1Y3RfZG9tVShzdHJ1Y3QgZG9tYWluICpkLAogCiAgICAgcHJpbnRrKCIqKiogTE9BRElORyBE T01VIGNwdXM9JXUgbWVtb3J5PSVsdUtCICoqKlxuIiwgZC0+bWF4X3ZjcHVzLCBtZW0pOwogCisg ICAga2luZm8udnBsMDExID0gZHRfcHJvcGVydHlfcmVhZF9ib29sKG5vZGUsICJ2cGwwMTEiKTsK KwogICAgIGlmICggdmNwdV9jcmVhdGUoZCwgMCwgMCkgPT0gTlVMTCApCiAgICAgICAgIHJldHVy biAtRU5PTUVNOwogICAgIGQtPm1heF9wYWdlcyA9IH4wVTsKZGlmZiAtLWdpdCBhL3hlbi9hcmNo L2FybS9rZXJuZWwuaCBiL3hlbi9hcmNoL2FybS9rZXJuZWwuaAppbmRleCA0MzIwZjcyLi4zM2Yz ZTcyIDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0va2VybmVsLmgKKysrIGIveGVuL2FyY2gvYXJt L2tlcm5lbC5oCkBAIC0zMyw2ICszMyw5IEBAIHN0cnVjdCBrZXJuZWxfaW5mbyB7CiAgICAgcGFk ZHJfdCBkdGJfcGFkZHI7CiAgICAgcGFkZHJfdCBpbml0cmRfcGFkZHI7CiAKKyAgICAvKiBFbmFi bGUgcGwwMTEgZW11bGF0aW9uICovCisgICAgYm9vbCB2cGwwMTE7CisKICAgICAvKiBsb2FkZXIg dG8gdXNlIGZvciB0aGlzIGtlcm5lbCAqLwogICAgIHZvaWQgKCpsb2FkKShzdHJ1Y3Qga2VybmVs X2luZm8gKmluZm8pOwogICAgIC8qIGxvYWRlciBzcGVjaWZpYyBzdGF0ZSAqLwotLSAKMS45LjEK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2 ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xp c3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs