From mboxrd@z Thu Jan 1 00:00:00 1970 From: manish.jaggi@linaro.org Subject: [RFC 05/11] Import fwnode.h from linux Date: Tue, 2 Jan 2018 14:58:03 +0530 Message-ID: <20180102092809.1841-6-manish.jaggi@linaro.org> References: <20180102092809.1841-1-manish.jaggi@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eWIsM-0002Vc-9R for xen-devel@lists.xenproject.org; Tue, 02 Jan 2018 09:28:50 +0000 Received: by mail-pl0-x242.google.com with SMTP id n13so28332709plp.11 for ; Tue, 02 Jan 2018 01:28:49 -0800 (PST) In-Reply-To: <20180102092809.1841-1-manish.jaggi@linaro.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org, julien.grall@linaro.org, sameer.goel@linaro.org, andre.przywara@linaro.org Cc: Manish Jaggi , manish.jaggi@cavium.com List-Id: xen-devel@lists.xenproject.org RnJvbTogTWFuaXNoIEphZ2dpIDxtYW5pc2guamFnZ2lAbGluYXJvLm9yZz4KCkltcG9ydCBmd25v ZGUuaCBmcm9tIGxpbnV4IGtlcm5lbCB0YWcgdjQuMTQKClNpZ25lZC1vZmYtYnk6IE1hbmlzaCBK YWdnaSA8bWFuaXNoLmphZ2dpQGxpbmFyby5vcmc+Ci0tLQogeGVuL2luY2x1ZGUveGVuL2Z3bm9k ZS5oIHwgMTI1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr CiAxIGZpbGUgY2hhbmdlZCwgMTI1IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS94ZW4vaW5j bHVkZS94ZW4vZndub2RlLmggYi94ZW4vaW5jbHVkZS94ZW4vZndub2RlLmgKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uYWYxODZhOWRjNgotLS0gL2Rldi9udWxsCisrKyBi L3hlbi9pbmNsdWRlL3hlbi9md25vZGUuaApAQCAtMCwwICsxLDEyNSBAQAorLyoKKyAqIGZ3bm9k ZS5oIC0gRmlybXdhcmUgZGV2aWNlIG5vZGUgb2JqZWN0IGhhbmRsZSB0eXBlIGRlZmluaXRpb24u CisgKgorICogQ29weXJpZ2h0IChDKSAyMDE1LCBJbnRlbCBDb3Jwb3JhdGlvbgorICogQXV0aG9y OiBSYWZhZWwgSi4gV3lzb2NraSA8cmFmYWVsLmoud3lzb2NraUBpbnRlbC5jb20+CisgKgorICog VGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu ZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVi bGljIExpY2Vuc2UgdmVyc2lvbiAyIGFzCisgKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbi4KKyAqLworCisjaWZuZGVmIF9MSU5VWF9GV05PREVfSF8KKyNkZWZpbmUg X0xJTlVYX0ZXTk9ERV9IXworCisjaW5jbHVkZSA8eGVuL3R5cGVzLmg+CisKK3N0cnVjdCBmd25v ZGVfb3BlcmF0aW9uczsKKworc3RydWN0IGZ3bm9kZV9oYW5kbGUgeworCXN0cnVjdCBmd25vZGVf aGFuZGxlICpzZWNvbmRhcnk7CisJY29uc3Qgc3RydWN0IGZ3bm9kZV9vcGVyYXRpb25zICpvcHM7 Cit9OworCisvKioKKyAqIHN0cnVjdCBmd25vZGVfZW5kcG9pbnQgLSBGd25vZGUgZ3JhcGggZW5k cG9pbnQKKyAqIEBwb3J0OiBQb3J0IG51bWJlcgorICogQGlkOiBFbmRwb2ludCBpZAorICogQGxv Y2FsX2Z3bm9kZTogcmVmZXJlbmNlIHRvIHRoZSByZWxhdGVkIGZ3bm9kZQorICovCitzdHJ1Y3Qg Zndub2RlX2VuZHBvaW50IHsKKwl1bnNpZ25lZCBpbnQgcG9ydDsKKwl1bnNpZ25lZCBpbnQgaWQ7 CisJY29uc3Qgc3RydWN0IGZ3bm9kZV9oYW5kbGUgKmxvY2FsX2Z3bm9kZTsKK307CisKKyNkZWZp bmUgTlJfRldOT0RFX1JFRkVSRU5DRV9BUkdTCTgKKworLyoqCisgKiBzdHJ1Y3QgZndub2RlX3Jl ZmVyZW5jZV9hcmdzIC0gRndub2RlIHJlZmVyZW5jZSB3aXRoIGFkZGl0aW9uYWwgYXJndW1lbnRz CisgKiBAZndub2RlOi0gQSByZWZlcmVuY2UgdG8gdGhlIGJhc2UgZndub2RlCisgKiBAbmFyZ3M6 IE51bWJlciBvZiBlbGVtZW50cyBpbiBAYXJncyBhcnJheQorICogQGFyZ3M6IEludGVnZXIgYXJn dW1lbnRzIG9uIHRoZSBmd25vZGUKKyAqLworc3RydWN0IGZ3bm9kZV9yZWZlcmVuY2VfYXJncyB7 CisJc3RydWN0IGZ3bm9kZV9oYW5kbGUgKmZ3bm9kZTsKKwl1bnNpZ25lZCBpbnQgbmFyZ3M7CisJ dW5zaWduZWQgaW50IGFyZ3NbTlJfRldOT0RFX1JFRkVSRU5DRV9BUkdTXTsKK307CisKKy8qKgor ICogc3RydWN0IGZ3bm9kZV9vcGVyYXRpb25zIC0gT3BlcmF0aW9ucyBmb3IgZndub2RlIGludGVy ZmFjZQorICogQGdldDogR2V0IGEgcmVmZXJlbmNlIHRvIGFuIGZ3bm9kZS4KKyAqIEBwdXQ6IFB1 dCBhIHJlZmVyZW5jZSB0byBhbiBmd25vZGUuCisgKiBAcHJvcGVydHlfcHJlc2VudDogUmV0dXJu IHRydWUgaWYgYSBwcm9wZXJ0eSBpcyBwcmVzZW50LgorICogQHByb3BlcnR5X3JlYWRfaW50ZWdl cl9hcnJheTogUmVhZCBhbiBhcnJheSBvZiBpbnRlZ2VyIHByb3BlcnRpZXMuIFJldHVybgorICoJ CQkJIHplcm8gb24gc3VjY2VzcywgYSBuZWdhdGl2ZSBlcnJvciBjb2RlCisgKgkJCQkgb3RoZXJ3 aXNlLgorICogQHByb3BlcnR5X3JlYWRfc3RyaW5nX2FycmF5OiBSZWFkIGFuIGFycmF5IG9mIHN0 cmluZyBwcm9wZXJ0aWVzLiBSZXR1cm4gemVybworICoJCQkJb24gc3VjY2VzcywgYSBuZWdhdGl2 ZSBlcnJvciBjb2RlIG90aGVyd2lzZS4KKyAqIEBnZXRfcGFyZW50OiBSZXR1cm4gdGhlIHBhcmVu dCBvZiBhbiBmd25vZGUuCisgKiBAZ2V0X25leHRfY2hpbGRfbm9kZTogUmV0dXJuIHRoZSBuZXh0 IGNoaWxkIG5vZGUgaW4gYW4gaXRlcmF0aW9uLgorICogQGdldF9uYW1lZF9jaGlsZF9ub2RlOiBS ZXR1cm4gYSBjaGlsZCBub2RlIHdpdGggYSBnaXZlbiBuYW1lLgorICogQGdldF9yZWZlcmVuY2Vf YXJnczogUmV0dXJuIGEgcmVmZXJlbmNlIHBvaW50ZWQgdG8gYnkgYSBwcm9wZXJ0eSwgd2l0aCBh cmdzCisgKiBAZ3JhcGhfZ2V0X25leHRfZW5kcG9pbnQ6IFJldHVybiBhbiBlbmRwb2ludCBub2Rl IGluIGFuIGl0ZXJhdGlvbi4KKyAqIEBncmFwaF9nZXRfcmVtb3RlX2VuZHBvaW50OiBSZXR1cm4g dGhlIHJlbW90ZSBlbmRwb2ludCBub2RlIG9mIGEgbG9jYWwKKyAqCQkJICAgICAgIGVuZHBvaW50 IG5vZGUuCisgKiBAZ3JhcGhfZ2V0X3BvcnRfcGFyZW50OiBSZXR1cm4gdGhlIHBhcmVudCBub2Rl IG9mIGEgcG9ydCBub2RlLgorICogQGdyYXBoX3BhcnNlX2VuZHBvaW50OiBQYXJzZSBlbmRwb2lu dCBmb3IgcG9ydCBhbmQgZW5kcG9pbnQgaWQuCisgKi8KK3N0cnVjdCBmd25vZGVfb3BlcmF0aW9u cyB7CisJdm9pZCAoKmdldCkoc3RydWN0IGZ3bm9kZV9oYW5kbGUgKmZ3bm9kZSk7CisJdm9pZCAo KnB1dCkoc3RydWN0IGZ3bm9kZV9oYW5kbGUgKmZ3bm9kZSk7CisJYm9vbCAoKmRldmljZV9pc19h dmFpbGFibGUpKGNvbnN0IHN0cnVjdCBmd25vZGVfaGFuZGxlICpmd25vZGUpOworCWJvb2wgKCpw cm9wZXJ0eV9wcmVzZW50KShjb25zdCBzdHJ1Y3QgZndub2RlX2hhbmRsZSAqZndub2RlLAorCQkJ CSBjb25zdCBjaGFyICpwcm9wbmFtZSk7CisJaW50ICgqcHJvcGVydHlfcmVhZF9pbnRfYXJyYXkp KGNvbnN0IHN0cnVjdCBmd25vZGVfaGFuZGxlICpmd25vZGUsCisJCQkJICAgICAgIGNvbnN0IGNo YXIgKnByb3BuYW1lLAorCQkJCSAgICAgICB1bnNpZ25lZCBpbnQgZWxlbV9zaXplLCB2b2lkICp2 YWwsCisJCQkJICAgICAgIHNpemVfdCBudmFsKTsKKwlpbnQKKwkoKnByb3BlcnR5X3JlYWRfc3Ry aW5nX2FycmF5KShjb25zdCBzdHJ1Y3QgZndub2RlX2hhbmRsZSAqZndub2RlX2hhbmRsZSwKKwkJ CQkgICAgICBjb25zdCBjaGFyICpwcm9wbmFtZSwgY29uc3QgY2hhciAqKnZhbCwKKwkJCQkgICAg ICBzaXplX3QgbnZhbCk7CisJc3RydWN0IGZ3bm9kZV9oYW5kbGUgKigqZ2V0X3BhcmVudCkoY29u c3Qgc3RydWN0IGZ3bm9kZV9oYW5kbGUgKmZ3bm9kZSk7CisJc3RydWN0IGZ3bm9kZV9oYW5kbGUg KgorCSgqZ2V0X25leHRfY2hpbGRfbm9kZSkoY29uc3Qgc3RydWN0IGZ3bm9kZV9oYW5kbGUgKmZ3 bm9kZSwKKwkJCSAgICAgICBzdHJ1Y3QgZndub2RlX2hhbmRsZSAqY2hpbGQpOworCXN0cnVjdCBm d25vZGVfaGFuZGxlICoKKwkoKmdldF9uYW1lZF9jaGlsZF9ub2RlKShjb25zdCBzdHJ1Y3QgZndu b2RlX2hhbmRsZSAqZndub2RlLAorCQkJCWNvbnN0IGNoYXIgKm5hbWUpOworCWludCAoKmdldF9y ZWZlcmVuY2VfYXJncykoY29uc3Qgc3RydWN0IGZ3bm9kZV9oYW5kbGUgKmZ3bm9kZSwKKwkJCQkg IGNvbnN0IGNoYXIgKnByb3AsIGNvbnN0IGNoYXIgKm5hcmdzX3Byb3AsCisJCQkJICB1bnNpZ25l ZCBpbnQgbmFyZ3MsIHVuc2lnbmVkIGludCBpbmRleCwKKwkJCQkgIHN0cnVjdCBmd25vZGVfcmVm ZXJlbmNlX2FyZ3MgKmFyZ3MpOworCXN0cnVjdCBmd25vZGVfaGFuZGxlICoKKwkoKmdyYXBoX2dl dF9uZXh0X2VuZHBvaW50KShjb25zdCBzdHJ1Y3QgZndub2RlX2hhbmRsZSAqZndub2RlLAorCQkJ CSAgIHN0cnVjdCBmd25vZGVfaGFuZGxlICpwcmV2KTsKKwlzdHJ1Y3QgZndub2RlX2hhbmRsZSAq CisJKCpncmFwaF9nZXRfcmVtb3RlX2VuZHBvaW50KShjb25zdCBzdHJ1Y3QgZndub2RlX2hhbmRs ZSAqZndub2RlKTsKKwlzdHJ1Y3QgZndub2RlX2hhbmRsZSAqCisJKCpncmFwaF9nZXRfcG9ydF9w YXJlbnQpKHN0cnVjdCBmd25vZGVfaGFuZGxlICpmd25vZGUpOworCWludCAoKmdyYXBoX3BhcnNl X2VuZHBvaW50KShjb25zdCBzdHJ1Y3QgZndub2RlX2hhbmRsZSAqZndub2RlLAorCQkJCSAgICBz dHJ1Y3QgZndub2RlX2VuZHBvaW50ICplbmRwb2ludCk7Cit9OworCisjZGVmaW5lIGZ3bm9kZV9o YXNfb3AoZndub2RlLCBvcCkJCQkJXAorCSgoZndub2RlKSAmJiAoZndub2RlKS0+b3BzICYmIChm d25vZGUpLT5vcHMtPm9wKQorI2RlZmluZSBmd25vZGVfY2FsbF9pbnRfb3AoZndub2RlLCBvcCwg Li4uKQkJCQlcCisJKGZ3bm9kZSA/IChmd25vZGVfaGFzX29wKGZ3bm9kZSwgb3ApID8JCQkJXAor CQkgICAoZndub2RlKS0+b3BzLT5vcChmd25vZGUsICMjIF9fVkFfQVJHU19fKSA6IC1FTlhJTykg OiBcCisJIC1FSU5WQUwpCisjZGVmaW5lIGZ3bm9kZV9jYWxsX2Jvb2xfb3AoZndub2RlLCBvcCwg Li4uKQkJCQlcCisJKGZ3bm9kZSA/IChmd25vZGVfaGFzX29wKGZ3bm9kZSwgb3ApID8JCQkJXAor CQkgICAoZndub2RlKS0+b3BzLT5vcChmd25vZGUsICMjIF9fVkFfQVJHU19fKSA6IGZhbHNlKSA6 IFwKKwkgZmFsc2UpCisjZGVmaW5lIGZ3bm9kZV9jYWxsX3B0cl9vcChmd25vZGUsIG9wLCAuLi4p CQlcCisJKGZ3bm9kZV9oYXNfb3AoZndub2RlLCBvcCkgPwkJCVwKKwkgKGZ3bm9kZSktPm9wcy0+ b3AoZndub2RlLCAjIyBfX1ZBX0FSR1NfXykgOiBOVUxMKQorI2RlZmluZSBmd25vZGVfY2FsbF92 b2lkX29wKGZ3bm9kZSwgb3AsIC4uLikJCQkJXAorCWRvIHsJCQkJCQkJCVwKKwkJaWYgKGZ3bm9k ZV9oYXNfb3AoZndub2RlLCBvcCkpCQkJCVwKKwkJCShmd25vZGUpLT5vcHMtPm9wKGZ3bm9kZSwg IyMgX19WQV9BUkdTX18pOwlcCisJfSB3aGlsZSAoZmFsc2UpCisKKyNlbmRpZgotLSAKMi4xNC4x CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==