From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sanford Rockowitz Subject: need guidance re amdgpu i2c Date: Tue, 13 Sep 2016 06:47:01 -0400 Message-ID: <57D7D925.4050306@minsoft.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0147355687==" Return-path: List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org This is a multi-part message in MIME format. --===============0147355687== Content-Type: multipart/alternative; boundary="------------000404070007020700050700" This is a multi-part message in MIME format. --------------000404070007020700050700 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable First, apologies in advance if this is not the most appropriate list for my questions. Redirection appreciated. I am the author of ddctool , a utility to manipulate monitor settings using DDC/CI over I2C. My understanding is that amdgpu provides /dev/i2c-* devices in the usual way, so that ddctool should just work without changes. But of course this needs to be tested. In this regard I have a number of questions and a request. Does the i2c interface depend in some way on whether one is running the AMDGPU-PRO driver? The most current AMD card that I own in a R9 280, which is a first generation GCN device. Phoronix suggests that first generation GCN support is in the works. Will this be soon? If not, would the current development code for amdgpu be sufficient for me to test the i2c support? If so, what would I have to do to build and install it? Or should I just plunk down a few dollars for a relatively inexpensive R7 260, which I understand is supported by the current amdgpu? Alternatively, if someone running the amdgpu driver would be willing to install and test ddctool on their system I'd be most appreciative. The git repository is here: https://github.com/rockowitz/ddctool, and there's extensive documentation on the website, www.ddctool.com. A couple of command line options of note: "--stats" reports extensive performance statistics, including counts of i2c retries required "--ddc" reports DDC protocol data errors If ddctool installs but does not seem to be working, command "ddctool environment" may provide some clues. Finally, the "ddctool interrogate" command fully exercises ddctool and probes the i2c environment. Depending on permissions, running it as root may provide additional detail. If you can capture the output and send it to me that would be most helpful.=20 Thanks in advance, Sanford Rockowitz --------------000404070007020700050700 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit First, apologies in advance if this is not the most appropriate list for my questions.  Redirection appreciated.

I am the author of ddctool, a utility to manipulate monitor settings using DDC/CI over I2C.

My understanding is that amdgpu provides /dev/i2c-* devices in the usual way, so that ddctool should just work without changes.  But of course this needs to be tested.

In this regard I have a number of questions and a request.

Does the i2c interface depend in some way on whether one is running the AMDGPU-PRO driver?

The most current AMD card that I own in a R9 280, which is a first generation GCN device.   Phoronix suggests that first generation GCN support is in the works.  Will this be soon?   If not, would the current development code for amdgpu be sufficient for me to test the i2c support?   If so, what would I have to do to build and install it?

Or should I just plunk down a few dollars for a relatively inexpensive R7 260, which I understand is supported by the current amdgpu?

Alternatively, if someone running the amdgpu driver would be willing to install and test ddctool on their system I'd be most appreciative.  The git repository is here: https://github.com/rockowitz/ddctool, and there's extensive documentation on the website, www.ddctool.com.

A couple of command line options of note:

  "--stats" reports extensive performance statistics, including counts of i2c retries required
  "--ddc"  reports DDC protocol data errors

If ddctool installs but does not seem to be working, command "ddctool environment" may provide some clues.

Finally, the "ddctool interrogate" command fully exercises ddctool and probes the i2c environment.  Depending on permissions, running it as root may provide additional detail.  If you can capture the output and send it to me that would be most helpful. 

Thanks in advance,
Sanford Rockowitz

