From mboxrd@z Thu Jan 1 00:00:00 1970 From: Saurabh Singh Subject: Re: [PATCH] Parse missing regulator constraints from device tree blob Date: Fri, 17 Jan 2014 15:11:19 +0000 (GMT) Message-ID: <758915.615271389971476784.JavaMail.weblogic@epml20> Reply-To: saurabh1.s@samsung.com Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: base64 Return-path: MIME-version: 1.0 Sender: linux-kernel-owner@vger.kernel.org To: Mark Brown Cc: Mark Rutland , "lgirdwood@gmail.com" , "grant.likely@linaro.org" , "rob.herring@calxeda.com" , "linux-kernel@vger.kernel.org" , "devicetree@vger.kernel.org" , "celinux-dev@tree.celinuxforum.org" , SREEVATSA D B , Praveen BP List-Id: devicetree@vger.kernel.org VGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIHBhcnNpbmcgZm9sbG93aW5nIHJlZ3VsYXRvciBj b250cmFpbnRzIGZyb20NCmRldmljZSB0cmVlIGJsb2IuDQoxLiB2YWxpZCBtb2RlcyBtYXNrICh2 YWxpZF9tb2Rlc19tYXNrKQ0KMi4gaW5pdGlhbCBtb2RlIChpbml0aWFsX21vZGUpDQozLiBpbml0 aWFsIHN0YXRlIChpbml0aWFsX3N0YXRlKQ0KNC4gc3RhdGUgbWVtIChzdGF0ZV9tZW0pDQo1LiBz dGF0ZSBkaXNrIChzdGF0ZV9kaXNrKQ0KNi4gc3RhdGUgc3RhbmRieSAoc3RhdGVfc3RhbmRieSkN Cg0KU2lnbmVkLW9mZi1ieTogU2F1cmFiaCBTaW5naCBTZW5nYXIgPHNhdXJhYmgxLnNAc2Ftc3Vu Zy5jb20+DQotLS0NCiAuLi4vZGV2aWNldHJlZS9iaW5kaW5ncy9yZWd1bGF0b3IvcmVndWxhdG9y LnR4dCAgICB8ICAgNDUgKysrKysrKysrKysrDQogZHJpdmVycy9yZWd1bGF0b3Ivb2ZfcmVndWxh dG9yLmMgICAgICAgICAgICAgICAgICAgfCAgIDc3ICsrKysrKysrKysrKysrKysrKysrDQogMiBm aWxlcyBjaGFuZ2VkLCAxMjIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkNCg0KZGlmZiAt LWdpdCBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9yZWd1bGF0b3IvcmVndWxh dG9yLnR4dCBiL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9yZWd1bGF0b3IvcmVn dWxhdG9yLnR4dA0KaW5kZXggMmJkOGYwOS4uNmRjOTM1YiAxMDA2NDQNCi0tLSBhL0RvY3VtZW50 YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9yZWd1bGF0b3IvcmVndWxhdG9yLnR4dA0KKysrIGIv RG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3JlZ3VsYXRvci9yZWd1bGF0b3IudHh0 DQpAQCAtMTQsNiArMTQsMzYgQEAgT3B0aW9uYWwgcHJvcGVydGllczoNCiAtIHJlZ3VsYXRvci1y YW1wLWRlbGF5OiByYW1wIGRlbGF5IGZvciByZWd1bGF0b3IoaW4gdVYvdVMpDQogICBGb3IgaGFy ZHdhcmVzIHdoaWNoIHN1cHBvcnQgZGlzYWJsaW5nIHJhbXAgcmF0ZSwgaXQgc2hvdWxkIGJlIGV4 cGxpY2l0bHkNCiAgIGludGlhbGlzZWQgdG8gemVybyAocmVndWxhdG9yLXJhbXAtZGVsYXkgPSA8 MD4pIGZvciBkaXNhYmxpbmcgcmFtcCBkZWxheS4NCistIHJlZ3VsYXRvci12YWxpZC1tb2Rlcy1t YXNrOiB2YWxpZCBvcGVyYXRpb25zIGZvciByZWd1bGF0b3Igb24gcGFydGljdWxhciBtYWNoaW5l DQorICBTdXBwb3J0cyBmb2xsb3dpbmcgbW9kZXMgb2Ygb3BlcmF0aW9uczoNCisgIE1vZGUJCQlE ZXNjcmlwdGlvbg0KKyAgLS0tLQkJCS0tLS0tLS0tLS0tDQorICBmYXN0CQkJUmVndWxhdG9yIGNh biBoYW5kbGUgZmFzdCBjaGFuZ2VzIGluIGl0J3MgbG9hZA0KKyAgbm9ybWFsCQlOb3JtYWwgcmVn dWxhdG9yIHBvd2VyIHN1cHBseSBtb2RlDQorICBpZGxlCQkJUmVndWxhdG9yIHJ1bnMgaW4gYSBt b3JlIGVmZmljaWVudCBtb2RlIGZvciBsaWdodCBsb2Fkcy4NCisgIHN0YW5kYnkJCVJlZ3VsYXRv ciBydW5zIGluIHRoZSBtb3N0IGVmZmljaWVudCBtb2RlIGZvciB2ZXJ5IGxpZ2h0IGxvYWRzDQor ICBTZWUgdGhlIGV4YW1wbGUgZ2l2ZW4gYmVsb3cuDQorDQorLSByZWd1bGF0b3ItaW5pdGlhbC1t b2RlOiBkZWZhdWx0IG1vZGUgdG8gc2V0IG9uIHN0YXJ0dXANCisgIFJlZmVyIHRvIHJlZ3VsYXRv ci1pbml0aWFsLW1vZGUgZm9yIG1vZGVzIHN1cHBvcnRlZA0KKw0KKy0gcmVndWxhdG9yLWluaXRp YWwtc3RhdGU6IHN1c3BlbmQgc3RhdGUgdG8gc2V0IGF0IGluaXQNCisgIEFueSBvbmUgb2YgdGhl IGZvbGxvd2luZyBzdGF0ZXMgY2FuIGJlIHNldDoNCisgIE1vZGUJCQlEZXNjcmlwdGlvbg0KKyAg LS0tLQkJCS0tLS0tLS0tLS0tDQorICBzdXNwZW5kLW1lbQkJc3VzcGVuZCB0byBtZW1vcnkNCisg IHN1c3BlbmQtc3RhbmRieQlzdGFuZGJ5IG1vZGUNCisgIHN1c3BlbmQtZGlzawkJc3VzcGVuZCB0 byBkaXNrDQorICBTZWUgdGhlIGV4YW1wbGUgZ2l2ZW4gYmVsb3cuDQorDQorLSByZWd1bGF0b3It c3RhdGUtbWVtLCByZWd1bGF0b3Itc3RhdGUtZGlzaywgcmVndWxhdG9yLXN0YXRlLXN0YW5kYnk6 DQorCWRlZmluZXMgcmVndWxhdG9yIHN1c3BlbmQgdG8gbWVtb3J5LCBzdXNwZW5kIHRvIGRpc2sg KGhpYmVybmF0ZSkgYW5kIHN0YW5kYnkgcmVzcGVjdGl2ZWx5Lg0KKwloYXZlIGZvbGxvd2luZyBz dWItY29uc3RhcmludHM6DQorCS0gcmVndWxhdG9yLXN0YXRlLXV2OiB2b2x0YWdlIHRvIHNldCBp biBzdXNwZW5kIHN0YXRlDQorCS0gcmVndWxhdG9yLXN0YXRlLW1vZGU6IHN1c3BlbmQgcmVndWxh dG9yIG9wZXJhdGluZyBtb2RlLA0KKwkgIHJlZmVyIHRvIHJlZ3VsYXRvci12YWxpZC1tb2Rlcy1t YXNrIGZvciBtb2RlcyBzdXBwb3J0ZWQNCisJLSByZWd1bGF0b3Itc3RhdGUtZW5hYmxlZDogaXMg cmVndWxhdG9yIGVuYWJsZWQgaW4gdGhpcyBzdXNwZW5kIHN0YXRlDQorCS0gcmVndWxhdG9yLXN0 YXRlLWRpc2FibGVkOiBpcyB0aGUgcmVndWxhdG9yIGRpc2JsZWQgaW4gdGhpcyBzdXNwZW5kIHN0 YXRlDQogDQogRGVwcmVjYXRlZCBwcm9wZXJ0aWVzOg0KIC0gcmVndWxhdG9yLWNvbXBhdGlibGU6 IElmIGEgcmVndWxhdG9yIGNoaXAgY29udGFpbnMgbXVsdGlwbGUNCkBAIC0yOSw2ICs1OSwyMSBA QCBFeGFtcGxlOg0KIAkJcmVndWxhdG9yLW1heC1taWNyb3ZvbHQgPSA8MjUwMDAwMD47DQogCQly ZWd1bGF0b3ItYWx3YXlzLW9uOw0KIAkJdmluLXN1cHBseSA9IDwmdmluPjsNCisJCXJlZ3VsYXRv ci1pbml0aWFsLW1vZGUgPSAibm9ybWFsIjsNCisJCXJlZ3VsYXRvci1pbml0aWFsLXN0YXRlID0g InN1c3BlbmQtbWVtIjsNCisJCXJlZ3VsYXRvci12YWxpZC1tb2Rlcy1tYXNrIHsNCisJCS8qY2Fu IHN1cHBvcnQgbXVsdGlwbGUgbW9kZQ0KKwkJICogaW4gdGhpcyBleGFtcGxlIHN1cHBvcnRpbmcg ZmFzdCBhbmQgbm9ybWFsIG1vZGUgKi8NCisJCQlmYXN0LW1vZGU7DQorCQkJbm9ybWFsLW1vZGU7 DQorCQl9Ow0KKwkJcmVndWxhdG9yLXN0YXRlLW1lbSB7DQorCQkJcmVndWxhdG9yLXN0YXRlLW1v ZGUgPSAiaWRsZSI7DQorCQkJcmVndWxhdG9yLXN0YXRlLWVuYWJsZWQ7DQorCQl9Ow0KKwkJcmVn dWxhdG9yLXN0YXRlLWRpc2sgew0KKwkJCXJlZ3VsYXRvci1zdGF0ZS1kaXNhYmxlZDsNCisJCX07 DQogCX07DQogDQogUmVndWxhdG9yIENvbnN1bWVyczoNCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Jl Z3VsYXRvci9vZl9yZWd1bGF0b3IuYyBiL2RyaXZlcnMvcmVndWxhdG9yL29mX3JlZ3VsYXRvci5j DQppbmRleCA3ODI3Mzg0Li4zMDMwNTk3IDEwMDY0NA0KLS0tIGEvZHJpdmVycy9yZWd1bGF0b3Iv b2ZfcmVndWxhdG9yLmMNCisrKyBiL2RyaXZlcnMvcmVndWxhdG9yL29mX3JlZ3VsYXRvci5jDQpA QCAtMTYsMTEgKzE2LDM2IEBADQogI2luY2x1ZGUgPGxpbnV4L3JlZ3VsYXRvci9tYWNoaW5lLmg+ DQogI2luY2x1ZGUgPGxpbnV4L3JlZ3VsYXRvci9vZl9yZWd1bGF0b3IuaD4NCiANCisvKioNCisg KiBzZXRfcmVndWxhdG9yX3N0YXRlX2NvbnN0cmFpbnRzIC0gc2V0IHJlZ3VsYXRvciBzdGF0ZSBm b3IgbG93IHBvd2VyIHN5c3RlbSBzdGF0ZXMNCisgKiBAbnA6IGRldmljZSBub2RlIGZvciB0aGUg bG93IHBvd2VyIHJlZ3VsYXRvciBzdGF0ZQ0KKyAqIEByZWd1bGF0b3Jfc3RhdGU6IHJlZ3VsYXRv cl9zdGF0ZSBzdHJ1Y3R1cmUgbmVlZCB0byBiZSBmaWxsZWQNCisgKi8NCitzdGF0aWMgdm9pZCBz ZXRfcmVndWxhdG9yX3N0YXRlX2NvbnN0cmFpbnRzKHN0cnVjdCBkZXZpY2Vfbm9kZSAqbnAsDQor CQlzdHJ1Y3QgcmVndWxhdG9yX3N0YXRlICpzdGF0ZSkNCit7DQorCW9mX3Byb3BlcnR5X3JlYWRf dTMyKG5wLCAicmVndWxhdG9yLXN0YXRlLXV2IiwgJnN0YXRlLT51Vik7DQorCWlmICghb2ZfcHJv cGVydHlfbWF0Y2hfc3RyaW5nKG5wLCAicmVndWxhdG9yLXN0YXRlLW1vZGUiLCAiZmFzdCIpKQ0K KwkJc3RhdGUtPm1vZGUgPSBSRUdVTEFUT1JfTU9ERV9GQVNUOw0KKwllbHNlIGlmICghb2ZfcHJv cGVydHlfbWF0Y2hfc3RyaW5nKG5wLCAicmVndWxhdG9yLXN0YXRlLW1vZGUiLA0KKwkJCQkJCQkJ Im5vcm1hbCIpKQ0KKwkJc3RhdGUtPm1vZGUgPSBSRUdVTEFUT1JfTU9ERV9OT1JNQUw7DQorCWVs c2UgaWYgKCFvZl9wcm9wZXJ0eV9tYXRjaF9zdHJpbmcobnAsICJyZWd1bGF0b3Itc3RhdGUtbW9k ZSIsICJpZGxlIikpDQorCQlzdGF0ZS0+bW9kZSA9IFJFR1VMQVRPUl9NT0RFX0lETEU7DQorCWVs c2UgaWYgKCFvZl9wcm9wZXJ0eV9tYXRjaF9zdHJpbmcobnAsICJyZWd1bGF0b3Itc3RhdGUtbW9k ZSIsDQorCQkJCQkJCQkic3RhbmRieSIpKQ0KKwkJc3RhdGUtPm1vZGUgPSBSRUdVTEFUT1JfTU9E RV9TVEFOREJZOw0KKwlzdGF0ZS0+ZW5hYmxlZCA9IG9mX3Byb3BlcnR5X3JlYWRfYm9vbChucCwg InJlZ3VsYXRvci1zdGF0ZS1lbmFibGVkIik7DQorCXN0YXRlLT5kaXNhYmxlZCA9IG9mX3Byb3Bl cnR5X3JlYWRfYm9vbChucCwgInJlZ3VsYXRvci1zdGF0ZS1kaXNhYmxlZCIpOw0KK30NCisNCisN CiBzdGF0aWMgdm9pZCBvZl9nZXRfcmVndWxhdGlvbl9jb25zdHJhaW50cyhzdHJ1Y3QgZGV2aWNl X25vZGUgKm5wLA0KIAkJCQkJc3RydWN0IHJlZ3VsYXRvcl9pbml0X2RhdGEgKippbml0X2RhdGEp DQogew0KIAljb25zdCBfX2JlMzIgKm1pbl91ViwgKm1heF91ViwgKnVWX29mZnNldDsNCiAJY29u c3QgX19iZTMyICptaW5fdUEsICptYXhfdUEsICpyYW1wX2RlbGF5Ow0KKwlzdHJ1Y3QgZGV2aWNl X25vZGUgKnN0YXRlLCAqdmFsaWRfbW9kZXM7DQogCXN0cnVjdCBwcm9wZXJ0eSAqcHJvcDsNCiAJ c3RydWN0IHJlZ3VsYXRpb25fY29uc3RyYWludHMgKmNvbnN0cmFpbnRzID0gJigqaW5pdF9kYXRh KS0+Y29uc3RyYWludHM7DQogDQpAQCAtNzMsNiArOTgsNTggQEAgc3RhdGljIHZvaWQgb2ZfZ2V0 X3JlZ3VsYXRpb25fY29uc3RyYWludHMoc3RydWN0IGRldmljZV9ub2RlICpucCwNCiAJCWVsc2UN CiAJCQljb25zdHJhaW50cy0+cmFtcF9kaXNhYmxlID0gdHJ1ZTsNCiAJfQ0KKw0KKwl2YWxpZF9t b2RlcyA9IG9mX2ZpbmRfbm9kZV9ieV9uYW1lKG5wLCAicmVndWxhdG9yLXZhbGlkLW1vZGVzLW1h c2siKTsNCisJaWYgKHZhbGlkX21vZGVzKSB7DQorCQlpZiAob2ZfcHJvcGVydHlfcmVhZF9ib29s KHZhbGlkX21vZGVzLCAiZmFzdCIpKQ0KKwkJCWNvbnN0cmFpbnRzLT52YWxpZF9tb2Rlc19tYXNr ID0gUkVHVUxBVE9SX01PREVfRkFTVDsNCisJCWlmIChvZl9wcm9wZXJ0eV9yZWFkX2Jvb2wodmFs aWRfbW9kZXMsICJub3JtYWwiKSkNCisJCQljb25zdHJhaW50cy0+dmFsaWRfbW9kZXNfbWFzayB8 PSBSRUdVTEFUT1JfTU9ERV9OT1JNQUw7DQorCQlpZiAob2ZfcHJvcGVydHlfcmVhZF9ib29sKHZh bGlkX21vZGVzLCAiaWRsZSIpKQ0KKwkJCWNvbnN0cmFpbnRzLT52YWxpZF9tb2Rlc19tYXNrIHw9 IFJFR1VMQVRPUl9NT0RFX0lETEU7DQorCQlpZiAob2ZfcHJvcGVydHlfcmVhZF9ib29sKHZhbGlk X21vZGVzLCAic3RhbmRieSIpKQ0KKwkJCWNvbnN0cmFpbnRzLT52YWxpZF9tb2Rlc19tYXNrIHw9 IFJFR1VMQVRPUl9NT0RFX1NUQU5EQlk7DQorCX0NCisNCisJLyogZmxhZyBhc3NpZ25tZW50IGZv ciBpbml0aWFsIG1vZGUqLw0KKwlpZiAoIW9mX3Byb3BlcnR5X21hdGNoX3N0cmluZyhucCwgInJl Z3VsYXRvci1pbml0aWFsLW1vZGUiLCAiZmFzdCIpKQ0KKwkJY29uc3RyYWludHMtPmluaXRpYWxf bW9kZSA9IFJFR1VMQVRPUl9NT0RFX0ZBU1Q7DQorCWVsc2UgaWYgKCFvZl9wcm9wZXJ0eV9tYXRj aF9zdHJpbmcobnAsICJyZWd1bGF0b3ItaW5pdGlhbC1tb2RlIiwNCisJCQkJCQkJCSJub3JtYWwi KSkNCisJCWNvbnN0cmFpbnRzLT5pbml0aWFsX21vZGUgPSBSRUdVTEFUT1JfTU9ERV9OT1JNQUw7 DQorCWVsc2UgaWYgKCFvZl9wcm9wZXJ0eV9tYXRjaF9zdHJpbmcobnAsICJyZWd1bGF0b3ItaW5p dGlhbC1tb2RlIiwNCisJCQkJCQkJCSJpZGxlIikpDQorCQljb25zdHJhaW50cy0+aW5pdGlhbF9t b2RlID0gUkVHVUxBVE9SX01PREVfSURMRTsNCisJZWxzZSBpZiAoIW9mX3Byb3BlcnR5X21hdGNo X3N0cmluZyhucCwgInJlZ3VsYXRvci1pbml0aWFsLW1vZGUiLA0KKwkJCQkJCQkJInN0YW5kYnki KSkNCisJCWNvbnN0cmFpbnRzLT5pbml0aWFsX21vZGUgPSBSRUdVTEFUT1JfTU9ERV9TVEFOREJZ Ow0KKw0KKwkvKiBmbGFnIGFzc2lnbm1lbnQgZm9yIGluaXRpYWwgc3RhdGUqLw0KKwlpZiAoIW9m X3Byb3BlcnR5X21hdGNoX3N0cmluZyhucCwNCisJCQkJInJlZ3VsYXRvci1pbml0aWFsLXN0YXRl IiwgInN1c3BlbmQtbWVtIikpDQorCQljb25zdHJhaW50cy0+aW5pdGlhbF9zdGF0ZSA9IFBNX1NV U1BFTkRfTUVNOw0KKwllbHNlIGlmICghb2ZfcHJvcGVydHlfbWF0Y2hfc3RyaW5nKG5wLA0KKwkJ CQkicmVndWxhdG9yLWluaXRpYWwtc3RhdGUiLCAic3VzcGVuZC1zdGFuZGJ5IikpDQorCQljb25z dHJhaW50cy0+aW5pdGlhbF9zdGF0ZSA9IFBNX1NVU1BFTkRfU1RBTkRCWTsNCisJZWxzZSBpZiAo IW9mX3Byb3BlcnR5X21hdGNoX3N0cmluZyhucCwNCisJCQkJInJlZ3VsYXRvci1pbml0aWFsLXN0 YXRlIiwgInN1c3BlbmQtZGlzayIpKQ0KKwkJY29uc3RyYWludHMtPmluaXRpYWxfc3RhdGUgPSBQ TV9TVVNQRU5EX01BWDsNCisNCisJLyogcmVndWxhdG9yIHN0YXRlIGR1cmluZyBsb3cgcG93ZXIg c3lzdGVtIHN0YXRlcyAqLw0KKwlzdGF0ZSA9IG9mX2ZpbmRfbm9kZV9ieV9uYW1lKG5wLCAicmVn dWxhdG9yLXN0YXRlLW1lbSIpOw0KKwlpZiAoc3RhdGUpDQorCQlzZXRfcmVndWxhdG9yX3N0YXRl X2NvbnN0cmFpbnRzKHN0YXRlLA0KKwkJCQkmY29uc3RyYWludHMtPnN0YXRlX21lbSk7DQorDQor CXN0YXRlID0gb2ZfZmluZF9ub2RlX2J5X25hbWUobnAsICJyZWd1bGF0b3Itc3RhdGUtZGlzayIp Ow0KKwlpZiAoc3RhdGUpDQorCQlzZXRfcmVndWxhdG9yX3N0YXRlX2NvbnN0cmFpbnRzKHN0YXRl LA0KKwkJCQkmY29uc3RyYWludHMtPnN0YXRlX2Rpc2spOw0KKw0KKwlzdGF0ZSA9IG9mX2ZpbmRf bm9kZV9ieV9uYW1lKG5wLCAicmVndWxhdG9yLXN0YXRlLXN0YW5kYnkiKTsNCisJaWYgKHN0YXRl KQ0KKwkJc2V0X3JlZ3VsYXRvcl9zdGF0ZV9jb25zdHJhaW50cyhzdGF0ZSwNCisJCQkJJmNvbnN0 cmFpbnRzLT5zdGF0ZV9zdGFuZGJ5KTsNCiB9DQogDQogLyoqDQotLSANCjEuNy4wLjQ=