From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Tyshchenko Subject: [RFC PATCH 10/31] xen/device-tree: Add dt_property_read_u32_index helper Date: Thu, 9 Nov 2017 19:10:00 +0200 Message-ID: <1510247421-24094-11-git-send-email-olekstysh@gmail.com> References: <1510247421-24094-1-git-send-email-olekstysh@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eCqLk-00045u-VD for xen-devel@lists.xenproject.org; Thu, 09 Nov 2017 17:10:45 +0000 Received: by mail-lf0-f67.google.com with SMTP id a132so8047008lfa.7 for ; Thu, 09 Nov 2017 09:10:43 -0800 (PST) In-Reply-To: <1510247421-24094-1-git-send-email-olekstysh@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall List-Id: xen-devel@lists.xenproject.org RnJvbTogT2xla3NhbmRyIFR5c2hjaGVua28gPG9sZWtzYW5kcl90eXNoY2hlbmtvQGVwYW0uY29t PgoKVGhpcyBpcyBhIHBvcnQgZnJvbSBMaW51eC4KClNpZ25lZC1vZmYtYnk6IE9sZWtzYW5kciBU eXNoY2hlbmtvIDxvbGVrc2FuZHJfdHlzaGNoZW5rb0BlcGFtLmNvbT4KQ0M6IFN0ZWZhbm8gU3Rh YmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4KQ0M6IEp1bGllbiBHcmFsbCA8anVsaWVu LmdyYWxsQGxpbmFyby5vcmc+Ci0tLQogeGVuL2NvbW1vbi9kZXZpY2VfdHJlZS5jICAgICAgfCA1 MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB4ZW4vaW5jbHVk ZS94ZW4vZGV2aWNlX3RyZWUuaCB8IDIwICsrKysrKysrKysrKysrKysrCiAyIGZpbGVzIGNoYW5n ZWQsIDcyIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2RldmljZV90cmVl LmMgYi94ZW4vY29tbW9uL2RldmljZV90cmVlLmMKaW5kZXggMDhmODA3Mi4uMGZhNjU0ZSAxMDA2 NDQKLS0tIGEveGVuL2NvbW1vbi9kZXZpY2VfdHJlZS5jCisrKyBiL3hlbi9jb21tb24vZGV2aWNl X3RyZWUuYwpAQCAtMTc2LDYgKzE3Niw1OCBAQCBib29sX3QgZHRfcHJvcGVydHlfcmVhZF91MzIo Y29uc3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICpucCwKICAgICByZXR1cm4gMTsKIH0KIAorLyoq CisgKiBkdF9maW5kX3Byb3BlcnR5X3ZhbHVlX29mX3NpemUKKyAqCisgKiBAbnA6ICAgICAgIGRl dmljZSBub2RlIGZyb20gd2hpY2ggdGhlIHByb3BlcnR5IHZhbHVlIGlzIHRvIGJlIHJlYWQuCisg KiBAcHJvcG5hbWU6IG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGJlIHNlYXJjaGVkLgorICogQG1p bjogICAgICBtaW5pbXVtIGFsbG93ZWQgbGVuZ3RoIG9mIHByb3BlcnR5IHZhbHVlCisgKiBAbWF4 OiAgICAgIG1heGltdW0gYWxsb3dlZCBsZW5ndGggb2YgcHJvcGVydHkgdmFsdWUgKDAgbWVhbnMg dW5saW1pdGVkKQorICogQGxlbjogICAgICBpZiAhPU5VTEwsIGFjdHVhbCBsZW5ndGggaXMgd3Jp dHRlbiB0byBoZXJlCisgKgorICogU2VhcmNoIGZvciBhIHByb3BlcnR5IGluIGEgZGV2aWNlIG5v ZGUgYW5kIHZhbGlkIHRoZSByZXF1ZXN0ZWQgc2l6ZS4KKyAqIFJldHVybnMgdGhlIHByb3BlcnR5 IHZhbHVlIG9uIHN1Y2Nlc3MsIC1FSU5WQUwgaWYgdGhlIHByb3BlcnR5IGRvZXMgbm90CisgKiBl eGlzdCwgLUVOT0RBVEEgaWYgcHJvcGVydHkgZG9lcyBub3QgaGF2ZSBhIHZhbHVlLCBhbmQgLUVP VkVSRkxPVyBpZiB0aGUKKyAqIHByb3BlcnR5IGRhdGEgaXMgdG9vIHNtYWxsIG9yIHRvbyBsYXJn ZS4KKyAqLworc3RhdGljIHZvaWQgKmR0X2ZpbmRfcHJvcGVydHlfdmFsdWVfb2Zfc2l6ZShjb25z dCBzdHJ1Y3QgZHRfZGV2aWNlX25vZGUgKm5wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwcm9wbmFtZSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdTMyIG1pbiwgdTMyIG1heCwgc2l6ZV90ICpsZW4p Cit7CisgICAgY29uc3Qgc3RydWN0IGR0X3Byb3BlcnR5ICpwcm9wID0gZHRfZmluZF9wcm9wZXJ0 eShucCwgcHJvcG5hbWUsIE5VTEwpOworCisgICAgaWYgKCAhcHJvcCApCisgICAgICAgIHJldHVy biBFUlJfUFRSKC1FSU5WQUwpOworICAgIGlmICggIXByb3AtPnZhbHVlICkKKyAgICAgICAgcmV0 dXJuIEVSUl9QVFIoLUVOT0RBVEEpOworICAgIGlmICggcHJvcC0+bGVuZ3RoIDwgbWluICkKKyAg ICAgICAgcmV0dXJuIEVSUl9QVFIoLUVPVkVSRkxPVyk7CisgICAgaWYgKCBtYXggJiYgcHJvcC0+ bGVuZ3RoID4gbWF4ICkKKyAgICAgICAgcmV0dXJuIEVSUl9QVFIoLUVPVkVSRkxPVyk7CisKKyAg ICBpZiAoIGxlbiApCisgICAgICAgICpsZW4gPSBwcm9wLT5sZW5ndGg7CisKKyAgICByZXR1cm4g cHJvcC0+dmFsdWU7Cit9CisKK2ludCBkdF9wcm9wZXJ0eV9yZWFkX3UzMl9pbmRleChjb25zdCBz dHJ1Y3QgZHRfZGV2aWNlX25vZGUgKm5wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGNoYXIgKnByb3BuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUz MiBpbmRleCwgdTMyICpvdXRfdmFsdWUpCit7CisgICAgY29uc3QgdTMyICp2YWwgPQorICAgICAg ICBkdF9maW5kX3Byb3BlcnR5X3ZhbHVlX29mX3NpemUobnAsIHByb3BuYW1lLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChpbmRleCArIDEpICogc2l6ZW9mKCpvdXRf dmFsdWUpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKworICAgIGlmICggSVNf RVJSKHZhbCkgKQorICAgICAgICByZXR1cm4gUFRSX0VSUih2YWwpOworCisgICAgKm91dF92YWx1 ZSA9IGJlMzJfdG9fY3B1cCgoKF9fYmUzMiAqKXZhbCkgKyBpbmRleCk7CisKKyAgICByZXR1cm4g MDsKK30KIAogYm9vbF90IGR0X3Byb3BlcnR5X3JlYWRfdTY0KGNvbnN0IHN0cnVjdCBkdF9kZXZp Y2Vfbm9kZSAqbnAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqbmFtZSwg dTY0ICpvdXRfdmFsdWUpCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4vZGV2aWNlX3RyZWUu aCBiL3hlbi9pbmNsdWRlL3hlbi9kZXZpY2VfdHJlZS5oCmluZGV4IDllMDkzMWMuLjg3YjRiNjcg MTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9kZXZpY2VfdHJlZS5oCisrKyBiL3hlbi9pbmNs dWRlL3hlbi9kZXZpY2VfdHJlZS5oCkBAIC0zNzQsNiArMzc0LDI2IEBAIGNvbnN0IHN0cnVjdCBk dF9wcm9wZXJ0eSAqZHRfZmluZF9wcm9wZXJ0eShjb25zdCBzdHJ1Y3QgZHRfZGV2aWNlX25vZGUg Km5wLAogICovCiBib29sX3QgZHRfcHJvcGVydHlfcmVhZF91MzIoY29uc3Qgc3RydWN0IGR0X2Rl dmljZV9ub2RlICpucCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpu YW1lLCB1MzIgKm91dF92YWx1ZSk7CisKKy8qKgorICogZHRfcHJvcGVydHlfcmVhZF91MzJfaW5k ZXggLSBGaW5kIGFuZCByZWFkIGEgdTMyIGZyb20gYSBtdWx0aS12YWx1ZSBwcm9wZXJ0eS4KKyAq CisgKiBAbnA6ICAgICAgICBkZXZpY2Ugbm9kZSBmcm9tIHdoaWNoIHRoZSBwcm9wZXJ0eSB2YWx1 ZSBpcyB0byBiZSByZWFkLgorICogQHByb3BuYW1lOiAgbmFtZSBvZiB0aGUgcHJvcGVydHkgdG8g YmUgc2VhcmNoZWQuCisgKiBAaW5kZXg6ICAgICBpbmRleCBvZiB0aGUgdTMyIGluIHRoZSBsaXN0 IG9mIHZhbHVlcworICogQG91dF92YWx1ZTogcG9pbnRlciB0byByZXR1cm4gdmFsdWUsIG1vZGlm aWVkIG9ubHkgaWYgbm8gZXJyb3IuCisgKgorICogU2VhcmNoIGZvciBhIHByb3BlcnR5IGluIGEg ZGV2aWNlIG5vZGUgYW5kIHJlYWQgbnRoIDMyLWJpdCB2YWx1ZSBmcm9tCisgKiBpdC4gUmV0dXJu cyAwIG9uIHN1Y2Nlc3MsIC1FSU5WQUwgaWYgdGhlIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0LAor ICogLUVOT0RBVEEgaWYgcHJvcGVydHkgZG9lcyBub3QgaGF2ZSBhIHZhbHVlLCBhbmQgLUVPVkVS RkxPVyBpZiB0aGUKKyAqIHByb3BlcnR5IGRhdGEgaXNuJ3QgbGFyZ2UgZW5vdWdoLgorICoKKyAq IFRoZSBvdXRfdmFsdWUgaXMgbW9kaWZpZWQgb25seSBpZiBhIHZhbGlkIHUzMiB2YWx1ZSBjYW4g YmUgZGVjb2RlZC4KKyAqLworaW50IGR0X3Byb3BlcnR5X3JlYWRfdTMyX2luZGV4KGNvbnN0IHN0 cnVjdCBkdF9kZXZpY2Vfbm9kZSAqbnAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgY2hhciAqcHJvcG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdTMy IGluZGV4LCB1MzIgKm91dF92YWx1ZSk7CisKIC8qKgogICogZHRfcHJvcGVydHlfcmVhZF91NjQg LSBIZWxwZXIgdG8gcmVhZCBhIHU2NCBwcm9wZXJ0eS4KICAqIEBucDogbm9kZSB0byBnZXQgdGhl IHZhbHVlCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcK aHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=