--------------000404070007020700050700-- --===============0147355687== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBt YWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg== --===============0147355687==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Deucher, Alexander" Subject: RE: need guidance re amdgpu i2c Date: Tue, 13 Sep 2016 16:16:48 +0000 Message-ID: References: <57D7D925.4050306@minsoft.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0722734999==" Return-path: In-Reply-To: <57D7D925.4050306-9+fK6rGKj7RBDgjK7y7TUQ@public.gmane.org> Content-Language: en-US List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: 'Sanford Rockowitz' , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" --===============0722734999== Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_MWHPR12MB1694331FD3523A049BF5ADABF7FE0MWHPR12MB1694namp_" --_000_MWHPR12MB1694331FD3523A049BF5ADABF7FE0MWHPR12MB1694namp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQpGcm9tOiBhbWQtZ2Z4IFttYWlsdG86YW1kLWdmeC1ib3VuY2VzQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZ10gT24gQmVoYWxmIE9mIFNhbmZvcmQgUm9ja293aXR6DQpTZW50OiBUdWVzZGF5LCBTZXB0 ZW1iZXIgMTMsIDIwMTYgNjo0NyBBTQ0KVG86IGFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn DQpTdWJqZWN0OiBuZWVkIGd1aWRhbmNlIHJlIGFtZGdwdSBpMmMNCg0KRmlyc3QsIGFwb2xvZ2ll cyBpbiBhZHZhbmNlIGlmIHRoaXMgaXMgbm90IHRoZSBtb3N0IGFwcHJvcHJpYXRlIGxpc3QgZm9y IG15IHF1ZXN0aW9ucy4gIFJlZGlyZWN0aW9uIGFwcHJlY2lhdGVkLg0KDQpJIGFtIHRoZSBhdXRo b3Igb2YgZGRjdG9vbDx3d3cuZGRjdG9vbC5jb20+LCBhIHV0aWxpdHkgdG8gbWFuaXB1bGF0ZSBt b25pdG9yIHNldHRpbmdzIHVzaW5nIEREQy9DSSBvdmVyIEkyQy4NCg0KTXkgdW5kZXJzdGFuZGlu ZyBpcyB0aGF0IGFtZGdwdSBwcm92aWRlcyAvZGV2L2kyYy0qIGRldmljZXMgaW4gdGhlIHVzdWFs IHdheSwgc28gdGhhdCBkZGN0b29sIHNob3VsZCBqdXN0IHdvcmsgd2l0aG91dCBjaGFuZ2VzLiAg QnV0IG9mIGNvdXJzZSB0aGlzIG5lZWRzIHRvIGJlIHRlc3RlZC4NCg0KSW4gdGhpcyByZWdhcmQg SSBoYXZlIGEgbnVtYmVyIG9mIHF1ZXN0aW9ucyBhbmQgYSByZXF1ZXN0Lg0KDQpEb2VzIHRoZSBp MmMgaW50ZXJmYWNlIGRlcGVuZCBpbiBzb21lIHdheSBvbiB3aGV0aGVyIG9uZSBpcyBydW5uaW5n IHRoZSBBTURHUFUtUFJPIGRyaXZlcj8NCg0KTm8sIGFsdGhvdWdoIHRoZSBQUk8gZHJpdmVyIHVz ZXMgYSBuZXdlciBkaXNwbGF5IHN0YWNrIHdoaWNoIGlzIG5vdCB1cHN0cmVhbSB5ZXQgc28gdGhl cmUgbWF5IGJlIHN1YnRsZSBkaWZmZXJlbmNlcy4NCg0KVGhlIG1vc3QgY3VycmVudCBBTUQgY2Fy ZCB0aGF0IEkgb3duIGluIGEgUjkgMjgwLCB3aGljaCBpcyBhIGZpcnN0IGdlbmVyYXRpb24gR0NO IGRldmljZS4gICBQaG9yb25peCBzdWdnZXN0cyB0aGF0IGZpcnN0IGdlbmVyYXRpb24gR0NOIHN1 cHBvcnQgaXMgaW4gdGhlIHdvcmtzLiAgV2lsbCB0aGlzIGJlIHNvb24/ICAgSWYgbm90LCB3b3Vs ZCB0aGUgY3VycmVudCBkZXZlbG9wbWVudCBjb2RlIGZvciBhbWRncHUgYmUgc3VmZmljaWVudCBm b3IgbWUgdG8gdGVzdCB0aGUgaTJjIHN1cHBvcnQ/ICAgSWYgc28sIHdoYXQgd291bGQgSSBoYXZl IHRvIGRvIHRvIGJ1aWxkIGFuZCBpbnN0YWxsIGl0Pw0KDQpCb3RoIHJhZGVvbiBhbmQgYW1kZ3B1 IHN1cHBvcnQgdGhlIHNhbWUgaTJjIGludGVyZmFjZXMuICBJdCBkb2VzbuKAmXQgbWF0dGVyIHdo aWNoIGRyaXZlciB5b3UgdXNlLiAgVGhlIGN1cnJlbnQgU0kgc3VwcG9ydCBpbiBhbWRncHUgc3Vw cG9ydHMgaTJjLg0KDQpPciBzaG91bGQgSSBqdXN0IHBsdW5rIGRvd24gYSBmZXcgZG9sbGFycyBm b3IgYSByZWxhdGl2ZWx5IGluZXhwZW5zaXZlIFI3IDI2MCwgd2hpY2ggSSB1bmRlcnN0YW5kIGlz IHN1cHBvcnRlZCBieSB0aGUgY3VycmVudCBhbWRncHU/DQoNClVwIHRvIHlvdS4NCg0KQWx0ZXJu YXRpdmVseSwgaWYgc29tZW9uZSBydW5uaW5nIHRoZSBhbWRncHUgZHJpdmVyIHdvdWxkIGJlIHdp bGxpbmcgdG8gaW5zdGFsbCBhbmQgdGVzdCBkZGN0b29sIG9uIHRoZWlyIHN5c3RlbSBJJ2QgYmUg bW9zdCBhcHByZWNpYXRpdmUuICBUaGUgZ2l0IHJlcG9zaXRvcnkgaXMgaGVyZTogaHR0cHM6Ly9n aXRodWIuY29tL3JvY2tvd2l0ei9kZGN0b29sLCBhbmQgdGhlcmUncyBleHRlbnNpdmUgZG9jdW1l bnRhdGlvbiBvbiB0aGUgd2Vic2l0ZSwgd3d3LmRkY3Rvb2wuY29tPGh0dHA6Ly93d3cuZGRjdG9v bC5jb20+Lg0KDQpBIGNvdXBsZSBvZiBjb21tYW5kIGxpbmUgb3B0aW9ucyBvZiBub3RlOg0KDQog ICItLXN0YXRzIiByZXBvcnRzIGV4dGVuc2l2ZSBwZXJmb3JtYW5jZSBzdGF0aXN0aWNzLCBpbmNs dWRpbmcgY291bnRzIG9mIGkyYyByZXRyaWVzIHJlcXVpcmVkDQogICItLWRkYyIgIHJlcG9ydHMg RERDIHByb3RvY29sIGRhdGEgZXJyb3JzDQoNCklmIGRkY3Rvb2wgaW5zdGFsbHMgYnV0IGRvZXMg bm90IHNlZW0gdG8gYmUgd29ya2luZywgY29tbWFuZCAiZGRjdG9vbCBlbnZpcm9ubWVudCIgbWF5 IHByb3ZpZGUgc29tZSBjbHVlcy4NCg0KRmluYWxseSwgdGhlICJkZGN0b29sIGludGVycm9nYXRl IiBjb21tYW5kIGZ1bGx5IGV4ZXJjaXNlcyBkZGN0b29sIGFuZCBwcm9iZXMgdGhlIGkyYyBlbnZp cm9ubWVudC4gIERlcGVuZGluZyBvbiBwZXJtaXNzaW9ucywgcnVubmluZyBpdCBhcyByb290IG1h eSBwcm92aWRlIGFkZGl0aW9uYWwgZGV0YWlsLiAgSWYgeW91IGNhbiBjYXB0dXJlIHRoZSBvdXRw dXQgYW5kIHNlbmQgaXQgdG8gbWUgdGhhdCB3b3VsZCBiZSBtb3N0IGhlbHBmdWwuDQoNClRoYW5r cyBpbiBhZHZhbmNlLA0KU2FuZm9yZCBSb2Nrb3dpdHoNCg== --_000_MWHPR12MB1694331FD3523A049BF5ADABF7FE0MWHPR12MB1694namp_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTQgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6 Q2FsaWJyaTsNCglwYW5vc2UtMToyIDE1IDUgMiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJ e2ZvbnQtZmFtaWx5OlRhaG9tYTsNCglwYW5vc2UtMToyIDExIDYgNCAzIDUgNCA0IDIgNDt9DQov KiBTdHlsZSBEZWZpbml0aW9ucyAqLw0KcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1z b05vcm1hbA0KCXttYXJnaW46MGluOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCglmb250LXNp emU6MTIuMHB0Ow0KCWZvbnQtZmFtaWx5OiJUaW1lcyBOZXcgUm9tYW4iLCJzZXJpZiI7DQoJY29s b3I6YmxhY2s7fQ0KYTpsaW5rLCBzcGFuLk1zb0h5cGVybGluaw0KCXttc28tc3R5bGUtcHJpb3Jp dHk6OTk7DQoJY29sb3I6Ymx1ZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30NCmE6dmlz aXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZA0KCXttc28tc3R5bGUtcHJpb3JpdHk6OTk7 DQoJY29sb3I6cHVycGxlOw0KCXRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fQ0Kc3Bhbi5FbWFp bFN0eWxlMTcNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6 IkNhbGlicmkiLCJzYW5zLXNlcmlmIjsNCgljb2xvcjojMUY0OTdEO30NCi5Nc29DaHBEZWZhdWx0 DQoJe21zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5Ow0KCWZvbnQtc2l6ZToxMC4wcHQ7fQ0KQHBh Z2UgV29yZFNlY3Rpb24xDQoJe3NpemU6OC41aW4gMTEuMGluOw0KCW1hcmdpbjoxLjBpbiAxLjBp biAxLjBpbiAxLjBpbjt9DQpkaXYuV29yZFNlY3Rpb24xDQoJe3BhZ2U6V29yZFNlY3Rpb24xO30N Ci0tPjwvc3R5bGU+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWRlZmF1bHRzIHY6 ZXh0PSJlZGl0IiBzcGlkbWF4PSIxMDI2IiAvPg0KPC94bWw+PCFbZW5kaWZdLS0+PCEtLVtpZiBn dGUgbXNvIDldPjx4bWw+DQo8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRpdCI+DQo8bzppZG1hcCB2 OmV4dD0iZWRpdCIgZGF0YT0iMSIgLz4NCjwvbzpzaGFwZWxheW91dD48L3htbD48IVtlbmRpZl0t LT4NCjwvaGVhZD4NCjxib2R5IGJnY29sb3I9IndoaXRlIiBsYW5nPSJFTi1VUyIgbGluaz0iYmx1 ZSIgdmxpbms9InB1cnBsZSI+DQo8ZGl2IGNsYXNzPSJXb3JkU2VjdGlvbjEiPg0KPHAgY2xhc3M9 Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1 b3Q7Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPjxv OnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRl ci1sZWZ0OnNvbGlkIGJsdWUgMS41cHQ7cGFkZGluZzowaW4gMGluIDBpbiA0LjBwdCI+DQo8ZGl2 Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEuMHB0 O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PGI+PHNw YW4gc3R5bGU9ImZvbnQtc2l6ZToxMC4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7VGFob21hJnF1b3Q7 LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6d2luZG93dGV4dCI+RnJvbTo8L3NwYW4+PC9i PjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTAuMHB0O2ZvbnQtZmFtaWx5OiZxdW90O1RhaG9tYSZx dW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOndpbmRvd3RleHQiPiBhbWQtZ2Z4IFtt YWlsdG86YW1kLWdmeC1ib3VuY2VzQGxpc3RzLmZyZWVkZXNrdG9wLm9yZ10NCjxiPk9uIEJlaGFs ZiBPZiA8L2I+U2FuZm9yZCBSb2Nrb3dpdHo8YnI+DQo8Yj5TZW50OjwvYj4gVHVlc2RheSwgU2Vw dGVtYmVyIDEzLCAyMDE2IDY6NDcgQU08YnI+DQo8Yj5Ubzo8L2I+IGFtZC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnPGJyPg0KPGI+U3ViamVjdDo8L2I+IG5lZWQgZ3VpZGFuY2UgcmUgYW1kZ3B1 IGkyYzxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPC9kaXY+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl PSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+Rmlyc3QsIGFwb2xvZ2llcyBpbiBhZHZhbmNlIGlmIHRo aXMgaXMgbm90IHRoZSBtb3N0IGFwcHJvcHJpYXRlIGxpc3QgZm9yIG15IHF1ZXN0aW9ucy4mbmJz cDsgUmVkaXJlY3Rpb24gYXBwcmVjaWF0ZWQuPGJyPg0KPGJyPg0KSSBhbSB0aGUgYXV0aG9yIG9m IDxhIGhyZWY9Ind3dy5kZGN0b29sLmNvbSI+ZGRjdG9vbDwvYT4sIGEgdXRpbGl0eSB0byBtYW5p cHVsYXRlIG1vbml0b3Igc2V0dGluZ3MgdXNpbmcgRERDL0NJIG92ZXIgSTJDLg0KPGJyPg0KPGJy Pg0KTXkgdW5kZXJzdGFuZGluZyBpcyB0aGF0IGFtZGdwdSBwcm92aWRlcyAvZGV2L2kyYy0qIGRl dmljZXMgaW4gdGhlIHVzdWFsIHdheSwgc28gdGhhdCBkZGN0b29sIHNob3VsZCBqdXN0IHdvcmsg d2l0aG91dCBjaGFuZ2VzLiZuYnNwOyBCdXQgb2YgY291cnNlIHRoaXMgbmVlZHMgdG8gYmUgdGVz dGVkLjxicj4NCjxicj4NCkluIHRoaXMgcmVnYXJkIEkgaGF2ZSBhIG51bWJlciBvZiBxdWVzdGlv bnMgYW5kIGEgcmVxdWVzdC48YnI+DQo8YnI+DQpEb2VzIHRoZSBpMmMgaW50ZXJmYWNlIGRlcGVu ZCBpbiBzb21lIHdheSBvbiB3aGV0aGVyIG9uZSBpcyBydW5uaW5nIHRoZSBBTURHUFUtUFJPIGRy aXZlcj88YnI+DQo8YnI+DQo8c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+PG86cD48L286cD48 L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIu MHB0Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOjExLjBwdDtmb250LWZhbWlseTomcXVvdDtDYWxp YnJpJnF1b3Q7LCZxdW90O3NhbnMtc2VyaWYmcXVvdDs7Y29sb3I6IzFGNDk3RCI+Tm8sIGFsdGhv dWdoIHRoZSBQUk8gZHJpdmVyIHVzZXMgYSBuZXdlciBkaXNwbGF5IHN0YWNrIHdoaWNoIGlzIG5v dCB1cHN0cmVhbSB5ZXQgc28gdGhlcmUgbWF5IGJlIHN1YnRsZSBkaWZmZXJlbmNlcy48bzpwPjwv bzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWJvdHRv bToxMi4wcHQiPjxicj4NClRoZSBtb3N0IGN1cnJlbnQgQU1EIGNhcmQgdGhhdCBJIG93biBpbiBh IFI5IDI4MCwgd2hpY2ggaXMgYSBmaXJzdCBnZW5lcmF0aW9uIEdDTiBkZXZpY2UuJm5ic3A7Jm5i c3A7IFBob3Jvbml4IHN1Z2dlc3RzIHRoYXQgZmlyc3QgZ2VuZXJhdGlvbiBHQ04gc3VwcG9ydCBp cyBpbiB0aGUgd29ya3MuJm5ic3A7IFdpbGwgdGhpcyBiZSBzb29uPyZuYnNwOyZuYnNwOyBJZiBu b3QsIHdvdWxkIHRoZSBjdXJyZW50IGRldmVsb3BtZW50IGNvZGUgZm9yIGFtZGdwdSBiZSBzdWZm aWNpZW50IGZvciBtZQ0KIHRvIHRlc3QgdGhlIGkyYyBzdXBwb3J0PyZuYnNwOyZuYnNwOyBJZiBz bywgd2hhdCB3b3VsZCBJIGhhdmUgdG8gZG8gdG8gYnVpbGQgYW5kIGluc3RhbGwgaXQ/PGJyPg0K PGJyPg0KPHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPjxvOnA+PC9vOnA+PC9zcGFuPjwvcD4N CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9tOjEyLjBwdCI+PHNwYW4g c3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7Q2FsaWJyaSZxdW90Oywm cXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPkJvdGggcmFkZW9uIGFuZCBhbWRn cHUgc3VwcG9ydCB0aGUgc2FtZSBpMmMgaW50ZXJmYWNlcy4mbmJzcDsgSXQgZG9lc27igJl0IG1h dHRlciB3aGljaCBkcml2ZXIgeW91IHVzZS4mbmJzcDsgVGhlIGN1cnJlbnQgU0kgc3VwcG9ydCBp biBhbWRncHUNCiBzdXBwb3J0cyBpMmMuPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9 Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1ib3R0b206MTIuMHB0Ij48YnI+DQpPciBzaG91bGQg SSBqdXN0IHBsdW5rIGRvd24gYSBmZXcgZG9sbGFycyBmb3IgYSByZWxhdGl2ZWx5IGluZXhwZW5z aXZlIFI3IDI2MCwgd2hpY2ggSSB1bmRlcnN0YW5kIGlzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVu dCBhbWRncHU/PGJyPg0KPGJyPg0KPHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPjxvOnA+PC9v OnA+PC9zcGFuPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tYm90dG9t OjEyLjBwdCI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMS4wcHQ7Zm9udC1mYW1pbHk6JnF1b3Q7 Q2FsaWJyaSZxdW90OywmcXVvdDtzYW5zLXNlcmlmJnF1b3Q7O2NvbG9yOiMxRjQ5N0QiPlVwIHRv IHlvdS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i bWFyZ2luLWJvdHRvbToxMi4wcHQiPjxicj4NCkFsdGVybmF0aXZlbHksIGlmIHNvbWVvbmUgcnVu bmluZyB0aGUgYW1kZ3B1IGRyaXZlciB3b3VsZCBiZSB3aWxsaW5nIHRvIGluc3RhbGwgYW5kIHRl c3QgZGRjdG9vbCBvbiB0aGVpciBzeXN0ZW0gSSdkIGJlIG1vc3QgYXBwcmVjaWF0aXZlLiZuYnNw OyBUaGUgZ2l0IHJlcG9zaXRvcnkgaXMgaGVyZToNCjxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNv bS9yb2Nrb3dpdHovZGRjdG9vbCI+aHR0cHM6Ly9naXRodWIuY29tL3JvY2tvd2l0ei9kZGN0b29s PC9hPiwgYW5kIHRoZXJlJ3MgZXh0ZW5zaXZlIGRvY3VtZW50YXRpb24gb24gdGhlIHdlYnNpdGUs DQo8YSBocmVmPSJodHRwOi8vd3d3LmRkY3Rvb2wuY29tIj53d3cuZGRjdG9vbC5jb208L2E+LiA8 YnI+DQo8YnI+DQpBIGNvdXBsZSBvZiBjb21tYW5kIGxpbmUgb3B0aW9ucyBvZiBub3RlOiA8YnI+ DQo8YnI+DQombmJzcDsgJnF1b3Q7LS1zdGF0cyZxdW90OyByZXBvcnRzIGV4dGVuc2l2ZSBwZXJm b3JtYW5jZSBzdGF0aXN0aWNzLCBpbmNsdWRpbmcgY291bnRzIG9mIGkyYyByZXRyaWVzIHJlcXVp cmVkDQo8YnI+DQombmJzcDsgJnF1b3Q7LS1kZGMmcXVvdDsmbmJzcDsgcmVwb3J0cyBEREMgcHJv dG9jb2wgZGF0YSBlcnJvcnMgPGJyPg0KPGJyPg0KSWYgZGRjdG9vbCBpbnN0YWxscyBidXQgZG9l cyBub3Qgc2VlbSB0byBiZSB3b3JraW5nLCBjb21tYW5kICZxdW90O2RkY3Rvb2wgZW52aXJvbm1l bnQmcXVvdDsgbWF5IHByb3ZpZGUgc29tZSBjbHVlcy4NCjxicj4NCjxicj4NCkZpbmFsbHksIHRo ZSAmcXVvdDtkZGN0b29sIGludGVycm9nYXRlJnF1b3Q7IGNvbW1hbmQgZnVsbHkgZXhlcmNpc2Vz IGRkY3Rvb2wgYW5kIHByb2JlcyB0aGUgaTJjIGVudmlyb25tZW50LiZuYnNwOyBEZXBlbmRpbmcg b24gcGVybWlzc2lvbnMsIHJ1bm5pbmcgaXQgYXMgcm9vdCBtYXkgcHJvdmlkZSBhZGRpdGlvbmFs IGRldGFpbC4mbmJzcDsgSWYgeW91IGNhbiBjYXB0dXJlIHRoZSBvdXRwdXQgYW5kIHNlbmQgaXQg dG8gbWUgdGhhdCB3b3VsZCBiZSBtb3N0IGhlbHBmdWwuJm5ic3A7DQo8YnI+DQo8YnI+DQpUaGFu a3MgaW4gYWR2YW5jZSwgPGJyPg0KU2FuZm9yZCBSb2Nrb3dpdHo8bzpwPjwvbzpwPjwvcD4NCjwv ZGl2Pg0KPC9kaXY+DQo8L2JvZHk+DQo8L2h0bWw+DQo= --_000_MWHPR12MB1694331FD3523A049BF5ADABF7FE0MWHPR12MB1694namp_-- --===============0722734999== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBt YWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg== --===============0722734999==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sanford Rockowitz Subject: Re: need guidance re amdgpu i2c Date: Tue, 13 Sep 2016 16:43:31 -0400 Message-ID: <57D864F3.8090202@minsoft.com> References: <57D7D925.4050306@minsoft.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: aelaric , amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org YWVsYXJpYywKCkkgd2lsbCBqb2luIHRoZSBJUkMgY2hhbm5lbC4gCgpBcyB0byB1c2VzIHRoYXQg eW91IHNlZSBmb3IgZGRjdG9vbCwgdGhlIHNob3J0IGFuc3dlciBpcyB0aGF0IGl0J3Mgbm90Cmdv aW5nIHRvIGJlIG9mIGhlbHAgKGV4Y2VwdCBwb3NzaWJseSBmb3IgdW5kZXJzY2FuKS4KCk5vdyBm b3IgdGhlIGxvbmcgYW5zd2VyLgoKVG8gYWRkcmVzcyB5b3VyIHRob3VnaHQgdGhhdCBkZGN0b29s IG1pZ2h0IGJlIGFibGUgdG8gaGVscCB3aXRoIG1vbml0b3IKc3dpdGNoaW5nIGFuZCByZXNvbHV0 aW9uLCBhIGJpdCBvZiBiYWNrZ3JvdW5kIHdpbGwgc2ltcGxpZnkgbXkKYW5zd2Vycy4gICBGb3Jn aXZlIG1lIGlmIHRoaXMgaXMgYWxsIGtub3duLiAgTW9uaXRvcnMgcHJvdmlkZSBhIHNldCBvZgpj b250cm9scywgcmVmZXJyZWQgdG8gYXMgVmlydHVhbCBDb250cm9sIFBhbmVsIChWQ1ApIEZlYXR1 cmVzLiAgVGhlc2UKYXJlIGRlZmluZWQgaW4gVkVTQSdzIE1vbml0b3IgQ29udHJvbCBhbmQgQ29t bWFuZCBTZXQgKE1DQ1MpCnNwZWNpZmljYXRpb24uICAgVHlwaWNhbGx5LCB0aGVzZSBhcmUgY29t bXVuaWNhdGVkIGJldHdlZW4gbW9uaXRvciBhbmQKaG9zdCB1c2luZyB0aGUgRERDL0NJIHByb3Rv Y29sIG9uIGFkZHJlc3MgeDM3IG9mIHRoZSBJMkMgYnVzLiAKKEFsdGVybmF0aXZlbHksIHRoZSBj b21tYW5kcyBtYXkgYmUgY29tbXVuaWNhdGVkIG92ZXIgVVNCLCBidXQgdGhhdCBpcwpub3QgcmVs ZXZhbnQgaGVyZS4pICBNb25pdG9ycyB0eXBpY2FsbHkgaW1wbGVtZW50IG9ubHkgYSBzbWFsbCBz dWJzZXQgb2YKZGVmaW5lZCBjb250cm9scy4gICBUaGVyZSBpcyBhIHJhbmdlIG9mIG51bWJlcnMg cmVzZXJ2ZWQgZm9yCm1hbnVmYWN0dXJlciBzcGVjaWZpYyBjb250cm9scy4gIGRkY3Rvb2wgY2Fu IHJlYWQgYW5kIHNldCB0aGVzZSwgYnV0CmRvZXNuJ3Qga25vdyBob3cgdG8gaW50ZXJwcmV0IHRo ZW0uCgpMYXB0b3BzIGRvIG5vdCB1c2UgdGhlIEkyQyBidXMgdG8gY29tbXVuaWNhdGUgVkNQIGZl YXR1cmVzLiAgIFRoZSBFRElECmlzIHR5cGljYWxseSBjb21tdW5pY2F0ZWQgb24gYWRkcmVzcyB4 NTAgb2YgdGhlIEkyQyBidXMsIGJ1dCBJJ3ZlIHlldCB0bwpzZWUgYSBsYXB0b3Agd2hlcmUgYWRk cmVzcyB4MzcgZm9yIEREQy9DSSBpcyBpbXBsZW1lbnRlZC4gICBTbyBkZGN0b29sCmNhbiByZWFk IHRoZSBsYXB0b3AgbW9uaXRvcidzIEVESUQsIGJ1dCB0aGF0J3MgaXQuCgpWQ1AgRmVhdHVyZSBD b2RlIHg2MCBhbGxvd3MgZm9yIGNoYW5naW5nIHRoZSBpbnB1dCBzb3VyY2Ugb24gYSBtb25pdG9y LAplLmcuIERWSS0xLCBEVkktMi4gIEJ1dCB0aGF0IHdpbGwgbm90IGFkZHJlc3Mgd2hhdCB5b3Ug d2FudCB0byBkbywgd2hpY2gKaXMgdG8gY2hhbmdlIHdoZXJlIHRoZSBsYXB0b3AgZGlyZWN0cyBp dHMgb3V0cHV0LiAKCkFzIGZvciBjb250cm9sbGluZyB1bmRlcnNjYW4gb24gYW4gZXh0ZXJuYWwg bW9uaXRvciwgdGhlcmUncyBzb21lIGhvcGUuIApWQ1AgRmVhdHVyZSBDb2RlIHhEQSAoU2NhbiBt b2RlKSBhbGxvd3MgZm9yIHNldHRpbmcgTm9ybWFsIE9wZXJhdGlvbiwKVW5kZXJzY2FuLCBPdmVy c2Nhbiwgb3IgV2lkZXNjcmVlbi4gIEkgYmVsaWV2ZSB0aGlzIGlzIHdoYXQgeW91IGFyZQpsb29r aW5nIGZvci4gIEhvd2V2ZXIsIHRoaXMgY29udHJvbCBpcyBub3Qgd2lkZWx5IGltcGxlbWVudGVk LiAgIE9mIDQKbW9uaXRvcnMgSSBqdXN0IGNoZWNrZWQsIG5vbmUgcHJvdmlkZSB0aGlzIGZlYXR1 cmUuICAgR2VuZXJhbGx5CnNwZWNraW5nLCBpZiBzb21ldGhpbmcgY2FuIGJlIHF1ZXJpZWQgb3Ig c2V0IHVzaW5nIHRoZSBPbiBTY3JlZW4gRGlzcGxheQooT0NEKSB0aGVyZSB3aWxsIGFsc28gYmUg YWJpbGl0eSB0byByZWFkIGFuZCBzZXQgdGhpcyB2YWx1ZSB1c2luZyBhIFZDUApmZWF0dXJlLCBi dXQgaXQgbWF5IGJlIGltcGxlbWVudGVkIHVzaW5nIGEgbWFudWZhY3R1cmVyIHNwZWNpZmljIGNv ZGUuIAoKUmVnYXJkcywKU2FuZm9yZAoKCgpPbiAwOS8xMy8yMDE2IDEwOjUwIEFNLCBhZWxhcmlj IHdyb3RlOgo+IFNhbmZvcmQsCj4KPiBXZSBoYXZlIHN0YXJ0ZWQgYW4gSVJDIGNoYW5uZWwgZm9y IHRoZSBzdXBwb3J0IG9mIGFtZGdwdS9hbWRncHUtcHJvLgo+IChGcmVlbm9kZSwgI2FtZGdwdSkg V2UgYXJlIGN1cnJlbnRseSBpbiBkaXJlIG5lZWQgb2YgYSB3YXkgdG8gc3dpdGNoCj4gdG8gSERN SSBtb25pdG9yIGFuZCBkZWFjdGl2YXRlIExEUyBzY3JlZW4gb24gbGFwdG9wcyB3aGlsZSB1c2lu Zwo+IGFtZGdwdS4gV2UgY291bGQgcmVhbGx5IHVzZSB5b3UgaW4gdGhlIGNoYW5uZWwsIHRvIHBy b3ZpZGUgeW91IHdpdGgKPiB0ZXN0aW5nIHJlc3VsdHMsIGFuZCBhbHNvIEkgYW0gaG9waW5nIHlv dSBjYW4gaGVscCB1cyByZXNvbHZlIG91cgo+IG1vbml0b3Igc3dpdGNoaW5nL3Jlc29sdXRpb24g cHJvYmxlbXMuCj4KPiBXZSB3b3VsZCBiZSBtb3JlIHRoYW4gZ2xhZCB0byBydW4gZGRjdG9vbCBv biBvdXIgaGRtaSBzZXR1cHMgYXMgcm9vdAo+IGFuZCBwcm92aWRlIHlvdSB3aXRoIHRoZSByZXN1 bHRzLgo+Cj4gQWxzbywgY2FuIGRkY3Rvb2wgYWZmZWN0IG92ZXJzY2FuL3VuZGVyc2NhbiBzZXR0 aW5ncyBvbiBhbiBoZG1pIG1vbml0b3I/Cj4KPiBLaW5kIFJlZ2FyZHMsCj4KPiAtLWFlbGFyaWMK Pgo+IE9uIDA5LzEzLzIwMTYgMDY6NDcgQU0sIFNhbmZvcmQgUm9ja293aXR6IHdyb3RlOgo+PiBG aXJzdCwgYXBvbG9naWVzIGluIGFkdmFuY2UgaWYgdGhpcyBpcyBub3QgdGhlIG1vc3QgYXBwcm9w cmlhdGUgbGlzdCBmb3IKPj4gbXkgcXVlc3Rpb25zLiAgUmVkaXJlY3Rpb24gYXBwcmVjaWF0ZWQu Cj4+Cj4+IEkgYW0gdGhlIGF1dGhvciBvZiBkZGN0b29sIDx3d3cuZGRjdG9vbC5jb20+LCBhIHV0 aWxpdHkgdG8gbWFuaXB1bGF0ZQo+PiBtb25pdG9yIHNldHRpbmdzIHVzaW5nIEREQy9DSSBvdmVy IEkyQy4KPj4KPj4gTXkgdW5kZXJzdGFuZGluZyBpcyB0aGF0IGFtZGdwdSBwcm92aWRlcyAvZGV2 L2kyYy0qIGRldmljZXMgaW4gdGhlIHVzdWFsCj4+IHdheSwgc28gdGhhdCBkZGN0b29sIHNob3Vs ZCBqdXN0IHdvcmsgd2l0aG91dCBjaGFuZ2VzLiAgQnV0IG9mIGNvdXJzZQo+PiB0aGlzIG5lZWRz IHRvIGJlIHRlc3RlZC4KPj4KPj4gSW4gdGhpcyByZWdhcmQgSSBoYXZlIGEgbnVtYmVyIG9mIHF1 ZXN0aW9ucyBhbmQgYSByZXF1ZXN0Lgo+Pgo+PiBEb2VzIHRoZSBpMmMgaW50ZXJmYWNlIGRlcGVu ZCBpbiBzb21lIHdheSBvbiB3aGV0aGVyIG9uZSBpcyBydW5uaW5nIHRoZQo+PiBBTURHUFUtUFJP IGRyaXZlcj8KPj4KPj4gVGhlIG1vc3QgY3VycmVudCBBTUQgY2FyZCB0aGF0IEkgb3duIGluIGEg UjkgMjgwLCB3aGljaCBpcyBhIGZpcnN0Cj4+IGdlbmVyYXRpb24gR0NOIGRldmljZS4gICBQaG9y b25peCBzdWdnZXN0cyB0aGF0IGZpcnN0IGdlbmVyYXRpb24gR0NOCj4+IHN1cHBvcnQgaXMgaW4g dGhlIHdvcmtzLiAgV2lsbCB0aGlzIGJlIHNvb24/ICAgSWYgbm90LCB3b3VsZCB0aGUgY3VycmVu dAo+PiBkZXZlbG9wbWVudCBjb2RlIGZvciBhbWRncHUgYmUgc3VmZmljaWVudCBmb3IgbWUgdG8g dGVzdCB0aGUgaTJjCj4+IHN1cHBvcnQ/ICAgSWYgc28sIHdoYXQgd291bGQgSSBoYXZlIHRvIGRv IHRvIGJ1aWxkIGFuZCBpbnN0YWxsIGl0Pwo+Pgo+PiBPciBzaG91bGQgSSBqdXN0IHBsdW5rIGRv d24gYSBmZXcgZG9sbGFycyBmb3IgYSByZWxhdGl2ZWx5IGluZXhwZW5zaXZlCj4+IFI3IDI2MCwg d2hpY2ggSSB1bmRlcnN0YW5kIGlzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudCBhbWRncHU/Cj4+ Cj4+IEFsdGVybmF0aXZlbHksIGlmIHNvbWVvbmUgcnVubmluZyB0aGUgYW1kZ3B1IGRyaXZlciB3 b3VsZCBiZSB3aWxsaW5nIHRvCj4+IGluc3RhbGwgYW5kIHRlc3QgZGRjdG9vbCBvbiB0aGVpciBz eXN0ZW0gSSdkIGJlIG1vc3QgYXBwcmVjaWF0aXZlLiAgVGhlCj4+IGdpdCByZXBvc2l0b3J5IGlz IGhlcmU6IGh0dHBzOi8vZ2l0aHViLmNvbS9yb2Nrb3dpdHovZGRjdG9vbCwgYW5kCj4+IHRoZXJl J3MgZXh0ZW5zaXZlIGRvY3VtZW50YXRpb24gb24gdGhlIHdlYnNpdGUsIHd3dy5kZGN0b29sLmNv bS4KPj4KPj4gQSBjb3VwbGUgb2YgY29tbWFuZCBsaW5lIG9wdGlvbnMgb2Ygbm90ZToKPj4KPj4g ICAiLS1zdGF0cyIgcmVwb3J0cyBleHRlbnNpdmUgcGVyZm9ybWFuY2Ugc3RhdGlzdGljcywgaW5j bHVkaW5nIGNvdW50cwo+PiBvZiBpMmMgcmV0cmllcyByZXF1aXJlZAo+PiAgICItLWRkYyIgIHJl cG9ydHMgRERDIHByb3RvY29sIGRhdGEgZXJyb3JzCj4+Cj4+IElmIGRkY3Rvb2wgaW5zdGFsbHMg YnV0IGRvZXMgbm90IHNlZW0gdG8gYmUgd29ya2luZywgY29tbWFuZCAiZGRjdG9vbAo+PiBlbnZp cm9ubWVudCIgbWF5IHByb3ZpZGUgc29tZSBjbHVlcy4KPj4KPj4gRmluYWxseSwgdGhlICJkZGN0 b29sIGludGVycm9nYXRlIiBjb21tYW5kIGZ1bGx5IGV4ZXJjaXNlcyBkZGN0b29sIGFuZAo+PiBw cm9iZXMgdGhlIGkyYyBlbnZpcm9ubWVudC4gIERlcGVuZGluZyBvbiBwZXJtaXNzaW9ucywgcnVu bmluZyBpdCBhcwo+PiByb290IG1heSBwcm92aWRlIGFkZGl0aW9uYWwgZGV0YWlsLiAgSWYgeW91 IGNhbiBjYXB0dXJlIHRoZSBvdXRwdXQgYW5kCj4+IHNlbmQgaXQgdG8gbWUgdGhhdCB3b3VsZCBi ZSBtb3N0IGhlbHBmdWwuCj4+Cj4+IFRoYW5rcyBpbiBhZHZhbmNlLAo+PiBTYW5mb3JkIFJvY2tv d2l0ego+Pgo+Pgo+Pgo+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwo+PiBhbWQtZ2Z4IG1haWxpbmcgbGlzdAo+PiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNr dG9wLm9yZwo+PiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2FtZC1nZngKPj4KPgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwo+IEZSRUUgT05MSU5FIFBIT1RPU0hBUklORyAtIFNoYXJlIHlv dXIgcGhvdG9zIG9ubGluZSB3aXRoIHlvdXIgZnJpZW5kcwo+IGFuZCBmYW1pbHkhCj4gVmlzaXQg aHR0cDovL3d3dy5pbmJveC5jb20vcGhvdG9zaGFyaW5nIHRvIGZpbmQgb3V0IG1vcmUhCj4KPgo+ CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdm eCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg==