From nobody Wed Jun 17 04:16:39 2026 Received: from mail-vk1-f174.google.com (mail-vk1-f174.google.com [209.85.221.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AAFC131F988 for ; Tue, 28 Apr 2026 08:30:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=209.85.221.174 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777365024; cv=pass; b=fBw3h3LAV4vxZJMz8QELFZOcpQxUuvV9H8HSRMtVOdCboyXrf8qV3mPf2wqbYxYxoSxrs9IOIYLKG3bpUFi/K5tfaJL8U9wNupajnuGF/CIHMtiFrAtf34MEdbEr0JICGO41/gJyGgAKul40/A9cyTLUc4GPb3v4OF4/TNPJmes= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777365024; c=relaxed/simple; bh=tnFw/ZeanCNsqL4jceCbfIQiET6IhCdmgLz77GdcmXo=; h=MIME-Version:From:Date:Message-ID:Subject:To:Cc:Content-Type; b=WCtYL7eoqAoIc/NNaxYd/0462dxuhq26ZvGq0Hk08efhIiWkiBkWQnmH9kLzefbwCIy/AdPLVNtnNpy8wHV19OBIWKnzfNv1PEW/wHFFOeLFXmuC0l0OSRRHngdAkxthSw9UmgpaocyViWrKNI7raY1KAkr8ieOBVt59EJOP3Ro= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=bPI4IUQv; arc=pass smtp.client-ip=209.85.221.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="bPI4IUQv" Received: by mail-vk1-f174.google.com with SMTP id 71dfb90a1353d-56f3e6bbecdso3684746e0c.2 for ; Tue, 28 Apr 2026 01:30:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1777365021; cv=none; d=google.com; s=arc-20240605; b=fnsKLXZgFdnQ1XIdRX84NmHRwKVjXI+7v4YjlVLnUTfn5EmQdUZDJ88hk9zJURqcfq qAiiDSXMLOpLYvfhfczbiY7GXzAqQgJI+1PWT5GONV6UDYenBVzv2Y9pqTDrGdPv/Nqz 0wRnJdyFCvExrfZBQiR8PyQufGrkR/jDdOyvtAk3KmA6sCcX+kd4WwOL9aGgbIksX0lH EEBHcXIZ+vD2dK2FWjDtyoBONNik//khIBcd2S0K37P/mUsN08qDKovZBVXSnFQZXz85 Laoi68qi9XZnylZVrDSU04mRH2u9EtugrBUa4CRlgGEijVxcxfrf9vU1xr8fL22MkKiU 2reA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:mime-version:dkim-signature; bh=BsZz50yBqtj+OkfF20QZXPrlmDh941fojm12Cobv4jY=; fh=KHWnhlFUcXv3qUaLd783FMCbv7Ll96BycP699d+8j7Y=; b=Vw/yhiqs/iKUNe+g0lZXyYBb4/NDTNSnIsvdHN7Sa0StQFOqq7tPkMp22obhdXheqt edBaSHQ2stFYwuf6u0Oh/jd5Pnu9pCP/tR5DxE7mRXeAaE4qoW++9MiwKM7fLdzAKp16 jcxtwqbjP9H/rPNQs4cyGzmOJx0bjFqzu7I5sESeRA21/oZl04TgUirxtL38AaEiKcFy XuOmYknaUbQ2ERRuludOIhbHVVW+etzwOfD311393I3xpeiHV/RlFdNcekugagG3EkMF lrJlcNvKcWcjOZaL6r61zrknFTJk2ssXaUIYkZOHTyoJPdKL7f5rjxArfXwCGxm3PSrK SEGw==; darn=vger.kernel.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777365021; x=1777969821; darn=vger.kernel.org; h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=BsZz50yBqtj+OkfF20QZXPrlmDh941fojm12Cobv4jY=; b=bPI4IUQvX/9Ne8yhPTAc9KKxp/3wMoE6VqJmP+SUY488PJhlQMYBg9MAlHYyGxiHav 8gkrIWukux4vtwQq9lrE/TwRgx3zjVqb72chDs+jumguBRX4WhEqgcF32+w6jynhMhRf tcfvaPCSvK+eiAnD+9vt4hlz0Y67K+cs0XHh1CIBYYgISzWTnNmopMXI2+JYP8PxkCR3 nbfRICI3xelVRnrOCPZm8mrqmQ+4Bet93AOu1CFNa7lEJ595P7mstM38B+U1TO+ywvTz tSoe2ltuVACwDIyG85BwGiaQqEhWF8oUNRzgMIIgW+7ljFmacGCc/4he3Z2aDGDb3z6L h+vw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777365021; x=1777969821; h=cc:to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=BsZz50yBqtj+OkfF20QZXPrlmDh941fojm12Cobv4jY=; b=o2wStgQJm5elFAOQiXXkZziWcFZHXyTNVjGa96aQlI7jUmN+vDq6hp0YDb0FxcUUMG M/lhs18rKSBUggBLfEFne74QdiEau4DVC66e6d7iZX9/ywYGkkmQ7LTqlBFxCrlOzaND uNAtOjZNPUrriw2Fxlzg7hUXPUkxm3CMsvcH/Yy0j1Y3zE5vR09NnM03Wl4Gl5UZsUO3 h0Ylpwxy22t1Tj5BO/kr56DjRDoki3eV/YrbpwlnMBCgo7qJE1EsKvZNPllsrB4I4gMJ OZiHyvZ5iBCv73d15XXwgNqs9RWQHzL14yRExG2X8nyfZxsAB6U8FUg+k+6a9U72ipYY 2Abw== X-Gm-Message-State: AOJu0YxfCK31wR72Je8PdYozFRFf1kOnzE4XlLVQDFelti9Eynf8y0Ub R3FWvVFSiOfN19kcAXGZZVzpywy4wPSkns7h24v3fWpPWBVU3CL08IaZS/b+N2yn017l7au4T6A YTUS4P5QESFIr/VRj4hDBgQnNPv4s7A9N4kOizrUK8NlPe5g= X-Gm-Gg: AeBDiesZmGExfQXNRw6l6p4RWsNzm/kWH+xlQVFV8rJU+afIOAxzy5BrjsLVjkCDo+c rLTUZ81tDYe2T+17ofDxLCEd8Mi0RjscHrLMbvvdewFUHtlJr1CUVRAd2+LQEmOjorS3oKT+62b ewDJg6BvAPWW+e3ROlN+6oTxTUW7DmajBXvU+8VZ5hBwkN2HYglqS3ss5tHHHCvckRiiMxAN8Sv LDyN3h77reL35dZL91EwW6hvhnmUhfPagDht/UrVWw9oWmP3NLM5yQkwoxDom0wqC6eWCYyV2cH b4ZEkrVC8e/ylCP8 X-Received: by 2002:a05:6102:1609:b0:60f:7499:9b6b with SMTP id ada2fe7eead31-6280bce0851mr541059137.29.1777365021477; Tue, 28 Apr 2026 01:30:21 -0700 (PDT) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 From: Jiawei liu Date: Tue, 28 Apr 2026 16:30:09 +0800 X-Gm-Features: AVHnY4I-osxZycvZxFckGI7pi9aX_q0U-SSzuENCU7EV2P3t2mPow0mmI4JAe4k Message-ID: Subject: parport: parport_serial: add WCH device 1c00:3450 and disable IRQ To: Sudip Mukherjee Cc: linux-kernel@vger.kernel.org Content-Type: multipart/mixed; boundary="000000000000bdf00a0650810a42" --000000000000bdf00a0650810a42 Content-Type: multipart/alternative; boundary="000000000000bdf0090650810a40" --000000000000bdf0090650810a40 Content-Type: text/plain; charset="UTF-8" Add PCI device ID 1c00:3450 for WCH parallel port devices. The generic parport_serial driver requests IRQs for this device, but the interrupt handler does not properly handle the device-generated interrupts, which may result in spurious or unhandled IRQs. Disable IRQ usage for this device to ensure stable operation. Signed-off-by: Jiawei Liu --000000000000bdf0090650810a40 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
=C2=A0 =C2=A0 Add PCI device ID 1c00:3450 for WCH parallel= port devices.
=C2=A0 =C2=A0
=C2=A0 =C2=A0 The generic parport_seria= l driver requests IRQs for this
=C2=A0 =C2=A0 device, but the interrupt = handler does not properly handle
=C2=A0 =C2=A0 the device-generated inte= rrupts, which may result in
=C2=A0 =C2=A0 spurious or unhandled IRQs.=C2=A0 =C2=A0
=C2=A0 =C2=A0 Disable IRQ usage for this device to ensur= e stable operation.
=C2=A0 =C2=A0
=C2=A0 =C2=A0 Signed-off-by: Jiawe= i Liu <liujiawei4419@gmail.co= m>
--000000000000bdf0090650810a40-- --000000000000bdf00a0650810a42 Content-Type: application/octet-stream; name="0002-parport-parport_serial-add-WCH-device-1c00-3450-and-.patch" Content-Disposition: attachment; filename="0002-parport-parport_serial-add-WCH-device-1c00-3450-and-.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_moid8aai0 RnJvbSAyODg3NjllMmY0MzgzNDZiOWFmNjE0NWRmMTQ1OWEzYTY4ZTZiODhkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKaWF3ZWkgTGl1IDxsaXVqaWF3ZWk0NDE5QGdtYWlsLmNvbT4K RGF0ZTogVHVlLCAyOCBBcHIgMjAyNiAxNToxODo1NiArMDgwMApTdWJqZWN0OiBbUEFUQ0ggMi8y XSBwYXJwb3J0OiBwYXJwb3J0X3NlcmlhbDogYWRkIFdDSCBkZXZpY2UgMWMwMDozNDUwIGFuZAog ZGlzYWJsZSBJUlEKCkFkZCBQQ0kgZGV2aWNlIElEIDFjMDA6MzQ1MCBmb3IgV0NIIHBhcmFsbGVs IHBvcnQgZGV2aWNlcy4KClRoZSBnZW5lcmljIHBhcnBvcnRfc2VyaWFsIGRyaXZlciByZXF1ZXN0 cyBJUlFzIGZvciB0aGlzCmRldmljZSwgYnV0IHRoZSBpbnRlcnJ1cHQgaGFuZGxlciBkb2VzIG5v dCBwcm9wZXJseSBoYW5kbGUKdGhlIGRldmljZS1nZW5lcmF0ZWQgaW50ZXJydXB0cywgd2hpY2gg bWF5IHJlc3VsdCBpbgpzcHVyaW91cyBvciB1bmhhbmRsZWQgSVJRcy4KCkRpc2FibGUgSVJRIHVz YWdlIGZvciB0aGlzIGRldmljZSB0byBlbnN1cmUgc3RhYmxlIG9wZXJhdGlvbi4KClNpZ25lZC1v ZmYtYnk6IEppYXdlaSBMaXUgPGxpdWppYXdlaTQ0MTlAZ21haWwuY29tPgotLS0KIGRyaXZlcnMv cGFycG9ydC9wYXJwb3J0X3NlcmlhbC5jIHwgNjA3ICsrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0MTIgaW5zZXJ0aW9ucygrKSwgMTk1IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGFycG9ydC9wYXJwb3J0X3NlcmlhbC5jIGIvZHJpdmVy cy9wYXJwb3J0L3BhcnBvcnRfc2VyaWFsLmMKaW5kZXggMjRkNGYzYTNlYzNkMC4uZWUyMDBiZWU2 Njk1ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9wYXJwb3J0L3BhcnBvcnRfc2VyaWFsLmMKKysrIGIv ZHJpdmVycy9wYXJwb3J0L3BhcnBvcnRfc2VyaWFsLmMKQEAgLTYwLDYgKzYwLDcgQEAgZW51bSBw YXJwb3J0X3BjX3BjaV9jYXJkcyB7CiAJd2NoX2NoMzUzXzJzMXAsCiAJd2NoX2NoMzgyXzBzMXAs CiAJd2NoX2NoMzgyXzJzMXAsCisJd2NoX2NoMzg0XzRzMXAsCiAJYnJhaW5ib3hlc181czFwLAog CXN1bml4XzQwMDhhLAogCXN1bml4XzUwNjlhLApAQCAtODQsMTMgKzg1LDEzIEBAIHN0cnVjdCBw YXJwb3J0X3BjX3BjaSB7CiAJLyogSWYgc2V0LCB0aGlzIGlzIGNhbGxlZCBpbW1lZGlhdGVseSBh ZnRlciBwY2lfZW5hYmxlX2RldmljZS4KIAkgKiBJZiBpdCByZXR1cm5zIG5vbi16ZXJvLCBubyBw cm9iaW5nIHdpbGwgdGFrZSBwbGFjZSBhbmQgdGhlCiAJICogcG9ydHMgd2lsbCBub3QgYmUgdXNl ZC4gKi8KLQlpbnQgKCpwcmVpbml0X2hvb2spIChzdHJ1Y3QgcGNpX2RldiAqcGRldiwgc3RydWN0 IHBhcnBvcnRfcGNfcGNpICpjYXJkLAotCQkJCWludCBhdXRvaXJxLCBpbnQgYXV0b2RtYSk7CisJ aW50ICgqcHJlaW5pdF9ob29rKShzdHJ1Y3QgcGNpX2RldiAqcGRldiwgc3RydWN0IHBhcnBvcnRf cGNfcGNpICpjYXJkLAorCQkJICAgIGludCBhdXRvaXJxLCBpbnQgYXV0b2RtYSk7CiAKIAkvKiBJ ZiBzZXQsIHRoaXMgaXMgY2FsbGVkIGFmdGVyIHByb2JpbmcgZm9yIHBvcnRzLiAgSWYgJ2ZhaWxl ZCcKIAkgKiBpcyBub24temVybyB3ZSBjb3VsZG4ndCB1c2UgYW55IG9mIHRoZSBwb3J0cy4gKi8K LQl2b2lkICgqcG9zdGluaXRfaG9vaykgKHN0cnVjdCBwY2lfZGV2ICpwZGV2LAotCQkJCXN0cnVj dCBwYXJwb3J0X3BjX3BjaSAqY2FyZCwgaW50IGZhaWxlZCk7CisJdm9pZCAoKnBvc3Rpbml0X2hv b2spKHN0cnVjdCBwY2lfZGV2ICpwZGV2LCBzdHJ1Y3QgcGFycG9ydF9wY19wY2kgKmNhcmQsCisJ CQkgICAgICBpbnQgZmFpbGVkKTsKIH07CiAKIHN0YXRpYyBpbnQgbmV0bW9zX3BhcmFsbGVsX2lu aXQoc3RydWN0IHBjaV9kZXYgKmRldiwgc3RydWN0IHBhcnBvcnRfcGNfcGNpICpwYXIsCkBAIC05 OCw4ICs5OSw4IEBAIHN0YXRpYyBpbnQgbmV0bW9zX3BhcmFsbGVsX2luaXQoc3RydWN0IHBjaV9k ZXYgKmRldiwgc3RydWN0IHBhcnBvcnRfcGNfcGNpICpwYXIsCiB7CiAJLyogdGhlIHJ1bGUgZGVz Y3JpYmVkIGJlbG93IGRvZXNuJ3QgaG9sZCBmb3IgdGhpcyBkZXZpY2UgKi8KIAlpZiAoZGV2LT5k ZXZpY2UgPT0gUENJX0RFVklDRV9JRF9ORVRNT1NfOTgzNSAmJgotCQkJZGV2LT5zdWJzeXN0ZW1f dmVuZG9yID09IFBDSV9WRU5ET1JfSURfSUJNICYmCi0JCQlkZXYtPnN1YnN5c3RlbV9kZXZpY2Ug PT0gMHgwMjk5KQorCSAgICBkZXYtPnN1YnN5c3RlbV92ZW5kb3IgPT0gUENJX1ZFTkRPUl9JRF9J Qk0gJiYKKwkgICAgZGV2LT5zdWJzeXN0ZW1fZGV2aWNlID09IDB4MDI5OSkKIAkJcmV0dXJuIC1F Tk9ERVY7CiAKIAlpZiAoZGV2LT5kZXZpY2UgPT0gUENJX0RFVklDRV9JRF9ORVRNT1NfOTkxMikg ewpAQCAtMTE5LDEzMiArMTIwLDMzNyBAQCBzdGF0aWMgaW50IG5ldG1vc19wYXJhbGxlbF9pbml0 KHN0cnVjdCBwY2lfZGV2ICpkZXYsIHN0cnVjdCBwYXJwb3J0X3BjX3BjaSAqcGFyLAogfQogCiBz dGF0aWMgc3RydWN0IHBhcnBvcnRfcGNfcGNpIGNhcmRzW10gPSB7Ci0JLyogdGl0YW5fMTEwbCAq LwkJeyAxLCB7IHsgMywgLTEgfSwgfSB9LAotCS8qIHRpdGFuXzIxMGwgKi8JCXsgMSwgeyB7IDMs IC0xIH0sIH0gfSwKLQkvKiBuZXRtb3NfOXh4NV9jb21ibyAqLwkJeyAxLCB7IHsgMiwgLTEgfSwg fSwgbmV0bW9zX3BhcmFsbGVsX2luaXQgfSwKLQkvKiBuZXRtb3NfOTg1NSAqLwkJeyAxLCB7IHsg MCwgLTEgfSwgfSwgbmV0bW9zX3BhcmFsbGVsX2luaXQgfSwKLQkvKiBuZXRtb3NfOTg1NV8ycCAq LwkJeyAyLCB7IHsgMCwgLTEgfSwgeyAyLCAtMSB9LCB9IH0sCi0JLyogbmV0bW9zXzk5MDAgKi8J CXsxLCB7IHsgMywgNCB9LCB9LCBuZXRtb3NfcGFyYWxsZWxfaW5pdCB9LAotCS8qIG5ldG1vc185 OTAwXzJwICovCQl7MiwgeyB7IDAsIDEgfSwgeyAzLCA0IH0sIH0gfSwKLQkvKiBuZXRtb3NfOTl4 eF8xcCAqLwkJezEsIHsgeyAwLCAxIH0sIH0gfSwKLQkvKiBhdmxhYl8xczFwICAgICAqLwkJeyAx LCB7IHsgMSwgMn0sIH0gfSwKLQkvKiBhdmxhYl8xczJwICAgICAqLwkJeyAyLCB7IHsgMSwgMn0s IHsgMywgNCB9LH0gfSwKLQkvKiBhdmxhYl8yczFwICAgICAqLwkJeyAxLCB7IHsgMiwgM30sIH0g fSwKLQkvKiBzaWlnXzFzMXBfMTB4ICovCQl7IDEsIHsgeyAzLCA0IH0sIH0gfSwKLQkvKiBzaWln XzJzMXBfMTB4ICovCQl7IDEsIHsgeyA0LCA1IH0sIH0gfSwKLQkvKiBzaWlnXzJwMXNfMjB4ICov CQl7IDIsIHsgeyAxLCAyIH0sIHsgMywgNCB9LCB9IH0sCi0JLyogc2lpZ18xczFwXzIweCAqLwkJ eyAxLCB7IHsgMSwgMiB9LCB9IH0sCi0JLyogc2lpZ18yczFwXzIweCAqLwkJeyAxLCB7IHsgMiwg MyB9LCB9IH0sCi0JLyogdGltZWRpYV80MDc4YSAqLwkJeyAxLCB7IHsgMiwgLTEgfSwgfSB9LAot CS8qIHRpbWVkaWFfNDA3OWggKi8gICAgICAgICAgICAgeyAxLCB7IHsgMiwgMyB9LCB9IH0sCi0J LyogdGltZWRpYV80MDg1aCAqLyAgICAgICAgICAgICB7IDIsIHsgeyAyLCAtMSB9LCB7IDQsIC0x IH0sIH0gfSwKLQkvKiB0aW1lZGlhXzQwODhhICovICAgICAgICAgICAgIHsgMiwgeyB7IDIsIDMg fSwgeyA0LCA1IH0sIH0gfSwKLQkvKiB0aW1lZGlhXzQwODlhICovICAgICAgICAgICAgIHsgMiwg eyB7IDIsIDMgfSwgeyA0LCA1IH0sIH0gfSwKLQkvKiB0aW1lZGlhXzQwOTVhICovICAgICAgICAg ICAgIHsgMiwgeyB7IDIsIDMgfSwgeyA0LCA1IH0sIH0gfSwKLQkvKiB0aW1lZGlhXzQwOTZhICov ICAgICAgICAgICAgIHsgMiwgeyB7IDIsIDMgfSwgeyA0LCA1IH0sIH0gfSwKLQkvKiB0aW1lZGlh XzQwNzh1ICovICAgICAgICAgICAgIHsgMSwgeyB7IDIsIC0xIH0sIH0gfSwKLQkvKiB0aW1lZGlh XzQwNzlhICovICAgICAgICAgICAgIHsgMSwgeyB7IDIsIDMgfSwgfSB9LAotCS8qIHRpbWVkaWFf NDA4NXUgKi8gICAgICAgICAgICAgeyAyLCB7IHsgMiwgLTEgfSwgeyA0LCAtMSB9LCB9IH0sCi0J LyogdGltZWRpYV80MDc5ciAqLyAgICAgICAgICAgICB7IDEsIHsgeyAyLCAzIH0sIH0gfSwKLQkv KiB0aW1lZGlhXzQwNzlzICovICAgICAgICAgICAgIHsgMSwgeyB7IDIsIDMgfSwgfSB9LAotCS8q IHRpbWVkaWFfNDA3OWQgKi8gICAgICAgICAgICAgeyAxLCB7IHsgMiwgMyB9LCB9IH0sCi0JLyog dGltZWRpYV80MDc5ZSAqLyAgICAgICAgICAgICB7IDEsIHsgeyAyLCAzIH0sIH0gfSwKLQkvKiB0 aW1lZGlhXzQwNzlmICovICAgICAgICAgICAgIHsgMSwgeyB7IDIsIDMgfSwgfSB9LAotCS8qIHRp bWVkaWFfOTA3OWEgKi8gICAgICAgICAgICAgeyAxLCB7IHsgMiwgMyB9LCB9IH0sCi0JLyogdGlt ZWRpYV85MDc5YiAqLyAgICAgICAgICAgICB7IDEsIHsgeyAyLCAzIH0sIH0gfSwKLQkvKiB0aW1l ZGlhXzkwNzljICovICAgICAgICAgICAgIHsgMSwgeyB7IDIsIDMgfSwgfSB9LAotCS8qIHdjaF9j aDM1M18xczFwKi8gICAgICAgICAgICAgeyAxLCB7IHsgMSwgLTF9LCB9IH0sCi0JLyogd2NoX2No MzUzXzJzMXAqLyAgICAgICAgICAgICB7IDEsIHsgeyAyLCAtMX0sIH0gfSwKLQkvKiB3Y2hfY2gz ODJfMHMxcCovCQl7IDEsIHsgeyAyLCAtMX0sIH0gfSwKLQkvKiB3Y2hfY2gzODJfMnMxcCovICAg ICAgICAgICAgIHsgMSwgeyB7IDIsIC0xfSwgfSB9LAotCS8qIGJyYWluYm94ZXNfNXMxcCAqLyAg ICAgICAgICAgeyAxLCB7IHsgMywgLTEgfSwgfSB9LAotCS8qIHN1bml4XzQwMDhhICovCQl7IDEs IHsgeyAxLCAyIH0sIH0gfSwKLQkvKiBzdW5peF81MDY5YSAqLwkJeyAxLCB7IHsgMSwgMiB9LCB9 IH0sCi0JLyogc3VuaXhfNTA3OWEgKi8JCXsgMSwgeyB7IDEsIDIgfSwgfSB9LAotCS8qIHN1bml4 XzUwOTlhICovCQl7IDEsIHsgeyAxLCAyIH0sIH0gfSwKLQkvKiBicmFpbmJveGVzX3VjMjU3ICov CXsgMSwgeyB7IDMsIC0xIH0sIH0gfSwKLQkvKiBicmFpbmJveGVzX2lzMzAwICovCXsgMSwgeyB7 IDMsIC0xIH0sIH0gfSwKLQkvKiBicmFpbmJveGVzX3VjNDE0ICovICB7IDEsIHsgeyAzLCAtMSB9 LCB9IH0sCi0JLyogYnJhaW5ib3hlc19weDI2MyAqLwl7IDEsIHsgeyAzLCAtMSB9LCB9IH0sCisJ LyogdGl0YW5fMTEwbCAqLyB7IDEsCisJCQkgICB7CisJCQkJICAgeyAzLCAtMSB9LAorCQkJICAg fSB9LAorCS8qIHRpdGFuXzIxMGwgKi8KKwl7IDEsCisJICB7CisJCSAgeyAzLCAtMSB9LAorCSAg fSB9LAorCS8qIG5ldG1vc185eHg1X2NvbWJvICovCisJeyAxLAorCSAgeworCQkgIHsgMiwgLTEg fSwKKwkgIH0sCisJICBuZXRtb3NfcGFyYWxsZWxfaW5pdCB9LAorCS8qIG5ldG1vc185ODU1ICov CisJeyAxLAorCSAgeworCQkgIHsgMCwgLTEgfSwKKwkgIH0sCisJICBuZXRtb3NfcGFyYWxsZWxf aW5pdCB9LAorCS8qIG5ldG1vc185ODU1XzJwICovCisJeyAyLAorCSAgeworCQkgIHsgMCwgLTEg fSwKKwkJICB7IDIsIC0xIH0sCisJICB9IH0sCisJLyogbmV0bW9zXzk5MDAgKi8KKwl7IDEsCisJ ICB7CisJCSAgeyAzLCA0IH0sCisJICB9LAorCSAgbmV0bW9zX3BhcmFsbGVsX2luaXQgfSwKKwkv KiBuZXRtb3NfOTkwMF8ycCAqLworCXsgMiwKKwkgIHsKKwkJICB7IDAsIDEgfSwKKwkJICB7IDMs IDQgfSwKKwkgIH0gfSwKKwkvKiBuZXRtb3NfOTl4eF8xcCAqLworCXsgMSwKKwkgIHsKKwkJICB7 IDAsIDEgfSwKKwkgIH0gfSwKKwkvKiBhdmxhYl8xczFwICAgICAqLworCXsgMSwKKwkgIHsKKwkJ ICB7IDEsIDIgfSwKKwkgIH0gfSwKKwkvKiBhdmxhYl8xczJwICAgICAqLworCXsgMiwKKwkgIHsK KwkJICB7IDEsIDIgfSwKKwkJICB7IDMsIDQgfSwKKwkgIH0gfSwKKwkvKiBhdmxhYl8yczFwICAg ICAqLworCXsgMSwKKwkgIHsKKwkJICB7IDIsIDMgfSwKKwkgIH0gfSwKKwkvKiBzaWlnXzFzMXBf MTB4ICovCisJeyAxLAorCSAgeworCQkgIHsgMywgNCB9LAorCSAgfSB9LAorCS8qIHNpaWdfMnMx cF8xMHggKi8KKwl7IDEsCisJICB7CisJCSAgeyA0LCA1IH0sCisJICB9IH0sCisJLyogc2lpZ18y cDFzXzIweCAqLworCXsgMiwKKwkgIHsKKwkJICB7IDEsIDIgfSwKKwkJICB7IDMsIDQgfSwKKwkg IH0gfSwKKwkvKiBzaWlnXzFzMXBfMjB4ICovCisJeyAxLAorCSAgeworCQkgIHsgMSwgMiB9LAor CSAgfSB9LAorCS8qIHNpaWdfMnMxcF8yMHggKi8KKwl7IDEsCisJICB7CisJCSAgeyAyLCAzIH0s CisJICB9IH0sCisJLyogdGltZWRpYV80MDc4YSAqLworCXsgMSwKKwkgIHsKKwkJICB7IDIsIC0x IH0sCisJICB9IH0sCisJLyogdGltZWRpYV80MDc5aCAqLworCXsgMSwKKwkgIHsKKwkJICB7IDIs IDMgfSwKKwkgIH0gfSwKKwkvKiB0aW1lZGlhXzQwODVoICovCisJeyAyLAorCSAgeworCQkgIHsg MiwgLTEgfSwKKwkJICB7IDQsIC0xIH0sCisJICB9IH0sCisJLyogdGltZWRpYV80MDg4YSAqLwor CXsgMiwKKwkgIHsKKwkJICB7IDIsIDMgfSwKKwkJICB7IDQsIDUgfSwKKwkgIH0gfSwKKwkvKiB0 aW1lZGlhXzQwODlhICovCisJeyAyLAorCSAgeworCQkgIHsgMiwgMyB9LAorCQkgIHsgNCwgNSB9 LAorCSAgfSB9LAorCS8qIHRpbWVkaWFfNDA5NWEgKi8KKwl7IDIsCisJICB7CisJCSAgeyAyLCAz IH0sCisJCSAgeyA0LCA1IH0sCisJICB9IH0sCisJLyogdGltZWRpYV80MDk2YSAqLworCXsgMiwK KwkgIHsKKwkJICB7IDIsIDMgfSwKKwkJICB7IDQsIDUgfSwKKwkgIH0gfSwKKwkvKiB0aW1lZGlh XzQwNzh1ICovCisJeyAxLAorCSAgeworCQkgIHsgMiwgLTEgfSwKKwkgIH0gfSwKKwkvKiB0aW1l ZGlhXzQwNzlhICovCisJeyAxLAorCSAgeworCQkgIHsgMiwgMyB9LAorCSAgfSB9LAorCS8qIHRp bWVkaWFfNDA4NXUgKi8KKwl7IDIsCisJICB7CisJCSAgeyAyLCAtMSB9LAorCQkgIHsgNCwgLTEg fSwKKwkgIH0gfSwKKwkvKiB0aW1lZGlhXzQwNzlyICovCisJeyAxLAorCSAgeworCQkgIHsgMiwg MyB9LAorCSAgfSB9LAorCS8qIHRpbWVkaWFfNDA3OXMgKi8KKwl7IDEsCisJICB7CisJCSAgeyAy LCAzIH0sCisJICB9IH0sCisJLyogdGltZWRpYV80MDc5ZCAqLworCXsgMSwKKwkgIHsKKwkJICB7 IDIsIDMgfSwKKwkgIH0gfSwKKwkvKiB0aW1lZGlhXzQwNzllICovCisJeyAxLAorCSAgeworCQkg IHsgMiwgMyB9LAorCSAgfSB9LAorCS8qIHRpbWVkaWFfNDA3OWYgKi8KKwl7IDEsCisJICB7CisJ CSAgeyAyLCAzIH0sCisJICB9IH0sCisJLyogdGltZWRpYV85MDc5YSAqLworCXsgMSwKKwkgIHsK KwkJICB7IDIsIDMgfSwKKwkgIH0gfSwKKwkvKiB0aW1lZGlhXzkwNzliICovCisJeyAxLAorCSAg eworCQkgIHsgMiwgMyB9LAorCSAgfSB9LAorCS8qIHRpbWVkaWFfOTA3OWMgKi8KKwl7IDEsCisJ ICB7CisJCSAgeyAyLCAzIH0sCisJICB9IH0sCisJLyogd2NoX2NoMzUzXzFzMXAqLworCXsgMSwK KwkgIHsKKwkJICB7IDEsIC0xIH0sCisJICB9IH0sCisJLyogd2NoX2NoMzUzXzJzMXAqLworCXsg MSwKKwkgIHsKKwkJICB7IDIsIC0xIH0sCisJICB9IH0sCisJLyogd2NoX2NoMzgyXzBzMXAqLwor CXsgMSwKKwkgIHsKKwkJICB7IDIsIC0xIH0sCisJICB9IH0sCisJLyogd2NoX2NoMzgyXzJzMXAq LworCXsgMSwKKwkgIHsKKwkJICB7IDIsIC0xIH0sCisJICB9IH0sCisJLyogd2NoX2NoMzg0XzRz MXAqLworCXsgMSwKKwkgIHsKKwkJICB7IDIsIC0xIH0sCisJICB9IH0sCisJLyogYnJhaW5ib3hl c181czFwICovCisJeyAxLAorCSAgeworCQkgIHsgMywgLTEgfSwKKwkgIH0gfSwKKwkvKiBzdW5p eF80MDA4YSAqLworCXsgMSwKKwkgIHsKKwkJICB7IDEsIDIgfSwKKwkgIH0gfSwKKwkvKiBzdW5p eF81MDY5YSAqLworCXsgMSwKKwkgIHsKKwkJICB7IDEsIDIgfSwKKwkgIH0gfSwKKwkvKiBzdW5p eF81MDc5YSAqLworCXsgMSwKKwkgIHsKKwkJICB7IDEsIDIgfSwKKwkgIH0gfSwKKwkvKiBzdW5p eF81MDk5YSAqLworCXsgMSwKKwkgIHsKKwkJICB7IDEsIDIgfSwKKwkgIH0gfSwKKwkvKiBicmFp bmJveGVzX3VjMjU3ICovCisJeyAxLAorCSAgeworCQkgIHsgMywgLTEgfSwKKwkgIH0gfSwKKwkv KiBicmFpbmJveGVzX2lzMzAwICovCisJeyAxLAorCSAgeworCQkgIHsgMywgLTEgfSwKKwkgIH0g fSwKKwkvKiBicmFpbmJveGVzX3VjNDE0ICovCisJeyAxLAorCSAgeworCQkgIHsgMywgLTEgfSwK KwkgIH0gfSwKKwkvKiBicmFpbmJveGVzX3B4MjYzICovCisJeyAxLAorCSAgeworCQkgIHsgMywg LTEgfSwKKwkgIH0gfSwKIH07CiAKIHN0YXRpYyBzdHJ1Y3QgcGNpX2RldmljZV9pZCBwYXJwb3J0 X3NlcmlhbF9wY2lfdGJsW10gPSB7CiAJLyogUENJIGNhcmRzICovCi0JeyBQQ0lfVkVORE9SX0lE X1RJVEFOLCBQQ0lfREVWSUNFX0lEX1RJVEFOXzExMEwsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5Z X0lELCAwLCAwLCB0aXRhbl8xMTBsIH0sCi0JeyBQQ0lfVkVORE9SX0lEX1RJVEFOLCBQQ0lfREVW SUNFX0lEX1RJVEFOXzIxMEwsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCB0aXRh bl8yMTBsIH0sCi0JeyBQQ0lfVkVORE9SX0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1Nf OTczNSwKLQkgIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsIG5ldG1vc185eHg1X2NvbWJv IH0sCi0JeyBQQ0lfVkVORE9SX0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTc0NSwK LQkgIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsIG5ldG1vc185eHg1X2NvbWJvIH0sCi0J eyBQQ0lfVkVORE9SX0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTgzNSwKLQkgIFBD SV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsIG5ldG1vc185eHg1X2NvbWJvIH0sCi0JeyBQQ0lf VkVORE9SX0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTg0NSwKLQkgIFBDSV9BTllf SUQsIFBDSV9BTllfSUQsIDAsIDAsIG5ldG1vc185eHg1X2NvbWJvIH0sCi0JeyBQQ0lfVkVORE9S X0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTg1NSwKLQkgIDB4MTAwMCwgMHgwMDIw LCAwLCAwLCBuZXRtb3NfOTg1NV8ycCB9LAotCXsgUENJX1ZFTkRPUl9JRF9ORVRNT1MsIFBDSV9E RVZJQ0VfSURfTkVUTU9TXzk4NTUsCi0JICAweDEwMDAsIDB4MDAyMiwgMCwgMCwgbmV0bW9zXzk4 NTVfMnAgfSwKLQl7IFBDSV9WRU5ET1JfSURfTkVUTU9TLCBQQ0lfREVWSUNFX0lEX05FVE1PU185 ODU1LAotCSAgUENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwgMCwgbmV0bW9zXzk4NTUgfSwKLQl7 IFBDSV9WRU5ET1JfSURfTkVUTU9TLCBQQ0lfREVWSUNFX0lEX05FVE1PU185OTAwLAotCSAgMHhB MDAwLCAweDMwMTEsIDAsIDAsIG5ldG1vc185OTAwIH0sCi0JeyBQQ0lfVkVORE9SX0lEX05FVE1P UywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTkwMCwKLQkgIDB4QTAwMCwgMHgzMDEyLCAwLCAwLCBu ZXRtb3NfOTkwMCB9LAotCXsgUENJX1ZFTkRPUl9JRF9ORVRNT1MsIFBDSV9ERVZJQ0VfSURfTkVU TU9TXzk5MDAsCi0JICAweEEwMDAsIDB4MzAyMCwgMCwgMCwgbmV0bW9zXzk5MDBfMnAgfSwKLQl7 IFBDSV9WRU5ET1JfSURfTkVUTU9TLCBQQ0lfREVWSUNFX0lEX05FVE1PU185OTEyLAotCSAgMHhB MDAwLCAweDIwMDAsIDAsIDAsIG5ldG1vc185OXh4XzFwIH0sCisJeyBQQ0lfVkVORE9SX0lEX1RJ VEFOLCBQQ0lfREVWSUNFX0lEX1RJVEFOXzExMEwsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsCisJ ICAwLCAwLCB0aXRhbl8xMTBsIH0sCisJeyBQQ0lfVkVORE9SX0lEX1RJVEFOLCBQQ0lfREVWSUNF X0lEX1RJVEFOXzIxMEwsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsCisJICAwLCAwLCB0aXRhbl8y MTBsIH0sCisJeyBQQ0lfVkVORE9SX0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTcz NSwgUENJX0FOWV9JRCwKKwkgIFBDSV9BTllfSUQsIDAsIDAsIG5ldG1vc185eHg1X2NvbWJvIH0s CisJeyBQQ0lfVkVORE9SX0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTc0NSwgUENJ X0FOWV9JRCwKKwkgIFBDSV9BTllfSUQsIDAsIDAsIG5ldG1vc185eHg1X2NvbWJvIH0sCisJeyBQ Q0lfVkVORE9SX0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTgzNSwgUENJX0FOWV9J RCwKKwkgIFBDSV9BTllfSUQsIDAsIDAsIG5ldG1vc185eHg1X2NvbWJvIH0sCisJeyBQQ0lfVkVO RE9SX0lEX05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTg0NSwgUENJX0FOWV9JRCwKKwkg IFBDSV9BTllfSUQsIDAsIDAsIG5ldG1vc185eHg1X2NvbWJvIH0sCisJeyBQQ0lfVkVORE9SX0lE X05FVE1PUywgUENJX0RFVklDRV9JRF9ORVRNT1NfOTg1NSwgMHgxMDAwLCAweDAwMjAsIDAsIDAs CisJICBuZXRtb3NfOTg1NV8ycCB9LAorCXsgUENJX1ZFTkRPUl9JRF9ORVRNT1MsIFBDSV9ERVZJ Q0VfSURfTkVUTU9TXzk4NTUsIDB4MTAwMCwgMHgwMDIyLCAwLCAwLAorCSAgbmV0bW9zXzk4NTVf MnAgfSwKKwl7IFBDSV9WRU5ET1JfSURfTkVUTU9TLCBQQ0lfREVWSUNFX0lEX05FVE1PU185ODU1 LCBQQ0lfQU5ZX0lELAorCSAgUENJX0FOWV9JRCwgMCwgMCwgbmV0bW9zXzk4NTUgfSwKKwl7IFBD SV9WRU5ET1JfSURfTkVUTU9TLCBQQ0lfREVWSUNFX0lEX05FVE1PU185OTAwLCAweEEwMDAsIDB4 MzAxMSwgMCwgMCwKKwkgIG5ldG1vc185OTAwIH0sCisJeyBQQ0lfVkVORE9SX0lEX05FVE1PUywg UENJX0RFVklDRV9JRF9ORVRNT1NfOTkwMCwgMHhBMDAwLCAweDMwMTIsIDAsIDAsCisJICBuZXRt b3NfOTkwMCB9LAorCXsgUENJX1ZFTkRPUl9JRF9ORVRNT1MsIFBDSV9ERVZJQ0VfSURfTkVUTU9T Xzk5MDAsIDB4QTAwMCwgMHgzMDIwLCAwLCAwLAorCSAgbmV0bW9zXzk5MDBfMnAgfSwKKwl7IFBD SV9WRU5ET1JfSURfTkVUTU9TLCBQQ0lfREVWSUNFX0lEX05FVE1PU185OTEyLCAweEEwMDAsIDB4 MjAwMCwgMCwgMCwKKwkgIG5ldG1vc185OXh4XzFwIH0sCiAJLyogUENJX1ZFTkRPUl9JRF9BVkxB Qi9JbnRlazIxIGhhcyBhbm90aGVyIGJ1bmNoIG9mIGNhcmRzIC4uLiovCi0JeyBQQ0lfVkVORE9S X0lEX0FGQVZMQUIsIDB4MjExMCwKLQkgIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsIGF2 bGFiXzFzMXAgfSwKLQl7IFBDSV9WRU5ET1JfSURfQUZBVkxBQiwgMHgyMTExLAotCSAgUENJX0FO WV9JRCwgUENJX0FOWV9JRCwgMCwgMCwgYXZsYWJfMXMxcCB9LAotCXsgUENJX1ZFTkRPUl9JRF9B RkFWTEFCLCAweDIxMTIsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBhdmxhYl8x czFwIH0sCi0JeyBQQ0lfVkVORE9SX0lEX0FGQVZMQUIsIDB4MjE0MCwKLQkgIFBDSV9BTllfSUQs IFBDSV9BTllfSUQsIDAsIDAsIGF2bGFiXzFzMnAgfSwKLQl7IFBDSV9WRU5ET1JfSURfQUZBVkxB QiwgMHgyMTQxLAotCSAgUENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwgMCwgYXZsYWJfMXMycCB9 LAotCXsgUENJX1ZFTkRPUl9JRF9BRkFWTEFCLCAweDIxNDIsCi0JICBQQ0lfQU5ZX0lELCBQQ0lf QU5ZX0lELCAwLCAwLCBhdmxhYl8xczJwIH0sCi0JeyBQQ0lfVkVORE9SX0lEX0FGQVZMQUIsIDB4 MjE2MCwKLQkgIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsIGF2bGFiXzJzMXAgfSwKLQl7 IFBDSV9WRU5ET1JfSURfQUZBVkxBQiwgMHgyMTYxLAotCSAgUENJX0FOWV9JRCwgUENJX0FOWV9J RCwgMCwgMCwgYXZsYWJfMnMxcCB9LAotCXsgUENJX1ZFTkRPUl9JRF9BRkFWTEFCLCAweDIxNjIs Ci0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBhdmxhYl8yczFwIH0sCi0JeyBQQ0lf VkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18xUzFQXzEweF81NTAsCi0JICBQQ0lf QU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzFzMXBfMTB4IH0sCi0JeyBQQ0lfVkVORE9S X0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18xUzFQXzEweF82NTAsCi0JICBQQ0lfQU5ZX0lE LCBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzFzMXBfMTB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJ SUcsIFBDSV9ERVZJQ0VfSURfU0lJR18xUzFQXzEweF84NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lf QU5ZX0lELCAwLCAwLCBzaWlnXzFzMXBfMTB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBD SV9ERVZJQ0VfSURfU0lJR18yUzFQXzEweF81NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lE LCAwLCAwLCBzaWlnXzJzMXBfMTB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJ Q0VfSURfU0lJR18yUzFQXzEweF82NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAw LCBzaWlnXzJzMXBfMTB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURf U0lJR18yUzFQXzEweF84NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBzaWln XzJzMXBfMTB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18y UDFTXzIweF81NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJwMXNf MjB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUDFTXzIw eF82NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJwMXNfMjB4IH0s Ci0JeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUDFTXzIweF84NTAs Ci0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJwMXNfMjB4IH0sCi0JeyBQ Q0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18xUzFQXzIweF81NTAsCi0JICBQ Q0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJzMXBfMjB4IH0sCi0JeyBQQ0lfVkVO RE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18xUzFQXzIweF82NTAsCi0JICBQQ0lfQU5Z X0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzFzMXBfMjB4IH0sCi0JeyBQQ0lfVkVORE9SX0lE X1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18xUzFQXzIweF84NTAsCi0JICBQQ0lfQU5ZX0lELCBQ Q0lfQU5ZX0lELCAwLCAwLCBzaWlnXzFzMXBfMjB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJSUcs IFBDSV9ERVZJQ0VfSURfU0lJR18yUzFQXzIweF81NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5Z X0lELCAwLCAwLCBzaWlnXzJzMXBfMjB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9E RVZJQ0VfSURfU0lJR18yUzFQXzIweF82NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAw LCAwLCBzaWlnXzJzMXBfMjB4IH0sCi0JeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0Vf SURfU0lJR18yUzFQXzIweF84NTAsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBz aWlnXzJzMXBfMjB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX0FGQVZMQUIsIDB4MjExMCwgUENJX0FO WV9JRCwgUENJX0FOWV9JRCwgMCwgMCwKKwkgIGF2bGFiXzFzMXAgfSwKKwl7IFBDSV9WRU5ET1Jf SURfQUZBVkxBQiwgMHgyMTExLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLAorCSAgYXZs YWJfMXMxcCB9LAorCXsgUENJX1ZFTkRPUl9JRF9BRkFWTEFCLCAweDIxMTIsIFBDSV9BTllfSUQs IFBDSV9BTllfSUQsIDAsIDAsCisJICBhdmxhYl8xczFwIH0sCisJeyBQQ0lfVkVORE9SX0lEX0FG QVZMQUIsIDB4MjE0MCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwgMCwKKwkgIGF2bGFiXzFz MnAgfSwKKwl7IFBDSV9WRU5ET1JfSURfQUZBVkxBQiwgMHgyMTQxLCBQQ0lfQU5ZX0lELCBQQ0lf QU5ZX0lELCAwLCAwLAorCSAgYXZsYWJfMXMycCB9LAorCXsgUENJX1ZFTkRPUl9JRF9BRkFWTEFC LCAweDIxNDIsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsCisJICBhdmxhYl8xczJwIH0s CisJeyBQQ0lfVkVORE9SX0lEX0FGQVZMQUIsIDB4MjE2MCwgUENJX0FOWV9JRCwgUENJX0FOWV9J RCwgMCwgMCwKKwkgIGF2bGFiXzJzMXAgfSwKKwl7IFBDSV9WRU5ET1JfSURfQUZBVkxBQiwgMHgy MTYxLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLAorCSAgYXZsYWJfMnMxcCB9LAorCXsg UENJX1ZFTkRPUl9JRF9BRkFWTEFCLCAweDIxNjIsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAs IDAsCisJICBhdmxhYl8yczFwIH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0Vf SURfU0lJR18xUzFQXzEweF81NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBz aWlnXzFzMXBfMTB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJ R18xUzFQXzEweF82NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzFz MXBfMTB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18xUzFQ XzEweF84NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzFzMXBfMTB4 IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUzFQXzEweF81 NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJzMXBfMTB4IH0sCisJ eyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUzFQXzEweF82NTAsIFBD SV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJzMXBfMTB4IH0sCisJeyBQQ0lf VkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUzFQXzEweF84NTAsIFBDSV9BTllf SUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJzMXBfMTB4IH0sCisJeyBQQ0lfVkVORE9S X0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUDFTXzIweF81NTAsIFBDSV9BTllfSUQsCisJ ICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJwMXNfMjB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJ SUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUDFTXzIweF82NTAsIFBDSV9BTllfSUQsCisJICBQQ0lf QU5ZX0lELCAwLCAwLCBzaWlnXzJwMXNfMjB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBD SV9ERVZJQ0VfSURfU0lJR18yUDFTXzIweF84NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lE LCAwLCAwLCBzaWlnXzJwMXNfMjB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJ Q0VfSURfU0lJR18xUzFQXzIweF81NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAw LCBzaWlnXzJzMXBfMjB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURf U0lJR18xUzFQXzIweF82NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWln XzFzMXBfMjB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18x UzFQXzIweF84NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzFzMXBf MjB4IH0sCisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUzFQXzIw eF81NTAsIFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJzMXBfMjB4IH0s CisJeyBQQ0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUzFQXzIweF82NTAs IFBDSV9BTllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJzMXBfMjB4IH0sCisJeyBQ Q0lfVkVORE9SX0lEX1NJSUcsIFBDSV9ERVZJQ0VfSURfU0lJR18yUzFQXzIweF84NTAsIFBDSV9B TllfSUQsCisJICBQQ0lfQU5ZX0lELCAwLCAwLCBzaWlnXzJzMXBfMjB4IH0sCiAJLyogUENJX1ZF TkRPUl9JRF9USU1FRElBL1NVTklYIGhhcyBtYW55IGRpZmZlcmluZyBjYXJkcyAuLi4qLwogCXsg MHgxNDA5LCAweDcxNjgsIDB4MTQwOSwgMHg0MDc4LCAwLCAwLCB0aW1lZGlhXzQwNzhhIH0sCiAJ eyAweDE0MDksIDB4NzE2OCwgMHgxNDA5LCAweDQwNzksIDAsIDAsIHRpbWVkaWFfNDA3OWggfSwK QEAgLTI2NiwxOCArNDcyLDE5IEBAIHN0YXRpYyBzdHJ1Y3QgcGNpX2RldmljZV9pZCBwYXJwb3J0 X3NlcmlhbF9wY2lfdGJsW10gPSB7CiAJeyAweDE0MDksIDB4NzE2OCwgMHgxNDA5LCAweGQwNzks IDAsIDAsIHRpbWVkaWFfOTA3OWMgfSwKIAogCS8qIFdDSCBDQVJEUyAqLwotCXsgUENJX1ZFTkRP Ul9JRF9XQ0hDTiwgUENJX0RFVklDRV9JRF9XQ0hDTl9DSDM1M18xUzFQLAotCSAgUENJX0FOWV9J RCwgUENJX0FOWV9JRCwgMCwgMCwgd2NoX2NoMzUzXzFzMXAgfSwKLQl7IFBDSV9WRU5ET1JfSURf V0NIQ04sIFBDSV9ERVZJQ0VfSURfV0NIQ05fQ0gzNTNfMlMxUCwKLQkgIDB4NDM0OCwgMHgzMjUz LCAwLCAwLCB3Y2hfY2gzNTNfMnMxcCB9LAotCXsgUENJX1ZFTkRPUl9JRF9XQ0hJQywgUENJX0RF VklDRV9JRF9XQ0hJQ19DSDM4Ml8wUzFQLAotCSAgMHgxYzAwLCAweDMwNTAsIDAsIDAsIHdjaF9j aDM4Ml8wczFwIH0sCi0JeyBQQ0lfVkVORE9SX0lEX1dDSElDLCBQQ0lfREVWSUNFX0lEX1dDSElD X0NIMzgyXzJTMVAsCi0JICAweDFjMDAsIDB4MzI1MCwgMCwgMCwgd2NoX2NoMzgyXzJzMXAgfSwK Kwl7IFBDSV9WRU5ET1JfSURfV0NIQ04sIFBDSV9ERVZJQ0VfSURfV0NIQ05fQ0gzNTNfMVMxUCwg UENJX0FOWV9JRCwKKwkgIFBDSV9BTllfSUQsIDAsIDAsIHdjaF9jaDM1M18xczFwIH0sCisJeyBQ Q0lfVkVORE9SX0lEX1dDSENOLCBQQ0lfREVWSUNFX0lEX1dDSENOX0NIMzUzXzJTMVAsIDB4NDM0 OCwgMHgzMjUzLAorCSAgMCwgMCwgd2NoX2NoMzUzXzJzMXAgfSwKKwl7IFBDSV9WRU5ET1JfSURf V0NISUMsIFBDSV9ERVZJQ0VfSURfV0NISUNfQ0gzODJfMFMxUCwgMHgxYzAwLCAweDMwNTAsCisJ ICAwLCAwLCB3Y2hfY2gzODJfMHMxcCB9LAorCXsgUENJX1ZFTkRPUl9JRF9XQ0hJQywgUENJX0RF VklDRV9JRF9XQ0hJQ19DSDM4Ml8yUzFQLCAweDFjMDAsIDB4MzI1MCwKKwkgIDAsIDAsIHdjaF9j aDM4Ml8yczFwIH0sCisJeyAweDFjMDAsIDB4MzQ1MCwgMHgxYzAwLCAweDM0NTAsIDAsIDAsIHdj aF9jaDM4NF80czFwIH0sCiAKIAkvKiBCcmFpbkJveGVzIFBYMjcyL1BYMzA2IE1JTyBjYXJkICov Ci0JeyBQQ0lfVkVORE9SX0lEX0lOVEFTSElFTEQsIDB4NDEwMCwKLQkgIFBDSV9BTllfSUQsIFBD SV9BTllfSUQsIDAsIDAsIGJyYWluYm94ZXNfNXMxcCB9LAorCXsgUENJX1ZFTkRPUl9JRF9JTlRB U0hJRUxELCAweDQxMDAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsCisJICBicmFpbmJv eGVzXzVzMXAgfSwKIAogCS8qIFN1bml4IGJvYXJkcyAqLwogCXsgUENJX1ZFTkRPUl9JRF9TVU5J WCwgUENJX0RFVklDRV9JRF9TVU5JWF8xOTk5LCBQQ0lfVkVORE9SX0lEX1NVTklYLApAQCAtMjkw LDQwICs0OTcsNDIgQEAgc3RhdGljIHN0cnVjdCBwY2lfZGV2aWNlX2lkIHBhcnBvcnRfc2VyaWFs X3BjaV90YmxbXSA9IHsKIAkgIDB4MDEwNCwgMCwgMCwgc3VuaXhfNTA5OWEgfSwKIAogCS8qIEJy YWluYm94ZXMgVUMtMjAzICovCi0JeyBQQ0lfVkVORE9SX0lEX0lOVEFTSElFTEQsIDB4MGJjMSwK LQkgIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsIGJyYWluYm94ZXNfdWMyNTcgfSwKLQl7 IFBDSV9WRU5ET1JfSURfSU5UQVNISUVMRCwgMHgwYmMyLAotCSAgUENJX0FOWV9JRCwgUENJX0FO WV9JRCwgMCwgMCwgYnJhaW5ib3hlc191YzI1NyB9LAorCXsgUENJX1ZFTkRPUl9JRF9JTlRBU0hJ RUxELCAweDBiYzEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsCisJICBicmFpbmJveGVz X3VjMjU3IH0sCisJeyBQQ0lfVkVORE9SX0lEX0lOVEFTSElFTEQsIDB4MGJjMiwgUENJX0FOWV9J RCwgUENJX0FOWV9JRCwgMCwgMCwKKwkgIGJyYWluYm94ZXNfdWMyNTcgfSwKIAogCS8qIEJyYWlu Ym94ZXMgVUMtMjU3ICovCi0JeyBQQ0lfVkVORE9SX0lEX0lOVEFTSElFTEQsIDB4MDg2MSwKLQkg IFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsIGJyYWluYm94ZXNfdWMyNTcgfSwKLQl7IFBD SV9WRU5ET1JfSURfSU5UQVNISUVMRCwgMHgwODYyLAotCSAgUENJX0FOWV9JRCwgUENJX0FOWV9J RCwgMCwgMCwgYnJhaW5ib3hlc191YzI1NyB9LAotCXsgUENJX1ZFTkRPUl9JRF9JTlRBU0hJRUxE LCAweDA4NjMsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBicmFpbmJveGVzX3Vj MjU3IH0sCisJeyBQQ0lfVkVORE9SX0lEX0lOVEFTSElFTEQsIDB4MDg2MSwgUENJX0FOWV9JRCwg UENJX0FOWV9JRCwgMCwgMCwKKwkgIGJyYWluYm94ZXNfdWMyNTcgfSwKKwl7IFBDSV9WRU5ET1Jf SURfSU5UQVNISUVMRCwgMHgwODYyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLAorCSAg YnJhaW5ib3hlc191YzI1NyB9LAorCXsgUENJX1ZFTkRPUl9JRF9JTlRBU0hJRUxELCAweDA4NjMs IFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsCisJICBicmFpbmJveGVzX3VjMjU3IH0sCiAK IAkvKiBCcmFpbmJveGVzIFVDLTQxNCAqLwotCXsgUENJX1ZFTkRPUl9JRF9JTlRBU0hJRUxELCAw eDBlNjEsCi0JICBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBicmFpbmJveGVzX3VjNDE0 IH0sCisJeyBQQ0lfVkVORE9SX0lEX0lOVEFTSElFTEQsIDB4MGU2MSwgUENJX0FOWV9JRCwgUENJ X0FOWV9JRCwgMCwgMCwKKwkgIGJyYWluYm94ZXNfdWM0MTQgfSwKIAogCS8qIEJyYWluYm94ZXMg VUMtNDc1ICovCi0JeyBQQ0lfVkVORE9SX0lEX0lOVEFTSElFTEQsIDB4MDk4MSwKLQkgIFBDSV9B TllfSUQsIFBDSV9BTllfSUQsIDAsIDAsIGJyYWluYm94ZXNfdWMyNTcgfSwKLQl7IFBDSV9WRU5E T1JfSURfSU5UQVNISUVMRCwgMHgwOTgyLAotCSAgUENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwg MCwgYnJhaW5ib3hlc191YzI1NyB9LAorCXsgUENJX1ZFTkRPUl9JRF9JTlRBU0hJRUxELCAweDA5 ODEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQsIDAsIDAsCisJICBicmFpbmJveGVzX3VjMjU3IH0s CisJeyBQQ0lfVkVORE9SX0lEX0lOVEFTSElFTEQsIDB4MDk4MiwgUENJX0FOWV9JRCwgUENJX0FO WV9JRCwgMCwgMCwKKwkgIGJyYWluYm94ZXNfdWMyNTcgfSwKIAogCS8qIEJyYWluYm94ZXMgSVMt MzAwL0lTLTUwMCAqLwotCXsgUENJX1ZFTkRPUl9JRF9JTlRBU0hJRUxELCAweDBkYTAsCi0JICBQ Q0lfQU5ZX0lELCBQQ0lfQU5ZX0lELCAwLCAwLCBicmFpbmJveGVzX2lzMzAwIH0sCisJeyBQQ0lf VkVORE9SX0lEX0lOVEFTSElFTEQsIDB4MGRhMCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwg MCwKKwkgIGJyYWluYm94ZXNfaXMzMDAgfSwKIAogCS8qIEJyYWluYm94ZXMgUFgtMjYzL1BYLTI5 NSAqLwotCXsgUENJX1ZFTkRPUl9JRF9JTlRBU0hJRUxELCAweDQwMmMsCi0JICBQQ0lfQU5ZX0lE LCBQQ0lfQU5ZX0lELCAwLCAwLCBicmFpbmJveGVzX3B4MjYzIH0sCisJeyBQQ0lfVkVORE9SX0lE X0lOVEFTSElFTEQsIDB4NDAyYywgUENJX0FOWV9JRCwgUENJX0FOWV9JRCwgMCwgMCwKKwkgIGJy YWluYm94ZXNfcHgyNjMgfSwKIAotCXsgMCwgfSAvKiB0ZXJtaW5hdGUgbGlzdCAqLworCXsKKwkJ MCwKKwl9IC8qIHRlcm1pbmF0ZSBsaXN0ICovCiB9OwotTU9EVUxFX0RFVklDRV9UQUJMRShwY2ks cGFycG9ydF9zZXJpYWxfcGNpX3RibCk7CitNT0RVTEVfREVWSUNFX1RBQkxFKHBjaSwgcGFycG9y dF9zZXJpYWxfcGNpX3RibCk7CiAKIC8qCiAgKiBUaGlzIHRhYmxlIGRlc2NyaWJlcyB0aGUgc2Vy aWFsICJnZW9tZXRyeSIgb2YgdGhlc2UgYm9hcmRzLiAgQW55CkBAIC01MzgsMjkgKzc0NywzMiBA QCBzdGF0aWMgc3RydWN0IHBjaXNlcmlhbF9ib2FyZCBwY2lfcGFycG9ydF9zZXJpYWxfYm9hcmRz W10gPSB7CiAJCS51YXJ0X29mZnNldAk9IDgsCiAJfSwKIAlbd2NoX2NoMzUzXzFzMXBdID0gewot CQkuZmxhZ3MgICAgICAgICAgPSBGTF9CQVNFMHxGTF9CQVNFX0JBUlMsCi0JCS5udW1fcG9ydHMg ICAgICA9IDEsCi0JCS5iYXNlX2JhdWQgICAgICA9IDExNTIwMCwKLQkJLnVhcnRfb2Zmc2V0ICAg ID0gOCwKKwkJLy8gLmZsYWdzICAgICAgICAgID0gRkxfQkFTRTB8RkxfQkFTRV9CQVJTLAorCQku bnVtX3BvcnRzICAgICAgPSAwLAorCQkvLyAuYmFzZV9iYXVkICAgICAgPSAxMTUyMDAsCisJCS8v IC51YXJ0X29mZnNldCAgICA9IDgsCiAJfSwKIAlbd2NoX2NoMzUzXzJzMXBdID0gewotCQkuZmxh Z3MgICAgICAgICAgPSBGTF9CQVNFMHxGTF9CQVNFX0JBUlMsCi0JCS5udW1fcG9ydHMgICAgICA9 IDIsCi0JCS5iYXNlX2JhdWQgICAgICA9IDExNTIwMCwKLQkJLnVhcnRfb2Zmc2V0ICAgID0gOCwK KwkJLy8gLmZsYWdzICAgICAgICAgID0gRkxfQkFTRTB8RkxfQkFTRV9CQVJTLAorCQkubnVtX3Bv cnRzICAgICAgPSAwLAorCQkvLyAuYmFzZV9iYXVkICAgICAgPSAxMTUyMDAsCisJCS8vIC51YXJ0 X29mZnNldCAgICA9IDgsCiAJfSwKIAlbd2NoX2NoMzgyXzBzMXBdID0gewotCQkuZmxhZ3MgICAg ICAgICAgPSBGTF9CQVNFMCwKKwkJLy8gLmZsYWdzICAgICAgICAgID0gRkxfQkFTRTAsCiAJCS5u dW1fcG9ydHMgICAgICA9IDAsCi0JCS5iYXNlX2JhdWQgICAgICA9IDExNTIwMCwKLQkJLnVhcnRf b2Zmc2V0ICAgID0gOCwKKwkJLy8gLmJhc2VfYmF1ZCAgICAgID0gMTE1MjAwLAorCQkvLyAudWFy dF9vZmZzZXQgICAgPSA4LAogCX0sCiAJW3djaF9jaDM4Ml8yczFwXSA9IHsKLQkJLmZsYWdzICAg ICAgICAgID0gRkxfQkFTRTAsCi0JCS5udW1fcG9ydHMgICAgICA9IDIsCi0JCS5iYXNlX2JhdWQg ICAgICA9IDExNTIwMCwKLQkJLnVhcnRfb2Zmc2V0ICAgID0gOCwKLQkJLmZpcnN0X29mZnNldCAg ID0gMHhDMCwKKwkJLy8gLmZsYWdzICAgICAgICAgID0gRkxfQkFTRTAsCisJCS5udW1fcG9ydHMg ICAgICA9IDAsCisJCS8vIC5iYXNlX2JhdWQgICAgICA9IDExNTIwMCwKKwkJLy8gLnVhcnRfb2Zm c2V0ICAgID0gOCwKKwkJLy8gLmZpcnN0X29mZnNldCAgID0gMHhDMCwKKwl9LAorCVt3Y2hfY2gz ODRfNHMxcF0gPSB7CisJCS5udW1fcG9ydHMgICAgICA9IDAsCiAJfSwKIAlbYnJhaW5ib3hlc181 czFwXSA9IHsKIAkJLmZsYWdzCQk9IEZMX0JBU0UyLApAQCAtNjEzLDcgKzgyNSw3IEBAIHN0YXRp YyBzdHJ1Y3QgcGNpc2VyaWFsX2JvYXJkIHBjaV9wYXJwb3J0X3NlcmlhbF9ib2FyZHNbXSA9IHsK IH07CiAKIHN0cnVjdCBwYXJwb3J0X3NlcmlhbF9wcml2YXRlIHsKLQlzdHJ1Y3Qgc2VyaWFsX3By aXZhdGUJKnNlcmlhbDsKKwlzdHJ1Y3Qgc2VyaWFsX3ByaXZhdGUgKnNlcmlhbDsKIAlpbnQgbnVt X3BhcjsKIAlzdHJ1Y3QgcGFycG9ydCAqcG9ydFtQQVJQT1JUX01BWF07CiAJc3RydWN0IHBhcnBv cnRfcGNfcGNpIHBhcjsKQEAgLTYyMiw3ICs4MzQsNyBAQCBzdHJ1Y3QgcGFycG9ydF9zZXJpYWxf cHJpdmF0ZSB7CiAvKiBSZWdpc3RlciB0aGUgc2VyaWFsIHBvcnQocykgb2YgYSBQQ0kgY2FyZC4g Ki8KIHN0YXRpYyBpbnQgc2VyaWFsX3JlZ2lzdGVyKHN0cnVjdCBwY2lfZGV2ICpkZXYsIGNvbnN0 IHN0cnVjdCBwY2lfZGV2aWNlX2lkICppZCkKIHsKLQlzdHJ1Y3QgcGFycG9ydF9zZXJpYWxfcHJp dmF0ZSAqcHJpdiA9IHBjaV9nZXRfZHJ2ZGF0YSAoZGV2KTsKKwlzdHJ1Y3QgcGFycG9ydF9zZXJp YWxfcHJpdmF0ZSAqcHJpdiA9IHBjaV9nZXRfZHJ2ZGF0YShkZXYpOwogCXN0cnVjdCBwY2lzZXJp YWxfYm9hcmQgKmJvYXJkOwogCXN0cnVjdCBzZXJpYWxfcHJpdmF0ZSAqc2VyaWFsOwogCkBAIC02 NDIsMTMgKzg1NCwxMyBAQCBzdGF0aWMgaW50IHNlcmlhbF9yZWdpc3RlcihzdHJ1Y3QgcGNpX2Rl diAqZGV2LCBjb25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCAqaWQpCiBzdGF0aWMgaW50IHBhcnBv cnRfcmVnaXN0ZXIoc3RydWN0IHBjaV9kZXYgKmRldiwgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2Vf aWQgKmlkKQogewogCXN0cnVjdCBwYXJwb3J0X3BjX3BjaSAqY2FyZDsKLQlzdHJ1Y3QgcGFycG9y dF9zZXJpYWxfcHJpdmF0ZSAqcHJpdiA9IHBjaV9nZXRfZHJ2ZGF0YSAoZGV2KTsKKwlzdHJ1Y3Qg cGFycG9ydF9zZXJpYWxfcHJpdmF0ZSAqcHJpdiA9IHBjaV9nZXRfZHJ2ZGF0YShkZXYpOwogCWlu dCBuLCBzdWNjZXNzID0gMDsKIAogCXByaXYtPnBhciA9IGNhcmRzW2lkLT5kcml2ZXJfZGF0YV07 CiAJY2FyZCA9ICZwcml2LT5wYXI7CiAJaWYgKGNhcmQtPnByZWluaXRfaG9vayAmJgotCSAgICBj YXJkLT5wcmVpbml0X2hvb2sgKGRldiwgY2FyZCwgUEFSUE9SVF9JUlFfTk9ORSwgUEFSUE9SVF9E TUFfTk9ORSkpCisJICAgIGNhcmQtPnByZWluaXRfaG9vayhkZXYsIGNhcmQsIFBBUlBPUlRfSVJR X05PTkUsIFBBUlBPUlRfRE1BX05PTkUpKQogCQlyZXR1cm4gLUVOT0RFVjsKIAogCWZvciAobiA9 IDA7IG4gPCBjYXJkLT5udW1wb3J0czsgbisrKSB7CkBAIC02NTgsMjMgKzg3MCwyNyBAQCBzdGF0 aWMgaW50IHBhcnBvcnRfcmVnaXN0ZXIoc3RydWN0IHBjaV9kZXYgKmRldiwgY29uc3Qgc3RydWN0 IHBjaV9kZXZpY2VfaWQgKmlkKQogCQl1bnNpZ25lZCBsb25nIGlvX2xvLCBpb19oaTsKIAkJaW50 IGlycTsKIAotCQlpZiAocHJpdi0+bnVtX3BhciA9PSBBUlJBWV9TSVpFIChwcml2LT5wb3J0KSkg ewotCQkJZGV2X3dhcm4oJmRldi0+ZGV2LAotCQkJCSAib25seSAlenUgcGFyYWxsZWwgcG9ydHMg c3VwcG9ydGVkICglZCByZXBvcnRlZClcbiIsCi0JCQkJIEFSUkFZX1NJWkUocHJpdi0+cG9ydCks IGNhcmQtPm51bXBvcnRzKTsKKwkJaWYgKHByaXYtPm51bV9wYXIgPT0gQVJSQVlfU0laRShwcml2 LT5wb3J0KSkgeworCQkJZGV2X3dhcm4oCisJCQkJJmRldi0+ZGV2LAorCQkJCSJvbmx5ICV6dSBw YXJhbGxlbCBwb3J0cyBzdXBwb3J0ZWQgKCVkIHJlcG9ydGVkKVxuIiwKKwkJCQlBUlJBWV9TSVpF KHByaXYtPnBvcnQpLCBjYXJkLT5udW1wb3J0cyk7CiAJCQlicmVhazsKIAkJfQogCi0JCWlvX2xv ID0gcGNpX3Jlc291cmNlX3N0YXJ0IChkZXYsIGxvKTsKKwkJaW9fbG8gPSBwY2lfcmVzb3VyY2Vf c3RhcnQoZGV2LCBsbyk7CiAJCWlvX2hpID0gMDsKIAkJaWYgKChoaSA+PSAwKSAmJiAoaGkgPD0g NikpCi0JCQlpb19oaSA9IHBjaV9yZXNvdXJjZV9zdGFydCAoZGV2LCBoaSk7CisJCQlpb19oaSA9 IHBjaV9yZXNvdXJjZV9zdGFydChkZXYsIGhpKTsKIAkJZWxzZSBpZiAoaGkgPiA2KQogCQkJaW9f bG8gKz0gaGk7IC8qIFJlaW50ZXJwcmV0IHRoZSBtZWFuaW5nIG9mCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgImhpIiBhcyBhbiBvZmZzZXQgKHNlZSBTWUJBCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmLikgKi8KIAkJLyogVE9ETzog dGVzdCBpZiBzaGFyaW5nIGludGVycnVwdHMgd29ya3MgKi8KLQkJaXJxID0gcGNpX2lycV92ZWN0 b3IoZGV2LCAwKTsKKwkJaWYgKGlkLT52ZW5kb3IgPT0gMHgxYzAwIHx8IGlkLT52ZW5kb3IgPT0g MHg0MzQ4KQorCQkJaXJxID0gUEFSUE9SVF9JUlFfTk9ORTsKKwkJZWxzZQorCQkJaXJxID0gcGNp X2lycV92ZWN0b3IoZGV2LCAwKTsKIAkJaWYgKGlycSA8IDApCiAJCQlyZXR1cm4gaXJxOwogCQlp ZiAoaXJxID09IDApCkBAIC02ODgsOCArOTA0LDkgQEAgc3RhdGljIGludCBwYXJwb3J0X3JlZ2lz dGVyKHN0cnVjdCBwY2lfZGV2ICpkZXYsIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkICppZCkK IAkJCQkiUENJIHBhcmFsbGVsIHBvcnQgZGV0ZWN0ZWQ6IEkvTyBhdCAlI2x4KCUjbHgpLCBJUlEg JWRcbiIsCiAJCQkJaW9fbG8sIGlvX2hpLCBpcnEpOwogCQl9Ci0JCXBvcnQgPSBwYXJwb3J0X3Bj X3Byb2JlX3BvcnQgKGlvX2xvLCBpb19oaSwgaXJxLAotCQkJICAgICAgUEFSUE9SVF9ETUFfTk9O RSwgJmRldi0+ZGV2LCBJUlFGX1NIQVJFRCk7CisJCXBvcnQgPSBwYXJwb3J0X3BjX3Byb2JlX3Bv cnQoaW9fbG8sIGlvX2hpLCBpcnEsCisJCQkJCSAgICAgUEFSUE9SVF9ETUFfTk9ORSwgJmRldi0+ ZGV2LAorCQkJCQkgICAgIElSUUZfU0hBUkVEKTsKIAkJaWYgKHBvcnQpIHsKIAkJCXByaXYtPnBv cnRbcHJpdi0+bnVtX3BhcisrXSA9IHBvcnQ7CiAJCQlzdWNjZXNzID0gMTsKQEAgLTY5Nyw3ICs5 MTQsNyBAQCBzdGF0aWMgaW50IHBhcnBvcnRfcmVnaXN0ZXIoc3RydWN0IHBjaV9kZXYgKmRldiwg Y29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgKmlkKQogCX0KIAogCWlmIChjYXJkLT5wb3N0aW5p dF9ob29rKQotCQljYXJkLT5wb3N0aW5pdF9ob29rIChkZXYsIGNhcmQsICFzdWNjZXNzKTsKKwkJ Y2FyZC0+cG9zdGluaXRfaG9vayhkZXYsIGNhcmQsICFzdWNjZXNzKTsKIAogCXJldHVybiAwOwog fQpAQCAtNzEyLDcgKzkyOSw3IEBAIHN0YXRpYyBpbnQgcGFycG9ydF9zZXJpYWxfcGNpX3Byb2Jl KHN0cnVjdCBwY2lfZGV2ICpkZXYsCiAJaWYgKCFwcml2KQogCQlyZXR1cm4gLUVOT01FTTsKIAot CXBjaV9zZXRfZHJ2ZGF0YSAoZGV2LCBwcml2KTsKKwlwY2lfc2V0X2RydmRhdGEoZGV2LCBwcml2 KTsKIAogCWVyciA9IHBjaW1fZW5hYmxlX2RldmljZShkZXYpOwogCWlmIChlcnIpCkBAIC03MjYs NyArOTQzLDcgQEAgc3RhdGljIGludCBwYXJwb3J0X3NlcmlhbF9wY2lfcHJvYmUoc3RydWN0IHBj aV9kZXYgKmRldiwKIAlpZiAoZXJyKSB7CiAJCWludCBpOwogCQlmb3IgKGkgPSAwOyBpIDwgcHJp di0+bnVtX3BhcjsgaSsrKQotCQkJcGFycG9ydF9wY191bnJlZ2lzdGVyX3BvcnQgKHByaXYtPnBv cnRbaV0pOworCQkJcGFycG9ydF9wY191bnJlZ2lzdGVyX3BvcnQocHJpdi0+cG9ydFtpXSk7CiAJ CXJldHVybiBlcnI7CiAJfQogCkBAIC03MzUsNyArOTUyLDcgQEAgc3RhdGljIGludCBwYXJwb3J0 X3NlcmlhbF9wY2lfcHJvYmUoc3RydWN0IHBjaV9kZXYgKmRldiwKIAogc3RhdGljIHZvaWQgcGFy cG9ydF9zZXJpYWxfcGNpX3JlbW92ZShzdHJ1Y3QgcGNpX2RldiAqZGV2KQogewotCXN0cnVjdCBw YXJwb3J0X3NlcmlhbF9wcml2YXRlICpwcml2ID0gcGNpX2dldF9kcnZkYXRhIChkZXYpOworCXN0 cnVjdCBwYXJwb3J0X3NlcmlhbF9wcml2YXRlICpwcml2ID0gcGNpX2dldF9kcnZkYXRhKGRldik7 CiAJaW50IGk7CiAKIAkvLyBTZXJpYWwgcG9ydHMKQEAgLTc0NCw3ICs5NjEsNyBAQCBzdGF0aWMg dm9pZCBwYXJwb3J0X3NlcmlhbF9wY2lfcmVtb3ZlKHN0cnVjdCBwY2lfZGV2ICpkZXYpCiAKIAkv LyBQYXJhbGxlbCBwb3J0cwogCWZvciAoaSA9IDA7IGkgPCBwcml2LT5udW1fcGFyOyBpKyspCi0J CXBhcnBvcnRfcGNfdW5yZWdpc3Rlcl9wb3J0IChwcml2LT5wb3J0W2ldKTsKKwkJcGFycG9ydF9w Y191bnJlZ2lzdGVyX3BvcnQocHJpdi0+cG9ydFtpXSk7CiAKIAlyZXR1cm47CiB9CkBAIC03NzEs OCArOTg4LDggQEAgc3RhdGljIGludCBfX21heWJlX3VudXNlZCBwYXJwb3J0X3NlcmlhbF9wY2lf cmVzdW1lKHN0cnVjdCBkZXZpY2UgKmRldikKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIFNJTVBM RV9ERVZfUE1fT1BTKHBhcnBvcnRfc2VyaWFsX3BtX29wcywKLQkJCSBwYXJwb3J0X3NlcmlhbF9w Y2lfc3VzcGVuZCwgcGFycG9ydF9zZXJpYWxfcGNpX3Jlc3VtZSk7CitzdGF0aWMgU0lNUExFX0RF Vl9QTV9PUFMocGFycG9ydF9zZXJpYWxfcG1fb3BzLCBwYXJwb3J0X3NlcmlhbF9wY2lfc3VzcGVu ZCwKKwkJCSBwYXJwb3J0X3NlcmlhbF9wY2lfcmVzdW1lKTsKIAogc3RhdGljIHN0cnVjdCBwY2lf ZHJpdmVyIHBhcnBvcnRfc2VyaWFsX3BjaV9kcml2ZXIgPSB7CiAJLm5hbWUJCT0gInBhcnBvcnRf c2VyaWFsIiwKLS0gCjIuMzQuMQoK --000000000000bdf00a0650810a42--