<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>77993</bug_id>
          
          <creation_ts>2012-02-07 08:36:54 -0800</creation_ts>
          <short_desc>[BlackBerry] Upstream BlackBerry WebCoreSupport DeviceOrientationClientBlackBerry and DeviceMotionClientBlackBerry classes</short_desc>
          <delta_ts>2012-02-07 12:40:30 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>73144</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jacky Jiang">jkjiang</reporter>
          <assigned_to name="Jacky Jiang">jkjiang</assigned_to>
          <cc>dbates</cc>
    
    <cc>rwlbuis</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>551016</commentid>
    <comment_count>0</comment_count>
    <who name="Jacky Jiang">jkjiang</who>
    <bug_when>2012-02-07 08:36:54 -0800</bug_when>
    <thetext>Upstream BlackBerry WebCoreSupport DeviceOrientationClientBlackBerry and DeviceMotionClientBlackBerry classes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551032</commentid>
    <comment_count>1</comment_count>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-02-07 08:56:03 -0800</bug_when>
    <thetext>Assign to Jacky.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551045</commentid>
    <comment_count>2</comment_count>
      <attachid>125857</attachid>
    <who name="Jacky Jiang">jkjiang</who>
    <bug_when>2012-02-07 09:08:35 -0800</bug_when>
    <thetext>Created attachment 125857
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551112</commentid>
    <comment_count>3</comment_count>
      <attachid>125857</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-02-07 10:36:29 -0800</bug_when>
    <thetext>Comment on attachment 125857
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=125857&amp;action=review

I think this can be cleaned up a bit more.

&gt; Source/WebKit/blackberry/WebCoreSupport/DeviceMotionClientBlackBerry.cpp:24
&gt; +#include &quot;Page.h&quot;

You don&apos;t need this include.

&gt; Source/WebKit/blackberry/WebCoreSupport/DeviceMotionClientBlackBerry.h:25
&gt; +#include &lt;BlackBerryPlatformDeviceMotionTracker.h&gt;

You don&apos;t need this include, a forward class reference is enough.

&gt; Source/WebKit/blackberry/WebCoreSupport/DeviceOrientationClientBlackBerry.cpp:23
&gt; +#include &quot;Page.h&quot;

You don&apos;t need this include.

&gt; Source/WebKit/blackberry/WebCoreSupport/DeviceOrientationClientBlackBerry.h:25
&gt; +#include &lt;BlackBerryPlatformDeviceOrientationTracker.h&gt;

You don&apos;t need to include this, a forward reference should be ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551196</commentid>
    <comment_count>4</comment_count>
      <attachid>125890</attachid>
    <who name="Jacky Jiang">jkjiang</who>
    <bug_when>2012-02-07 11:50:04 -0800</bug_when>
    <thetext>Created attachment 125890
Patch

Updated the patch based on Rob&apos;s comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551208</commentid>
    <comment_count>5</comment_count>
      <attachid>125890</attachid>
    <who name="Rob Buis">rwlbuis</who>
    <bug_when>2012-02-07 11:59:04 -0800</bug_when>
    <thetext>Comment on attachment 125890
Patch

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551250</commentid>
    <comment_count>6</comment_count>
      <attachid>125890</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-07 12:40:24 -0800</bug_when>
    <thetext>Comment on attachment 125890
Patch

Clearing flags on attachment: 125890

Committed r106976: &lt;http://trac.webkit.org/changeset/106976&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>551251</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-07 12:40:30 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125857</attachid>
            <date>2012-02-07 09:08:35 -0800</date>
            <delta_ts>2012-02-07 11:49:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77993-20120207070830.patch</filename>
            <type>text/plain</type>
            <size>11854</size>
            <attacher name="Jacky Jiang">jkjiang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2OTQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDQ4NjE2MjNiNWYzMjA4NDc2
