From mboxrd@z Thu Jan 1 00:00:00 1970 From: Archit Taneja Subject: [PATCH v2 7/7] drm/msm/dsi: Parse DSI lanes via DT Date: Thu, 25 Feb 2016 11:19:48 +0530 Message-ID: <1456379388-14767-8-git-send-email-architt@codeaurora.org> References: <1456379388-14767-1-git-send-email-architt@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1456379388-14767-1-git-send-email-architt@codeaurora.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: robdclark@gmail.com Cc: devicetree@vger.kernel.org, linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, Tomi Valkeinen List-Id: devicetree@vger.kernel.org VGhlIERTSSBkcml2ZXIgaXMgY3VycmVudGx5IHVuYXdhcmUgb2YgaG93IHRoZSBEU0kgcGh5c2lj YWwgZGF0YSBsYW5lcwphcmUgbWFwcGVkIHRvIHRoZSBsb2dpY2FsIGxhbmVzIHByb3ZpZGVkIGJ5 IHRoZSBEU0kgY29udHJvbGxlci4KCkNyZWF0ZSBhIERUIGJpbmRpbmcgInFjb20sZGF0YS1sYW5l LW1hcCIgdGhhdCBwcm92aWRlcyB0aGlzIGluZm9ybWF0aW9uCm9uIGEgZ2l2ZW4gcGxhdGZvcm0u CgpUaGUgTVNNIERTSSBjb250cm9sbGVyIGlzIHJlc3RyaWN0ZWQgaW4gdGVybXMgb2Ygd2hhdCBh bGwgbWFwcGluZ3MKaXQgY2FuIHN1cHBvcnQuIFRoZSBsYW5lIHBvbGFyaXR5IGlzIGZpeGVkIGZv ciBhbGwgdGhlIGxhbmVzLCB0aGUgY2xvY2sKbGFuZXMgYXJlIGZpeGVkLCBhbmQgdGhlIGRhdGEg bGFuZXMgY2FuIGJlIHN3YXBwZWQgYW1vbmcgZWFjaCBvdGhlciBvbmx5CmZvciBhIGZldyBjb21i aW5hdGlvbnMuIEFwcGx5IHRoZXNlIHJlc3RyaWN0aW9ucyB3aGVuIHdlIHBhcnNlIHRoZSBEVApk YXRhLgoKQ2M6IGRldmljZXRyZWVAdmdlci5rZXJuZWwub3JnCkNjOiBSb2IgSGVycmluZyA8cm9i aEBrZXJuZWwub3JnPgpDYzogVG9taSBWYWxrZWluZW4gPHRvbWkudmFsa2VpbmVuQHRpLmNvbT4K ClNpZ25lZC1vZmYtYnk6IEFyY2hpdCBUYW5lamEgPGFyY2hpdHRAY29kZWF1cm9yYS5vcmc+Ci0t LQogLi4uL2RldmljZXRyZWUvYmluZGluZ3MvZGlzcGxheS9tc20vZHNpLnR4dCAgICAgICAgfCAg MzIgKysrKystCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2RzaS9kc2lfaG9zdC5jICAgICAgICAgICAg ICAgICB8IDExNiArKysrKysrKysrKysrKysrKy0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTI1IGlu c2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24v ZGV2aWNldHJlZS9iaW5kaW5ncy9kaXNwbGF5L21zbS9kc2kudHh0IGIvRG9jdW1lbnRhdGlvbi9k ZXZpY2V0cmVlL2JpbmRpbmdzL2Rpc3BsYXkvbXNtL2RzaS50eHQKaW5kZXggZTc0MjNiZS4uZjU5 NDhjNCAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2Rpc3Bs YXkvbXNtL2RzaS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2Rp c3BsYXkvbXNtL2RzaS50eHQKQEAgLTQ0LDkgKzQ0LDM0IEBAIE9wdGlvbmFsIHByb3BlcnRpZXM6 CiAtIHBpbmN0cmwtbmFtZXM6IHRoZSBwaW4gY29udHJvbCBzdGF0ZSBuYW1lczsgc2hvdWxkIGNv bnRhaW4gImRlZmF1bHQiCiAtIHBpbmN0cmwtMDogdGhlIGRlZmF1bHQgcGluY3RybCBzdGF0ZSAo YWN0aXZlKQogLSBwaW5jdHJsLW46IHRoZSAic2xlZXAiIHBpbmN0cmwgc3RhdGUKLS0gcG9ydDog RFNJIGNvbnRyb2xsZXIgb3V0cHV0IHBvcnQuIFRoaXMgY29udGFpbnMgb25lIGVuZHBvaW50IHN1 Ym5vZGUsIHdpdGggaXRzCi0gIHJlbW90ZS1lbmRwb2ludCBzZXQgdG8gdGhlIHBoYW5kbGUgb2Yg dGhlIGNvbm5lY3RlZCBwYW5lbCdzIGVuZHBvaW50LgotICBTZWUgRG9jdW1lbnRhdGlvbi9kZXZp Y2V0cmVlL2JpbmRpbmdzL2dyYXBoLnR4dCBmb3IgZGV2aWNlIGdyYXBoIGluZm8uCistIHBvcnQ6 IERTSSBjb250cm9sbGVyIG91dHB1dCBwb3J0LCBjb250YWluaW5nIG9uZSBlbmRwb2ludCBzdWJu b2RlLgorCisgIERTSSBFbmRwb2ludCBwcm9wZXJ0aWVzOgorICAtIHJlbW90ZS1lbmRwb2ludDog c2V0IHRvIHBoYW5kbGUgb2YgdGhlIGNvbm5lY3RlZCBwYW5lbCdzIGVuZHBvaW50LgorICAgIFNl ZSBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvZ3JhcGgudHh0IGZvciBkZXZpY2Ug Z3JhcGggaW5mby4KKyAgLSBxY29tLGRhdGEtbGFuZS1tYXA6IHRoaXMgZGVzY3JpYmVzIGhvdyB0 aGUgbG9naWNhbCBEU0kgbGFuZXMgYXJlIG1hcHBlZAorICAgIHRvIHRoZSBwaHlzaWNhbCBsYW5l cyBvbiB0aGUgZ2l2ZW4gcGxhdGZvcm0uIFRoZSB2YWx1ZSBjb250YWluZWQgaW4KKyAgICBpbmRl eCBuIGRlc2NyaWJlcyB3aGF0IGxvZ2ljYWwgZGF0YSBsYW5lIGlzIG1hcHBlZCB0byB0aGUgcGh5 c2ljYWwgZGF0YQorICAgIGxhbmUgbiAoREFUQW4sIHdoZXJlIG4gbGllcyBiZXR3ZWVuIDAgYW5k IDMpLgorCisgICAgRm9yIGV4YW1wbGU6CisKKyAgICBxY29tLGRhdGEtbGFuZS1tYXAgPSA8MyAw IDEgMj47CisKKyAgICBUaGUgYWJvdmUgbWFwcGluZyBkZXNjcmliZXMgdGhhdCB0aGUgbG9naWNh bCBkYXRhIGxhbmUgREFUQTMgaXMgbWFwcGVkIHRvCisgICAgdGhlIHBoeXNpY2FsIGRhdGEgbGFu ZSBEQVRBMCwgbG9naWNhbCBEQVRBMCB0byBwaHlzaWNhbCBEQVRBMSwgbG9naWMgREFUQTEKKyAg ICB0byBwaHlzIERBVEEyIGFuZCBsb2dpYyBEQVRBMiB0byBwaHlzIERBVEEzLgorCisgICAgVGhl cmUgYXJlIG9ubHkgYSBsaW1pdGVkIG51bWJlciBvZiBwaHlzaWNhbCB0byBsb2dpY2FsIG1hcHBp bmdzIHBvc3NpYmxlOgorCisgICAgIjAxMjMiOiBMb2dpYyAwLT5QaHlzIDA7IExvZ2ljIDEtPlBo eXMgMTsgTG9naWMgMi0+UGh5cyAyOyBMb2dpYyAzLT5QaHlzIDM7CisgICAgIjMwMTIiOiBMb2dp YyAzLT5QaHlzIDA7IExvZ2ljIDAtPlBoeXMgMTsgTG9naWMgMS0+UGh5cyAyOyBMb2dpYyAyLT5Q aHlzIDM7CisgICAgIjIzMDEiOiBMb2dpYyAyLT5QaHlzIDA7IExvZ2ljIDMtPlBoeXMgMTsgTG9n aWMgMC0+UGh5cyAyOyBMb2dpYyAxLT5QaHlzIDM7CisgICAgIjEyMzAiOiBMb2dpYyAxLT5QaHlz IDA7IExvZ2ljIDItPlBoeXMgMTsgTG9naWMgMy0+UGh5cyAyOyBMb2dpYyAwLT5QaHlzIDM7Cisg ICAgIjAzMjEiOiBMb2dpYyAwLT5QaHlzIDA7IExvZ2ljIDMtPlBoeXMgMTsgTG9naWMgMi0+UGh5 cyAyOyBMb2dpYyAxLT5QaHlzIDM7CisgICAgIjEwMzIiOiBMb2dpYyAxLT5QaHlzIDA7IExvZ2lj IDAtPlBoeXMgMTsgTG9naWMgMy0+UGh5cyAyOyBMb2dpYyAyLT5QaHlzIDM7CisgICAgIjIxMDMi OiBMb2dpYyAyLT5QaHlzIDA7IExvZ2ljIDEtPlBoeXMgMTsgTG9naWMgMC0+UGh5cyAyOyBMb2dp YyAzLT5QaHlzIDM7CisgICAgIjMyMTAiOiBMb2dpYyAzLT5QaHlzIDA7IExvZ2ljIDItPlBoeXMg MTsgTG9naWMgMS0+UGh5cyAyOyBMb2dpYyAwLT5QaHlzIDM7CiAKIERTSSBQSFk6CiBSZXF1aXJl ZCBwcm9wZXJ0aWVzOgpAQCAtMTMxLDYgKzE1Niw3IEBAIEV4YW1wbGU6CiAJCXBvcnQgewogCQkJ ZHNpMF9vdXQ6IGVuZHBvaW50IHsKIAkJCQlyZW1vdGUtZW5kcG9pbnQgPSA8JnBhbmVsX2luPjsK KwkJCQlsYW5lcyA9IDwwIDEgMiAzPjsKIAkJCX07CiAJCX07CiAJfTsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaV9ob3N0LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rz aS9kc2lfaG9zdC5jCmluZGV4IDY5YmFjNTkuLjQyODJlYzYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9tc20vZHNpL2RzaV9ob3N0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kc2kv ZHNpX2hvc3QuYwpAQCAtMTYzLDYgKzE2MywxMCBAQCBzdHJ1Y3QgbXNtX2RzaV9ob3N0IHsKIAll bnVtIG1pcGlfZHNpX3BpeGVsX2Zvcm1hdCBmb3JtYXQ7CiAJdW5zaWduZWQgbG9uZyBtb2RlX2Zs YWdzOwogCisJLyogbGFuZSBkYXRhIHBhcnNlZCB2aWEgRFQgKi8KKwlpbnQgZGxhbmVfc3dhcDsK KwlpbnQgbnVtX2RhdGFfbGFuZXM7CisKIAl1MzIgZG1hX2NtZF9jdHJsX3Jlc3RvcmU7CiAKIAli b29sIHJlZ2lzdGVyZWQ7CkBAIC04NDUsMTkgKzg0OSwxMCBAQCBzdGF0aWMgdm9pZCBkc2lfY3Ry bF9jb25maWcoc3RydWN0IG1zbV9kc2lfaG9zdCAqbXNtX2hvc3QsIGJvb2wgZW5hYmxlLAogCWRh dGEgPSBEU0lfQ1RSTF9DTEtfRU47CiAKIAlEQkcoImxhbmUgbnVtYmVyPSVkIiwgbXNtX2hvc3Qt PmxhbmVzKTsKLQlpZiAobXNtX2hvc3QtPmxhbmVzID09IDIpIHsKLQkJZGF0YSB8PSBEU0lfQ1RS TF9MQU5FMSB8IERTSV9DVFJMX0xBTkUyOwotCQkvKiBzd2FwIGxhbmVzIGZvciAyLWxhbmUgcGFu ZWwgZm9yIGJldHRlciBwZXJmb3JtYW5jZSAqLwotCQlkc2lfd3JpdGUobXNtX2hvc3QsIFJFR19E U0lfTEFORV9TV0FQX0NUUkwsCi0JCQlEU0lfTEFORV9TV0FQX0NUUkxfRExOX1NXQVBfU0VMKExB TkVfU1dBUF8xMjMwKSk7Ci0JfSBlbHNlIHsKLQkJLyogVGFrZSA0IGxhbmVzIGFzIGRlZmF1bHQg Ki8KLQkJZGF0YSB8PSBEU0lfQ1RSTF9MQU5FMCB8IERTSV9DVFJMX0xBTkUxIHwgRFNJX0NUUkxf TEFORTIgfAotCQkJRFNJX0NUUkxfTEFORTM7Ci0JCS8qIERvIG5vdCBzd2FwIGxhbmVzIGZvciA0 LWxhbmUgcGFuZWwgKi8KLQkJZHNpX3dyaXRlKG1zbV9ob3N0LCBSRUdfRFNJX0xBTkVfU1dBUF9D VFJMLAotCQkJRFNJX0xBTkVfU1dBUF9DVFJMX0RMTl9TV0FQX1NFTChMQU5FX1NXQVBfMDEyMykp OwotCX0KKwlkYXRhIHw9ICgoRFNJX0NUUkxfTEFORTAgPDwgbXNtX2hvc3QtPmxhbmVzKSAtIERT SV9DVFJMX0xBTkUwKTsKKworCWRzaV93cml0ZShtc21faG9zdCwgUkVHX0RTSV9MQU5FX1NXQVBf Q1RSTCwKKwkJICBEU0lfTEFORV9TV0FQX0NUUkxfRExOX1NXQVBfU0VMKG1zbV9ob3N0LT5kbGFu ZV9zd2FwKSk7CiAKIAlpZiAoIShmbGFncyAmIE1JUElfRFNJX0NMT0NLX05PTl9DT05USU5VT1VT KSkKIAkJZHNpX3dyaXRlKG1zbV9ob3N0LCBSRUdfRFNJX0xBTkVfQ1RSTCwKQEAgLTE0NzksNiAr MTQ3NCw5IEBAIHN0YXRpYyBpbnQgZHNpX2hvc3RfYXR0YWNoKHN0cnVjdCBtaXBpX2RzaV9ob3N0 ICpob3N0LAogCXN0cnVjdCBtc21fZHNpX2hvc3QgKm1zbV9ob3N0ID0gdG9fbXNtX2RzaV9ob3N0 KGhvc3QpOwogCWludCByZXQ7CiAKKwlpZiAoZHNpLT5sYW5lcyA+IG1zbV9ob3N0LT5udW1fZGF0 YV9sYW5lcykKKwkJcmV0dXJuIC1FSU5WQUw7CisKIAltc21faG9zdC0+Y2hhbm5lbCA9IGRzaS0+ Y2hhbm5lbDsKIAltc21faG9zdC0+bGFuZXMgPSBkc2ktPmxhbmVzOwogCW1zbV9ob3N0LT5mb3Jt YXQgPSBkc2ktPmZvcm1hdDsKQEAgLTE1MzIsNiArMTUzMCw3NSBAQCBzdGF0aWMgc3RydWN0IG1p cGlfZHNpX2hvc3Rfb3BzIGRzaV9ob3N0X29wcyA9IHsKIAkudHJhbnNmZXIgPSBkc2lfaG9zdF90 cmFuc2ZlciwKIH07CiAKKy8qCisgKiBMaXN0IG9mIHN1cHBvcnRlZCBwaHlzaWNhbCB0byBsb2dp Y2FsIGxhbmUgbWFwcGluZ3MuCisgKiBGb3IgZXhhbXBsZSwgdGhlIDJuZCBlbnRyeSByZXByZXNl bnRzIHRoZSBmb2xsb3dpbmcgbWFwcGluZzoKKyAqCisgKiAiMzAxMiI6IExvZ2ljIDMtPlBoeXMg MDsgTG9naWMgMC0+UGh5cyAxOyBMb2dpYyAxLT5QaHlzIDI7IExvZ2ljIDItPlBoeXMgMzsKKyAq Lworc3RhdGljIGNvbnN0IGludCBzdXBwb3J0ZWRfZGF0YV9sYW5lX3N3YXBzW11bNF0gPSB7CisJ eyAwLCAxLCAyLCAzIH0sCisJeyAzLCAwLCAxLCAyIH0sCisJeyAyLCAzLCAwLCAxIH0sCisJeyAx LCAyLCAzLCAwIH0sCisJeyAwLCAzLCAyLCAxIH0sCisJeyAxLCAwLCAzLCAyIH0sCisJeyAyLCAx LCAwLCAzIH0sCisJeyAzLCAyLCAxLCAwIH0sCit9OworCitzdGF0aWMgaW50IGRzaV9ob3N0X3Bh cnNlX2xhbmVfZGF0YShzdHJ1Y3QgbXNtX2RzaV9ob3N0ICptc21faG9zdCwKKwkJCQkgICAgc3Ry dWN0IGRldmljZV9ub2RlICplcCkKK3sKKwlzdHJ1Y3QgZGV2aWNlICpkZXYgPSAmbXNtX2hvc3Qt PnBkZXYtPmRldjsKKwlzdHJ1Y3QgcHJvcGVydHkgKnByb3A7CisJdTMyIGxhbmVfbWFwWzRdOwor CWludCByZXQsIGksIGxlbiwgbnVtX2xhbmVzOworCisJcHJvcCA9IG9mX2ZpbmRfcHJvcGVydHko ZXAsICJxY29tLGRhdGEtbGFuZS1tYXAiLCAmbGVuKTsKKwlpZiAoIXByb3ApIHsKKwkJZGV2X2Ri ZyhkZXYsICJmYWlsZWQgdG8gZmluZCBkYXRhIGxhbmUgbWFwcGluZ1xuIik7CisJCXJldHVybiAt RUlOVkFMOworCX0KKworCW51bV9sYW5lcyA9IGxlbiAvIHNpemVvZih1MzIpOworCisJaWYgKG51 bV9sYW5lcyA8IDEgfHwgbnVtX2xhbmVzID4gNCkgeworCQlkZXZfZXJyKGRldiwgImJhZCBudW1i ZXIgb2YgZGF0YSBsYW5lc1xuIik7CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCW1zbV9ob3N0 LT5udW1fZGF0YV9sYW5lcyA9IG51bV9sYW5lczsKKworCXJldCA9IG9mX3Byb3BlcnR5X3JlYWRf dTMyX2FycmF5KGVwLCAicWNvbSxkYXRhLWxhbmUtbWFwIiwgbGFuZV9tYXAsCisJCQkJCSBudW1f bGFuZXMpOworCWlmIChyZXQpIHsKKwkJZGV2X2VycihkZXYsICJmYWlsZWQgdG8gcmVhZCBsYW5l IGRhdGFcbiIpOworCQlyZXR1cm4gcmV0OworCX0KKworCS8qCisJICogY29tcGFyZSBEVCBzcGVj aWZpZWQgcGh5c2ljYWwtbG9naWNhbCBsYW5lIG1hcHBpbmdzIHdpdGggdGhlIG9uZXMKKwkgKiBz dXBwb3J0ZWQgYnkgaGFyZHdhcmUKKwkgKi8KKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShz dXBwb3J0ZWRfZGF0YV9sYW5lX3N3YXBzKTsgaSsrKSB7CisJCWNvbnN0IGludCAqc3dhcCA9IHN1 cHBvcnRlZF9kYXRhX2xhbmVfc3dhcHNbaV07CisJCWludCBqOworCisJCWZvciAoaiA9IDA7IGog PCBudW1fbGFuZXM7IGorKykgeworCQkJaWYgKHN3YXBbal0gIT0gbGFuZV9tYXBbal0pCisJCQkJ YnJlYWs7CisJCX0KKworCQlpZiAoaiA9PSBudW1fbGFuZXMpIHsKKwkJCW1zbV9ob3N0LT5kbGFu ZV9zd2FwID0gaTsKKwkJCXJldHVybiAwOworCQl9CisJfQorCisJcmV0dXJuIC1FSU5WQUw7Cit9 CisKIHN0YXRpYyBpbnQgZHNpX2hvc3RfcGFyc2VfZHQoc3RydWN0IG1zbV9kc2lfaG9zdCAqbXNt X2hvc3QpCiB7CiAJc3RydWN0IGRldmljZSAqZGV2ID0gJm1zbV9ob3N0LT5wZGV2LT5kZXY7CkBA IC0xNTU4LDE3ICsxNjI1LDIxIEBAIHN0YXRpYyBpbnQgZHNpX2hvc3RfcGFyc2VfZHQoc3RydWN0 IG1zbV9kc2lfaG9zdCAqbXNtX2hvc3QpCiAJCXJldHVybiAwOwogCX0KIAorCXJldCA9IGRzaV9o b3N0X3BhcnNlX2xhbmVfZGF0YShtc21faG9zdCwgZW5kcG9pbnQpOworCWlmIChyZXQpIHsKKwkJ ZGV2X2VycihkZXYsICIlczogaW52YWxpZCBsYW5lIGNvbmZpZ3VyYXRpb24gJWRcbiIsCisJCQlf X2Z1bmNfXywgcmV0KTsKKwkJZ290byBlcnI7CisJfQorCiAJLyogR2V0IHBhbmVsIG5vZGUgZnJv bSB0aGUgb3V0cHV0IHBvcnQncyBlbmRwb2ludCBkYXRhICovCiAJZGV2aWNlX25vZGUgPSBvZl9n cmFwaF9nZXRfcmVtb3RlX3BvcnRfcGFyZW50KGVuZHBvaW50KTsKIAlpZiAoIWRldmljZV9ub2Rl KSB7CiAJCWRldl9lcnIoZGV2LCAiJXM6IG5vIHZhbGlkIGRldmljZVxuIiwgX19mdW5jX18pOwot CQlvZl9ub2RlX3B1dChlbmRwb2ludCk7Ci0JCXJldHVybiAtRU5PREVWOworCQlyZXQgPSAtRU5P REVWOworCQlnb3RvIGVycjsKIAl9CiAKLQlvZl9ub2RlX3B1dChlbmRwb2ludCk7Ci0Jb2Zfbm9k ZV9wdXQoZGV2aWNlX25vZGUpOwotCiAJbXNtX2hvc3QtPmRldmljZV9ub2RlID0gZGV2aWNlX25v ZGU7CiAKIAlpZiAob2ZfcHJvcGVydHlfcmVhZF9ib29sKG5wLCAic3lzY29uLXNmcGIiKSkgewpA QCAtMTU3NywxMSArMTY0OCwxNiBAQCBzdGF0aWMgaW50IGRzaV9ob3N0X3BhcnNlX2R0KHN0cnVj dCBtc21fZHNpX2hvc3QgKm1zbV9ob3N0KQogCQlpZiAoSVNfRVJSKG1zbV9ob3N0LT5zZnBiKSkg ewogCQkJZGV2X2VycihkZXYsICIlczogZmFpbGVkIHRvIGdldCBzZnBiIHJlZ21hcFxuIiwKIAkJ CQlfX2Z1bmNfXyk7Ci0JCQlyZXR1cm4gUFRSX0VSUihtc21faG9zdC0+c2ZwYik7CisJCQlyZXQg PSBQVFJfRVJSKG1zbV9ob3N0LT5zZnBiKTsKIAkJfQogCX0KIAotCXJldHVybiAwOworCW9mX25v ZGVfcHV0KGRldmljZV9ub2RlKTsKKworZXJyOgorCW9mX25vZGVfcHV0KGVuZHBvaW50KTsKKwor CXJldHVybiByZXQ7CiB9CiAKIGludCBtc21fZHNpX2hvc3RfaW5pdChzdHJ1Y3QgbXNtX2RzaSAq bXNtX2RzaSkKLS0gClRoZSBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRlciwgSW5jLiBpcyBhIG1l bWJlciBvZiB0aGUgQ29kZSBBdXJvcmEgRm9ydW0sCmhvc3RlZCBieSBUaGUgTGludXggRm91bmRh dGlvbgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJp LWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==