ZGNmMzE2N2RhYmI1NTA0N2M4OTc2OWUuLjA0ZGMzZTBlMTgwMTdhODlhMDgwZDY1OTM4YWFkNzVk
YWZjZjY2ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMDItMDcgIEphY2t5IEpp
YW5nICA8emhhamlhbmdAcmltLmNvbT4KKworICAgICAgICBbQmxhY2tCZXJyeV0gVXBzdHJlYW0g
QmxhY2tCZXJyeSBXZWJDb3JlU3VwcG9ydCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVy
cnkgYW5kIERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkgY2xhc3NlcworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzc5OTMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbml0aWFsIHVwc3RyZWFtLCBubyBu
ZXcgdGVzdHMuCisKKyAgICAgICAgKiBibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU1v
dGlvbkNsaWVudEJsYWNrQmVycnkuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBibGFja2JlcnJ5L1dl
YkNvcmVTdXBwb3J0L0RldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkuaDogQWRkZWQuCisgICAg
ICAgICogYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJs
YWNrQmVycnkuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oOiBBZGRlZC4KKwogMjAxMi0wMi0w
NiAgTGVvIFlhbmcgIDxsZW8ueWFuZ0B0b3JjaG1vYmlsZS5jb20uY24+CiAKICAgICAgICAgW0Js
YWNrQmVycnldIFVzZSBXZWJQYWdlUHJpdmF0ZSBpbnN0ZWFkIG9mIFdlYlBhZ2UgaW4gR2VvbG9j
YXRpb25Db250cm9sbGVyQ2xpZW50QmxhY2tCZXJyeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnku
Y3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU1vdGlv
bkNsaWVudEJsYWNrQmVycnkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjQ0ODAzODJmMzZmZWRkNzJhZmFmNTVl
NWNlZmY1ZjkxYTMxODdjYTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNr
YmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeS5jcHAKQEAg
LTAsMCArMSw4NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCwgMjAxMSwgMjAxMiBSZXNl
YXJjaCBJbiBNb3Rpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlz
IGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
CisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwg
UHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJp
YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VU
IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBN
RVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUg
dGhlIEdOVQorICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls
cy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVz
c2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBp
ZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1
MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBV
U0EKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRGV2aWNlTW90aW9uQ2xp
ZW50QmxhY2tCZXJyeS5oIgorCisjaW5jbHVkZSAiRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIgor
I2luY2x1ZGUgIkRldmljZU1vdGlvbkRhdGEuaCIKKyNpbmNsdWRlICJQYWdlLmgiCisjaW5jbHVk
ZSAiV2ViUGFnZV9wLmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOworCitEZXZpY2VNb3Rp
b25DbGllbnRCbGFja0JlcnJ5OjpEZXZpY2VNb3Rpb25DbGllbnRCbGFja0JlcnJ5KEJsYWNrQmVy
cnk6OldlYktpdDo6V2ViUGFnZVByaXZhdGUqIHdlYlBhZ2VQcml2YXRlKQorICAgIDogbV93ZWJQ
YWdlUHJpdmF0ZSh3ZWJQYWdlUHJpdmF0ZSkKKyAgICAsIG1fdHJhY2tlcigwKQorICAgICwgbV9j
b250cm9sbGVyKDApCisgICAgLCBtX2xhc3RFdmVudFRpbWUoMCkKK3sKK30KKworRGV2aWNlTW90
aW9uQ2xpZW50QmxhY2tCZXJyeTo6fkRldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkoKQorewor
ICAgIGlmIChtX3RyYWNrZXIpCisgICAgICAgIG1fdHJhY2tlci0+ZGVzdHJveSgpOworfQorCit2
b2lkIERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnk6OnNldENvbnRyb2xsZXIoRGV2aWNlTW90
aW9uQ29udHJvbGxlciogY29udHJvbGxlcikKK3sKKyAgICBtX2NvbnRyb2xsZXIgPSBjb250cm9s
bGVyOworfQorCit2b2lkIERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnk6OmRldmljZU1vdGlv
bkNvbnRyb2xsZXJEZXN0cm95ZWQoKQoreworICAgIGRlbGV0ZSB0aGlzOworfQorCit2b2lkIERl
dmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnk6OnN0YXJ0VXBkYXRpbmcoKQoreworICAgIGlmICht
X3RyYWNrZXIpCisgICAgICAgIG1fdHJhY2tlci0+cmVzdW1lKCk7CisgICAgZWxzZQorICAgICAg
ICBtX3RyYWNrZXIgPSBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGV2aWNlTW90aW9uVHJhY2tlcjo6
Y3JlYXRlKHRoaXMpOworfQorCit2b2lkIERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnk6OnN0
b3BVcGRhdGluZygpCit7CisgICAgaWYgKG1fdHJhY2tlcikKKyAgICAgICAgbV90cmFja2VyLT5z
dXNwZW5kKCk7Cit9CisKK0RldmljZU1vdGlvbkRhdGEqIERldmljZU1vdGlvbkNsaWVudEJsYWNr
QmVycnk6OmN1cnJlbnREZXZpY2VNb3Rpb24oKSBjb25zdAoreworICAgIHJldHVybiBtX2N1cnJl
bnRNb3Rpb24uZ2V0KCk7Cit9CisKK3ZvaWQgRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeTo6
b25Nb3Rpb24oY29uc3QgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkRldmljZU1vdGlvbkV2ZW50KiBl
dmVudCkKK3sKKyAgICBSZWZQdHI8RGV2aWNlTW90aW9uRGF0YTo6QWNjZWxlcmF0aW9uPiBhY2Nl
bCA9IERldmljZU1vdGlvbkRhdGE6OkFjY2VsZXJhdGlvbjo6Y3JlYXRlKAorICAgICAgICAgICAg
dHJ1ZSwgZXZlbnQtPngsIHRydWUsIGV2ZW50LT55LCB0cnVlLCBldmVudC0+eik7CisKKyAgICBk
b3VibGUgbm93ID0gV1RGOjpjdXJyZW50VGltZU1TKCk7CisgICAgbV9jdXJyZW50TW90aW9uID0g
RGV2aWNlTW90aW9uRGF0YTo6Y3JlYXRlKDAsIGFjY2VsLCAwLCBtX2xhc3RFdmVudFRpbWUsIG1f
bGFzdEV2ZW50VGltZSAtIG5vdyk7CisgICAgbV9sYXN0RXZlbnRUaW1lID0gbm93OworCisgICAg
aWYgKCFtX2NvbnRyb2xsZXIpCisgICAgICAgIHJldHVybjsKKworICAgIG1fY29udHJvbGxlci0+
ZGlkQ2hhbmdlRGV2aWNlTW90aW9uKGN1cnJlbnREZXZpY2VNb3Rpb24oKSk7Cit9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlTW90aW9u
Q2xpZW50QmxhY2tCZXJyeS5oIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBw
b3J0L0RldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41OWE5YjhjYWEz
OTk2YzgzYzgyMzg5OWQwZTk0MDQ2MjdkZGYwMDY2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU1vdGlvbkNsaWVudEJsYWNr
QmVycnkuaApAQCAtMCwwICsxLDU3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwLCAyMDEx
LCAyMDEyIFJlc2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0
ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNz
ZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBv
ciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFy
eSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICog
YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu
dHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRS4gIFNlZSB0aGUgR05VCisgKiBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig
bW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg
dGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlz
IGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqIEZvdW5kYXRp
b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAy
MTEwLTEzMDEgIFVTQQorICovCisKKyNpZm5kZWYgRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJy
eV9oCisjZGVmaW5lIERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnlfaAorCisjaW5jbHVkZSAi
RGV2aWNlTW90aW9uQ2xpZW50LmgiCisjaW5jbHVkZSAiRGV2aWNlTW90aW9uRGF0YS5oIgorCisj
aW5jbHVkZSA8QmxhY2tCZXJyeVBsYXRmb3JtRGV2aWNlTW90aW9uVHJhY2tlci5oPgorI2luY2x1
ZGUgPEJsYWNrQmVycnlQbGF0Zm9ybURldmljZU1vdGlvblRyYWNrZXJMaXN0ZW5lci5oPgorCitu
YW1lc3BhY2UgQmxhY2tCZXJyeSB7CituYW1lc3BhY2UgV2ViS2l0IHsKK2NsYXNzIFdlYlBhZ2VQ
cml2YXRlOworfQorfQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERldmljZU1vdGlv
bkNsaWVudEJsYWNrQmVycnkgOiBwdWJsaWMgRGV2aWNlTW90aW9uQ2xpZW50LCBwdWJsaWMgQmxh
Y2tCZXJyeTo6UGxhdGZvcm06OkRldmljZU1vdGlvblRyYWNrZXJMaXN0ZW5lciB7CitwdWJsaWM6
CisgICAgRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeShCbGFja0JlcnJ5OjpXZWJLaXQ6Oldl
YlBhZ2VQcml2YXRlKik7CisgICAgfkRldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkoKTsKKwor
ICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmljZU1vdGlvbkNvbnRyb2xsZXIqKTsK
KyAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpOworICAgIHZpcnR1YWwgdm9pZCBzdG9w
VXBkYXRpbmcoKTsKKyAgICB2aXJ0dWFsIERldmljZU1vdGlvbkRhdGEqIGN1cnJlbnREZXZpY2VN
b3Rpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIHZvaWQgZGV2aWNlTW90aW9uQ29udHJvbGxlckRl
c3Ryb3llZCgpOworICAgIHZpcnR1YWwgdm9pZCBvbk1vdGlvbihjb25zdCBCbGFja0JlcnJ5OjpQ
bGF0Zm9ybTo6RGV2aWNlTW90aW9uRXZlbnQqKTsKKworcHJpdmF0ZToKKyAgICBCbGFja0JlcnJ5
OjpXZWJLaXQ6OldlYlBhZ2VQcml2YXRlKiBtX3dlYlBhZ2VQcml2YXRlOworICAgIEJsYWNrQmVy
cnk6OlBsYXRmb3JtOjpEZXZpY2VNb3Rpb25UcmFja2VyKiBtX3RyYWNrZXI7CisgICAgRGV2aWNl
TW90aW9uQ29udHJvbGxlciogbV9jb250cm9sbGVyOworICAgIFJlZlB0cjxEZXZpY2VNb3Rpb25E
YXRhPiBtX2N1cnJlbnRNb3Rpb247CisgICAgZG91YmxlIG1fbGFzdEV2ZW50VGltZTsKK307Cit9
CisKKyNlbmRpZiAvLyBEZXZpY2VNb3Rpb25DbGllbnRCbGFja0JlcnJ5X2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlv
bkNsaWVudEJsYWNrQmVycnkuY3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVT
dXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5jcHAKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
Njk0MGM0NDYwMWRjNmNjMGVjZmMxN2MwMDc5Y2YyNGExNGQ5YWZkOAotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRh
dGlvbkNsaWVudEJsYWNrQmVycnkuY3BwCkBAIC0wLDAgKzEsNzcgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTAsIDIwMTEsIDIwMTIgUmVzZWFyY2ggSW4gTW90aW9uIExpbWl0ZWQuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv
dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJt
cyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBwdWJsaXNo
ZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJzaW9uIDIg
b2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisg
KgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls
bCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0
aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExlc3NlciBHZW5lcmFsIFB1
YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJl
Y2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5z
ZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0
d2FyZQorICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9v
ciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5o
IgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oIgorCisjaW5j
bHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCisjaW5jbHVkZSAiUGFnZS5oIgor
I2luY2x1ZGUgIldlYlBhZ2VfcC5oIgorCit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKKworRGV2
aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5OjpEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJs
YWNrQmVycnkoQmxhY2tCZXJyeTo6V2ViS2l0OjpXZWJQYWdlUHJpdmF0ZSogd2ViUGFnZVByaXZh
dGUpCisgICAgOiBtX3dlYlBhZ2VQcml2YXRlKHdlYlBhZ2VQcml2YXRlKQorICAgICwgbV90cmFj
a2VyKDApCisgICAgLCBtX2NvbnRyb2xsZXIoMCkKK3sKK30KKworRGV2aWNlT3JpZW50YXRpb25D
bGllbnRCbGFja0JlcnJ5Ojp+RGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5KCkKK3sK
KyAgICBpZiAobV90cmFja2VyKQorICAgICAgICBtX3RyYWNrZXItPmRlc3Ryb3koKTsKK30KKwor
dm9pZCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnk6OnNldENvbnRyb2xsZXIoRGV2
aWNlT3JpZW50YXRpb25Db250cm9sbGVyKiBjb250cm9sbGVyKQoreworICAgIG1fY29udHJvbGxl
ciA9IGNvbnRyb2xsZXI7Cit9CisKK3ZvaWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0Jl
cnJ5OjpkZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKQoreworICAgIGRlbGV0
ZSB0aGlzOworfQorCit2b2lkIERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeTo6c3Rh
cnRVcGRhdGluZygpCit7CisgICAgaWYgKG1fdHJhY2tlcikKKyAgICAgICAgbV90cmFja2VyLT5y
ZXN1bWUoKTsKKyAgICBlbHNlCisgICAgICAgIG1fdHJhY2tlciA9IEJsYWNrQmVycnk6OlBsYXRm
b3JtOjpEZXZpY2VPcmllbnRhdGlvblRyYWNrZXI6OmNyZWF0ZSh0aGlzKTsKK30KKwordm9pZCBE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnk6OnN0b3BVcGRhdGluZygpCit7CisgICAg
aWYgKG1fdHJhY2tlcikKKyAgICAgICAgbV90cmFja2VyLT5zdXNwZW5kKCk7Cit9CisKK0Rldmlj
ZU9yaWVudGF0aW9uKiBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnk6Omxhc3RPcmll
bnRhdGlvbigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY3VycmVudE9yaWVudGF0aW9uLmdldCgp
OworfQorCit2b2lkIERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeTo6b25PcmllbnRh
dGlvbihjb25zdCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGV2aWNlT3JpZW50YXRpb25FdmVudCog
ZXZlbnQpCit7CisgICAgbV9jdXJyZW50T3JpZW50YXRpb24gPSBEZXZpY2VPcmllbnRhdGlvbjo6
Y3JlYXRlKHRydWUsIGV2ZW50LT5hbHBoYSwgdHJ1ZSwgZXZlbnQtPmJldGEsIHRydWUsIGV2ZW50
LT5nYW1tYSk7CisgICAgaWYgKCFtX2NvbnRyb2xsZXIpCisgICAgICAgIHJldHVybjsKKworICAg
IG1fY29udHJvbGxlci0+ZGlkQ2hhbmdlRGV2aWNlT3JpZW50YXRpb24obGFzdE9yaWVudGF0aW9u
KCkpOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBw
b3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oIGIvU291cmNlL1dlYktpdC9i
bGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJy
eS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjg2M2M0NDI5ZjEzYzk1MmYzZTdmZjk2YWJhYmNhYzE1YjUxZTM5ZTQK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBv
cnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5LmgKQEAgLTAsMCArMSw1NyBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCwgMjAxMSwgMjAxMiBSZXNlYXJjaCBJbiBNb3Rpb24g
TGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNl
bnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIK
KyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0
ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv
cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg
d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkg
b3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICogTGVz
c2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ug
c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVi
bGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRv
IHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJl
ZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBVU0EKKyAqLworCisjaWZu
ZGVmIERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeV9oCisjZGVmaW5lIERldmljZU9y
aWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeV9oCisKKyNpbmNsdWRlICJEZXZpY2VPcmllbnRhdGlv
bi5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50LmgiCisKKyNpbmNsdWRlIDxC
bGFja0JlcnJ5UGxhdGZvcm1EZXZpY2VPcmllbnRhdGlvblRyYWNrZXIuaD4KKyNpbmNsdWRlIDxC
bGFja0JlcnJ5UGxhdGZvcm1EZXZpY2VPcmllbnRhdGlvblRyYWNrZXJMaXN0ZW5lci5oPgorI2lu
Y2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKworbmFtZXNwYWNlIEJsYWNrQmVycnkgeworbmFtZXNwYWNl
IFdlYktpdCB7CitjbGFzcyBXZWJQYWdlUHJpdmF0ZTsKK30KK30KKworbmFtZXNwYWNlIFdlYkNv
cmUgeworCitjbGFzcyBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkgOiBwdWJsaWMg
RGV2aWNlT3JpZW50YXRpb25DbGllbnQsIHB1YmxpYyBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGV2
aWNlT3JpZW50YXRpb25UcmFja2VyTGlzdGVuZXIgeworcHVibGljOgorICAgIERldmljZU9yaWVu
dGF0aW9uQ2xpZW50QmxhY2tCZXJyeShCbGFja0JlcnJ5OjpXZWJLaXQ6OldlYlBhZ2VQcml2YXRl
Kik7CisgICAgdmlydHVhbCB+RGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5KCk7CisK
KyAgICB2aXJ0dWFsIHZvaWQgc2V0Q29udHJvbGxlcihEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xs
ZXIqKTsKKyAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpOworICAgIHZpcnR1YWwgdm9p
ZCBzdG9wVXBkYXRpbmcoKTsKKyAgICB2aXJ0dWFsIERldmljZU9yaWVudGF0aW9uKiBsYXN0T3Jp
ZW50YXRpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIHZvaWQgZGV2aWNlT3JpZW50YXRpb25Db250
cm9sbGVyRGVzdHJveWVkKCk7CisgICAgdmlydHVhbCB2b2lkIG9uT3JpZW50YXRpb24oY29uc3Qg
QmxhY2tCZXJyeTo6UGxhdGZvcm06OkRldmljZU9yaWVudGF0aW9uRXZlbnQqKTsKKworcHJpdmF0
ZToKKyAgICBCbGFja0JlcnJ5OjpXZWJLaXQ6OldlYlBhZ2VQcml2YXRlKiBtX3dlYlBhZ2VQcml2
YXRlOworICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpEZXZpY2VPcmllbnRhdGlvblRyYWNrZXIq
IG1fdHJhY2tlcjsKKyAgICBEZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIqIG1fY29udHJvbGxl
cjsKKyAgICBSZWZQdHI8RGV2aWNlT3JpZW50YXRpb24+IG1fY3VycmVudE9yaWVudGF0aW9uOwor
fTsKK30KKworI2VuZGlmIC8vIERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeV9oCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125890</attachid>
            <date>2012-02-07 11:50:04 -0800</date>
            <delta_ts>2012-02-07 12:40:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77993-20120207144942.patch</filename>
            <type>text/plain</type>
            <size>11985</size>
            <attacher name="Jacky Jiang">jkjiang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA2OTQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDQ4NjE2MjNiNWYzMjA4NDc2
ZGNmMzE2N2RhYmI1NTA0N2M4OTc2OWUuLjA0ZGMzZTBlMTgwMTdhODlhMDgwZDY1OTM4YWFkNzVk
YWZjZjY2ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMDItMDcgIEphY2t5IEpp
YW5nICA8emhhamlhbmdAcmltLmNvbT4KKworICAgICAgICBbQmxhY2tCZXJyeV0gVXBzdHJlYW0g
QmxhY2tCZXJyeSBXZWJDb3JlU3VwcG9ydCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVy
cnkgYW5kIERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkgY2xhc3NlcworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Nzc5OTMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbml0aWFsIHVwc3RyZWFtLCBubyBu
ZXcgdGVzdHMuCisKKyAgICAgICAgKiBibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU1v
dGlvbkNsaWVudEJsYWNrQmVycnkuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBibGFja2JlcnJ5L1dl
YkNvcmVTdXBwb3J0L0RldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkuaDogQWRkZWQuCisgICAg
ICAgICogYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJs
YWNrQmVycnkuY3BwOiBBZGRlZC4KKyAgICAgICAgKiBibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0
L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oOiBBZGRlZC4KKwogMjAxMi0wMi0w
NiAgTGVvIFlhbmcgIDxsZW8ueWFuZ0B0b3JjaG1vYmlsZS5jb20uY24+CiAKICAgICAgICAgW0Js
YWNrQmVycnldIFVzZSBXZWJQYWdlUHJpdmF0ZSBpbnN0ZWFkIG9mIFdlYlBhZ2UgaW4gR2VvbG9j
YXRpb25Db250cm9sbGVyQ2xpZW50QmxhY2tCZXJyeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnku
Y3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU1vdGlv
bkNsaWVudEJsYWNrQmVycnkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkzZjI0ZmYxMWUxYjg4MTY1OWFiNzBh
ZDZkMmU2NWNkNzcwZjg2OTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNr
YmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeS5jcHAKQEAg
LTAsMCArMSw4NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCwgMjAxMSwgMjAxMiBSZXNl
YXJjaCBJbiBNb3Rpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlz
IGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y
CisgKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwg
UHVibGljCisgKiBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uOyBlaXRoZXIKKyAqIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIg
b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJp
YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VU
IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBN
RVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUg
dGhlIEdOVQorICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls
cy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVz
c2VyIEdlbmVyYWwgUHVibGljCisgKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBp
ZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgKiBGb3VuZGF0aW9uLCBJbmMuLCA1
MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxICBV
U0EKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiRGV2aWNlTW90aW9uQ2xp
ZW50QmxhY2tCZXJyeS5oIgorCisjaW5jbHVkZSAiRGV2aWNlTW90aW9uQ29udHJvbGxlci5oIgor
I2luY2x1ZGUgIkRldmljZU1vdGlvbkRhdGEuaCIKKyNpbmNsdWRlICJXZWJQYWdlX3AuaCIKKyNp
bmNsdWRlIDxCbGFja0JlcnJ5UGxhdGZvcm1EZXZpY2VNb3Rpb25UcmFja2VyLmg+CisKK3VzaW5n
IG5hbWVzcGFjZSBXZWJDb3JlOworCitEZXZpY2VNb3Rpb25DbGllbnRCbGFja0JlcnJ5OjpEZXZp
Y2VNb3Rpb25DbGllbnRCbGFja0JlcnJ5KEJsYWNrQmVycnk6OldlYktpdDo6V2ViUGFnZVByaXZh
dGUqIHdlYlBhZ2VQcml2YXRlKQorICAgIDogbV93ZWJQYWdlUHJpdmF0ZSh3ZWJQYWdlUHJpdmF0
ZSkKKyAgICAsIG1fdHJhY2tlcigwKQorICAgICwgbV9jb250cm9sbGVyKDApCisgICAgLCBtX2xh
c3RFdmVudFRpbWUoMCkKK3sKK30KKworRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeTo6fkRl
dmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkoKQoreworICAgIGlmIChtX3RyYWNrZXIpCisgICAg
ICAgIG1fdHJhY2tlci0+ZGVzdHJveSgpOworfQorCit2b2lkIERldmljZU1vdGlvbkNsaWVudEJs
YWNrQmVycnk6OnNldENvbnRyb2xsZXIoRGV2aWNlTW90aW9uQ29udHJvbGxlciogY29udHJvbGxl
cikKK3sKKyAgICBtX2NvbnRyb2xsZXIgPSBjb250cm9sbGVyOworfQorCit2b2lkIERldmljZU1v
dGlvbkNsaWVudEJsYWNrQmVycnk6OmRldmljZU1vdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKQor
eworICAgIGRlbGV0ZSB0aGlzOworfQorCit2b2lkIERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVy
cnk6OnN0YXJ0VXBkYXRpbmcoKQoreworICAgIGlmIChtX3RyYWNrZXIpCisgICAgICAgIG1fdHJh
Y2tlci0+cmVzdW1lKCk7CisgICAgZWxzZQorICAgICAgICBtX3RyYWNrZXIgPSBCbGFja0JlcnJ5
OjpQbGF0Zm9ybTo6RGV2aWNlTW90aW9uVHJhY2tlcjo6Y3JlYXRlKHRoaXMpOworfQorCit2b2lk
IERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnk6OnN0b3BVcGRhdGluZygpCit7CisgICAgaWYg
KG1fdHJhY2tlcikKKyAgICAgICAgbV90cmFja2VyLT5zdXNwZW5kKCk7Cit9CisKK0RldmljZU1v
dGlvbkRhdGEqIERldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnk6OmN1cnJlbnREZXZpY2VNb3Rp
b24oKSBjb25zdAoreworICAgIHJldHVybiBtX2N1cnJlbnRNb3Rpb24uZ2V0KCk7Cit9CisKK3Zv
aWQgRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeTo6b25Nb3Rpb24oY29uc3QgQmxhY2tCZXJy
eTo6UGxhdGZvcm06OkRldmljZU1vdGlvbkV2ZW50KiBldmVudCkKK3sKKyAgICBSZWZQdHI8RGV2
aWNlTW90aW9uRGF0YTo6QWNjZWxlcmF0aW9uPiBhY2NlbCA9IERldmljZU1vdGlvbkRhdGE6OkFj
Y2VsZXJhdGlvbjo6Y3JlYXRlKAorICAgICAgICAgICAgdHJ1ZSwgZXZlbnQtPngsIHRydWUsIGV2
ZW50LT55LCB0cnVlLCBldmVudC0+eik7CisKKyAgICBkb3VibGUgbm93ID0gV1RGOjpjdXJyZW50
VGltZU1TKCk7CisgICAgbV9jdXJyZW50TW90aW9uID0gRGV2aWNlTW90aW9uRGF0YTo6Y3JlYXRl
KDAsIGFjY2VsLCAwLCBtX2xhc3RFdmVudFRpbWUsIG1fbGFzdEV2ZW50VGltZSAtIG5vdyk7Cisg
ICAgbV9sYXN0RXZlbnRUaW1lID0gbm93OworCisgICAgaWYgKCFtX2NvbnRyb2xsZXIpCisgICAg
ICAgIHJldHVybjsKKworICAgIG1fY29udHJvbGxlci0+ZGlkQ2hhbmdlRGV2aWNlTW90aW9uKGN1
cnJlbnREZXZpY2VNb3Rpb24oKSk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNr
YmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeS5oIGIvU291
cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0RldmljZU1vdGlvbkNsaWVudEJs
YWNrQmVycnkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43NmFjNDI5NjYzMmE0MDJiOTRjMmIzY2MzMzM1YmFkZTdk
NThjODA3Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNv
cmVTdXBwb3J0L0RldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnkuaApAQCAtMCwwICsxLDYyIEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwLCAyMDExLCAyMDEyIFJlc2VhcmNoIEluIE1vdGlv
biBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBp
dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExp
Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhl
cgorICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBs
YXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg
aG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ
OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElU
WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBM
ZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlv
dSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQ
dWJsaWMKKyAqIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUg
dG8gdGhlIEZyZWUgU29mdHdhcmUKKyAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0
cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICovCisKKyNp
Zm5kZWYgRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeV9oCisjZGVmaW5lIERldmljZU1vdGlv
bkNsaWVudEJsYWNrQmVycnlfaAorCisjaW5jbHVkZSAiRGV2aWNlTW90aW9uQ2xpZW50LmgiCisj
aW5jbHVkZSAiRGV2aWNlTW90aW9uRGF0YS5oIgorCisjaW5jbHVkZSA8QmxhY2tCZXJyeVBsYXRm
b3JtRGV2aWNlTW90aW9uVHJhY2tlckxpc3RlbmVyLmg+CisKK25hbWVzcGFjZSBCbGFja0JlcnJ5
IHsKK25hbWVzcGFjZSBXZWJLaXQgeworY2xhc3MgV2ViUGFnZVByaXZhdGU7Cit9Cit9CisKK25h
bWVzcGFjZSBCbGFja0JlcnJ5IHsKK25hbWVzcGFjZSBQbGF0Zm9ybSB7CitjbGFzcyBEZXZpY2VN
b3Rpb25UcmFja2VyOworfQorfQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERldmlj
ZU1vdGlvbkNsaWVudEJsYWNrQmVycnkgOiBwdWJsaWMgRGV2aWNlTW90aW9uQ2xpZW50LCBwdWJs
aWMgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkRldmljZU1vdGlvblRyYWNrZXJMaXN0ZW5lciB7Citw
dWJsaWM6CisgICAgRGV2aWNlTW90aW9uQ2xpZW50QmxhY2tCZXJyeShCbGFja0JlcnJ5OjpXZWJL
aXQ6OldlYlBhZ2VQcml2YXRlKik7CisgICAgfkRldmljZU1vdGlvbkNsaWVudEJsYWNrQmVycnko
KTsKKworICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmljZU1vdGlvbkNvbnRyb2xs
ZXIqKTsKKyAgICB2aXJ0dWFsIHZvaWQgc3RhcnRVcGRhdGluZygpOworICAgIHZpcnR1YWwgdm9p
ZCBzdG9wVXBkYXRpbmcoKTsKKyAgICB2aXJ0dWFsIERldmljZU1vdGlvbkRhdGEqIGN1cnJlbnRE
ZXZpY2VNb3Rpb24oKSBjb25zdDsKKyAgICB2aXJ0dWFsIHZvaWQgZGV2aWNlTW90aW9uQ29udHJv
bGxlckRlc3Ryb3llZCgpOworICAgIHZpcnR1YWwgdm9pZCBvbk1vdGlvbihjb25zdCBCbGFja0Jl
cnJ5OjpQbGF0Zm9ybTo6RGV2aWNlTW90aW9uRXZlbnQqKTsKKworcHJpdmF0ZToKKyAgICBCbGFj
a0JlcnJ5OjpXZWJLaXQ6OldlYlBhZ2VQcml2YXRlKiBtX3dlYlBhZ2VQcml2YXRlOworICAgIEJs
YWNrQmVycnk6OlBsYXRmb3JtOjpEZXZpY2VNb3Rpb25UcmFja2VyKiBtX3RyYWNrZXI7CisgICAg
RGV2aWNlTW90aW9uQ29udHJvbGxlciogbV9jb250cm9sbGVyOworICAgIFJlZlB0cjxEZXZpY2VN
b3Rpb25EYXRhPiBtX2N1cnJlbnRNb3Rpb247CisgICAgZG91YmxlIG1fbGFzdEV2ZW50VGltZTsK
K307Cit9CisKKyNlbmRpZiAvLyBEZXZpY2VNb3Rpb25DbGllbnRCbGFja0JlcnJ5X2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmll
bnRhdGlvbkNsaWVudEJsYWNrQmVycnkuY3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dl
YkNvcmVTdXBwb3J0L0RldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5jcHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uMjk3MGE0ZjViNTFmYTcxOTZmM2Q0ZWVkN2ZiYThmNzM3OTIyNzJlYgotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VP
cmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkuY3BwCkBAIC0wLDAgKzEsNzcgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTAsIDIwMTEsIDIwMTIgUmVzZWFyY2ggSW4gTW90aW9uIExpbWl0ZWQu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdh
cmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRo
ZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICogTGljZW5zZSBhcyBw
dWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2ZXJz
aW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNp
b24uCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQg
aXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQg
ZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExlc3NlciBHZW5l
cmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBo
YXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICog
TGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJl
ZSBTb2Z0d2FyZQorICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0
aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSAgVVNBCisgKi8KKworI2luY2x1ZGUgImNv
bmZpZy5oIgorI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeS5oIgor
CisjaW5jbHVkZSAiRGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLmgiCisjaW5jbHVkZSAiV2Vi
UGFnZV9wLmgiCisjaW5jbHVkZSA8QmxhY2tCZXJyeVBsYXRmb3JtRGV2aWNlT3JpZW50YXRpb25U
cmFja2VyLmg+CisKK3VzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOworCitEZXZpY2VPcmllbnRhdGlv
bkNsaWVudEJsYWNrQmVycnk6OkRldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeShCbGFj
a0JlcnJ5OjpXZWJLaXQ6OldlYlBhZ2VQcml2YXRlKiB3ZWJQYWdlUHJpdmF0ZSkKKyAgICA6IG1f
d2ViUGFnZVByaXZhdGUod2ViUGFnZVByaXZhdGUpCisgICAgLCBtX3RyYWNrZXIoMCkKKyAgICAs
IG1fY29udHJvbGxlcigwKQoreworfQorCitEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVy
cnk6On5EZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnkoKQoreworICAgIGlmIChtX3Ry
YWNrZXIpCisgICAgICAgIG1fdHJhY2tlci0+ZGVzdHJveSgpOworfQorCit2b2lkIERldmljZU9y
aWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeTo6c2V0Q29udHJvbGxlcihEZXZpY2VPcmllbnRhdGlv
bkNvbnRyb2xsZXIqIGNvbnRyb2xsZXIpCit7CisgICAgbV9jb250cm9sbGVyID0gY29udHJvbGxl
cjsKK30KKwordm9pZCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudEJsYWNrQmVycnk6OmRldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlckRlc3Ryb3llZCgpCit7CisgICAgZGVsZXRlIHRoaXM7Cit9CisK
K3ZvaWQgRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5OjpzdGFydFVwZGF0aW5nKCkK
K3sKKyAgICBpZiAobV90cmFja2VyKQorICAgICAgICBtX3RyYWNrZXItPnJlc3VtZSgpOworICAg
IGVsc2UKKyAgICAgICAgbV90cmFja2VyID0gQmxhY2tCZXJyeTo6UGxhdGZvcm06OkRldmljZU9y
aWVudGF0aW9uVHJhY2tlcjo6Y3JlYXRlKHRoaXMpOworfQorCit2b2lkIERldmljZU9yaWVudGF0
aW9uQ2xpZW50QmxhY2tCZXJyeTo6c3RvcFVwZGF0aW5nKCkKK3sKKyAgICBpZiAobV90cmFja2Vy
KQorICAgICAgICBtX3RyYWNrZXItPnN1c3BlbmQoKTsKK30KKworRGV2aWNlT3JpZW50YXRpb24q
IERldmljZU9yaWVudGF0aW9uQ2xpZW50QmxhY2tCZXJyeTo6bGFzdE9yaWVudGF0aW9uKCkgY29u
c3QKK3sKKyAgICByZXR1cm4gbV9jdXJyZW50T3JpZW50YXRpb24uZ2V0KCk7Cit9CisKK3ZvaWQg
RGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5Ojpvbk9yaWVudGF0aW9uKGNvbnN0IEJs
YWNrQmVycnk6OlBsYXRmb3JtOjpEZXZpY2VPcmllbnRhdGlvbkV2ZW50KiBldmVudCkKK3sKKyAg
ICBtX2N1cnJlbnRPcmllbnRhdGlvbiA9IERldmljZU9yaWVudGF0aW9uOjpjcmVhdGUodHJ1ZSwg
ZXZlbnQtPmFscGhhLCB0cnVlLCBldmVudC0+YmV0YSwgdHJ1ZSwgZXZlbnQtPmdhbW1hKTsKKyAg
ICBpZiAoIW1fY29udHJvbGxlcikKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9jb250cm9sbGVy
LT5kaWRDaGFuZ2VEZXZpY2VPcmllbnRhdGlvbihsYXN0T3JpZW50YXRpb24oKSk7Cit9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRCbGFja0JlcnJ5LmggYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2Vi
Q29yZVN1cHBvcnQvRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5LmgKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uNzYxMGZiMWQ0ZGI4ODFkYjIxY2JlNjQ5NmU1MDFhYmNkNzc2OGJkYwotLS0gL2Rldi9udWxs
CisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9EZXZpY2VPcmll
bnRhdGlvbkNsaWVudEJsYWNrQmVycnkuaApAQCAtMCwwICsxLDYyIEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDEwLCAyMDExLCAyMDEyIFJlc2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5
b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVy
bXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlz
aGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAy
IG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor
ICoKKyAqIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp
bGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g
dGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMZXNzZXIgR2VuZXJhbCBQ
dWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSBy
ZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vu
c2UgYWxvbmcgd2l0aCB0aGlzIGxpYnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29m
dHdhcmUKKyAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxv
b3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQorICovCisKKyNpZm5kZWYgRGV2aWNlT3Jp
ZW50YXRpb25DbGllbnRCbGFja0JlcnJ5X2gKKyNkZWZpbmUgRGV2aWNlT3JpZW50YXRpb25DbGll
bnRCbGFja0JlcnJ5X2gKKworI2luY2x1ZGUgIkRldmljZU9yaWVudGF0aW9uLmgiCisjaW5jbHVk
ZSAiRGV2aWNlT3JpZW50YXRpb25DbGllbnQuaCIKKworI2luY2x1ZGUgPEJsYWNrQmVycnlQbGF0
Zm9ybURldmljZU9yaWVudGF0aW9uVHJhY2tlckxpc3RlbmVyLmg+CisjaW5jbHVkZSA8d3RmL1Jl
ZlB0ci5oPgorCituYW1lc3BhY2UgQmxhY2tCZXJyeSB7CituYW1lc3BhY2UgV2ViS2l0IHsKK2Ns
YXNzIFdlYlBhZ2VQcml2YXRlOworfQorfQorCituYW1lc3BhY2UgQmxhY2tCZXJyeSB7CituYW1l
c3BhY2UgUGxhdGZvcm0geworY2xhc3MgRGV2aWNlT3JpZW50YXRpb25UcmFja2VyOworfQorfQor
CituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIERldmljZU9yaWVudGF0aW9uQ2xpZW50Qmxh
Y2tCZXJyeSA6IHB1YmxpYyBEZXZpY2VPcmllbnRhdGlvbkNsaWVudCwgcHVibGljIEJsYWNrQmVy
cnk6OlBsYXRmb3JtOjpEZXZpY2VPcmllbnRhdGlvblRyYWNrZXJMaXN0ZW5lciB7CitwdWJsaWM6
CisgICAgRGV2aWNlT3JpZW50YXRpb25DbGllbnRCbGFja0JlcnJ5KEJsYWNrQmVycnk6OldlYktp
dDo6V2ViUGFnZVByaXZhdGUqKTsKKyAgICB2aXJ0dWFsIH5EZXZpY2VPcmllbnRhdGlvbkNsaWVu
dEJsYWNrQmVycnkoKTsKKworICAgIHZpcnR1YWwgdm9pZCBzZXRDb250cm9sbGVyKERldmljZU9y
aWVudGF0aW9uQ29udHJvbGxlciopOworICAgIHZpcnR1YWwgdm9pZCBzdGFydFVwZGF0aW5nKCk7
CisgICAgdmlydHVhbCB2b2lkIHN0b3BVcGRhdGluZygpOworICAgIHZpcnR1YWwgRGV2aWNlT3Jp
ZW50YXRpb24qIGxhc3RPcmllbnRhdGlvbigpIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBkZXZp
Y2VPcmllbnRhdGlvbkNvbnRyb2xsZXJEZXN0cm95ZWQoKTsKKyAgICB2aXJ0dWFsIHZvaWQgb25P
cmllbnRhdGlvbihjb25zdCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6RGV2aWNlT3JpZW50YXRpb25F
dmVudCopOworCitwcml2YXRlOgorICAgIEJsYWNrQmVycnk6OldlYktpdDo6V2ViUGFnZVByaXZh
dGUqIG1fd2ViUGFnZVByaXZhdGU7CisgICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkRldmljZU9y
aWVudGF0aW9uVHJhY2tlciogbV90cmFja2VyOworICAgIERldmljZU9yaWVudGF0aW9uQ29udHJv
bGxlciogbV9jb250cm9sbGVyOworICAgIFJlZlB0cjxEZXZpY2VPcmllbnRhdGlvbj4gbV9jdXJy
ZW50T3JpZW50YXRpb247Cit9OworfQorCisjZW5kaWYgLy8gRGV2aWNlT3JpZW50YXRpb25DbGll
bnRCbGFja0JlcnJ5X2gK
</data>

          </attachment>
      

    </bug>

</bugzilla>