From mboxrd@z Thu Jan 1 00:00:00 1970 From: Charles Keepax Subject: Re: Wolfson 5102 on Beaglebone Black using ALSA Date: Mon, 30 May 2016 18:19:28 +0100 Message-ID: <20160530171928.GH20422@localhost.localdomain> References: <4BEB79E8-7315-48DF-BBB6-E944114621BF@gmail.com> <47b8f68c-12be-adb5-1e29-7ca19feac581@ti.com> <20160522131854.GT1646@localhost.localdomain> <685DDADE-5203-4557-9AD3-54856B718938@gmail.com> <20160530083544.GG20422@localhost.localdomain> <83AF028C-B629-4E67-875C-5971DEDDAF77@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx0b-001ae601.pphosted.com (mx0b-001ae601.pphosted.com [67.231.152.168]) by alsa0.perex.cz (Postfix) with ESMTP id B52842607F7 for ; Mon, 30 May 2016 19:19:41 +0200 (CEST) Content-Disposition: inline In-Reply-To: <83AF028C-B629-4E67-875C-5971DEDDAF77@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: Clark Dunson Cc: Peter Ujfalusi , alsa-devel@alsa-project.org List-Id: alsa-devel@alsa-project.org T24gTW9uLCBNYXkgMzAsIDIwMTYgYXQgMDg6MTg6MTdBTSAtMDcwMCwgQ2xhcmsgRHVuc29uIHdy b3RlOgo+ID4gVGhlcmUgYXJlIHNvbWUgaG9vcHMgdG8ganVtcCB0aHJvdWdoIHRvIGdldCBhY2Nl c3MgdG8gdGhlCj4gPiBuZWNlc3NhcnkgY29tcGlsZXJzIGV0Yy4gZm9yIHRoZSBEU1AsIGFsdGhv dWdoIGFnYWluIEpvYW8gd2hvIEkKPiA+IENDZWQgb24geW91ciBvdGhlciBlbWFpbCB3b3VsZCBi ZSBhIGdvb2QgcGxhY2UgdG8gc3RhcnQgdGhlCj4gPiBwcm9jZXNzIG9mIGdldHRpbmcgYWNjZXNz IHRvIHRoYXQuCj4gCj4gVGhhbmsgeW91LCB0aGlzIHBhcnQgbWF5IGNvbWUgbGF0ZXIgdGhpcyB5 ZWFyLgo+IAo+ID4gWWVhaCBwbGVhc2UgYXZvaWQgZG9pbmcgdGhpcywgdGhlIGRyaXZlciBzaG91 bGQgc3VwcG9ydCBhbGwgdGhlCj4gPiBmZWF0dXJlcyB5b3UgcmVxdWlyZSBmcm9tIHRoZSBzb3Vu ZCBvZiB0aGluZ3MuIFRoZXJlIHNob3VsZCBiZSBubwo+ID4gbmVlZCB0byBoYXJkIGNvZGUgcmVn aXN0ZXIgd3JpdGVzLgo+ID4gCj4gPiBXaGF0IHNvcnQgb2YgdGhpbmdzIGFyZSB5b3Ugc2V0dGlu ZyB1cCB3aXRoIHRoZXNlIHJlZ2lzdGVyCj4gPiB3cml0ZXM/IExldHMgc2VlIGlmIEkgY2FuIHBv aW50IHlvdSBpbiB0aGUgZGlyZWN0aW9uIG9mIHRoZQo+ID4gY29ycmVjdCBwbGFjZSB0byBwdXQg c29tZSBvZiB0aG9zZS4KPiAKPiBUaGFua3MhCj4gCj4gVGhlIGNsb2NraW5nOgo+IAo+IHJlZ21h cF93cml0ZShhcml6b25hLT5yZWdtYXAsIEFSSVpPTkFfQ0xPQ0tfMzJLXzEsIDB4MDAwNDIpOyAg Ly8gVXNlIFN5c2NsaywgRGVmYXVsdCA9IDB4MDA0MQoKQWggdGhhdCBvbmUsIHllYWggdGhhdCBp cyBhIHByb2JsZW0uIEdlbmVyYWxseSB2ZXJ5IGZldyBvZiBvdXIKY3VzdG9tZXJzIHVzZSB0aGUg c3lzdGVtIHdpdGhvdXQgYSAzMmsgY2xvY2sgb24gTUNMSzIuIFRoZXJlIGlzCmluZGVlZCBubyB3 YXkgdG8gc3BlY2lmeSB0aGlzIHJpZ2h0IG5vdyBvdGhlciB0aGFuIHRoaXMgaGFjay4gSQphbSB3 b3JraW5nIG9uIGEgc2VyaWVzIG9mIGNsb2NraW5nIHBhdGNoZXMgd2hpY2ggeW91IHJlZmVyIHRv IHRoZQpiaW5kaW5nIGRvYyBvbiBiZWxvdyBidXQgdGhvc2UgYXJlIGdvaW5nIHRvIHRha2UgYSB3 aGlsZSB0byBnZXQKbWVyZ2VkLiBUaGUgaXNzdWUgaXMgdGhhdCB0aGUgY2xvY2tpbmcgZnJhbWV3 b3JrIHJlYWxseSBkb2Vzbid0CnBsYXkgbmljZSB3aXRoIHRoZSBTUEkgZnJhbWV3b3JrIGF0IHRo aXMgcG9pbnQgaW4gdGltZSBhbmQgdGhhdApuZWVkcyB0byBnZXQgc29ydGVkIGJlZm9yZSBJIGNh biBtZXJnZSB0aGVtLiBBcmUgeW91IGxvb2tpbmcgdG8KdXBzdHJlYW0gc3VwcG9ydCBmb3IgdGhp cyBib2FyZCBhcyB5b3UgZGV2ZWxvcGUgaXQ/IFdlIG1pZ2h0IGhhdmUKdG8gaGF2ZSBhIHRoaW5r IGFib3V0IGhvdyB3ZSBhcmUgZ29pbmcgdG8gc3VwcG9ydCB0aGlzIG9uZS4KCj4gcmVnbWFwX3dy aXRlKGFyaXpvbmEtPnJlZ21hcCwgQVJJWk9OQV9TWVNURU1fQ0xPQ0tfMSwgMHgwMjAwKTsgLy8g VXNlIE1DTEsxLCBhbmQgMjQuNTc2TUh6IGZyb20gQkJCIE1jQVNQLCAgRGVmYXVsdCA9IDB4MDMw NCAKCkZvciB0aGlzIG9uZSB5b3UganVzdCBuZWVkIHRvIGFkZCB0aGlzIGNhbGwgdG8geW91ciBt YWNoaW5lCmRyaXZlciAobGF0ZSBwcm9iZSBpcyB1c3VhbGx5IGEgZ29vZCBwbGFjZSk6CgpzbmRf c29jX2NvZGVjX3NldF9zeXNjbGsoY29kZWMsIEFSSVpPTkFfQ0xLX1NZU0NMSywKCQkJQVJJWk9O QV9DTEtfU1JDX01DTEsxLCAyNDU3NjAwMCwKCQkJU05EX1NPQ19DTE9DS19JTik7CgpBbHRob3Vn aCBhcHByZWNpYXRlIHRoYXQgaXMgYSBsaXR0bGUgaGFyZGVyIGlmIHlvdSBhcmUgdXNpbmcKc2lt cGxlIGNhcmQuCgo+IAo+IFRoZXNlIHdvdWxkIHNlZW0gdG8gYmUgdGhlIHJlbGV2YW50IGRldmlj ZSB0cmVlIGVudHJpZXMgZnJvbSBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvbWZk L2FyaXpvbmEudHh0Ogo+IAo+ICAgLSBjbG9ja3M6IFNob3VsZCByZWZlcmVuY2UgdGhlIGNsb2Nr cyBzdXBwbGllZCBvbiBNQ0xLMSBhbmQgTUNMSzIKPiAgIC0gY2xvY2stbmFtZXM6IFNob3VsZCBj b250YWlucyB0d28gc3RyaW5nczoKPiAgICAgICAibWNsazEiIGZvciB0aGUgY2xvY2sgc3VwcGxp ZWQgb24gTUNMSzEsIHJlY29tbWVuZGVkIHRvIGJlIGEgaGlnaAo+ICAgICAgIHF1YWxpdHkgYXVk aW8gcmVmZXJlbmNlIGNsb2NrCj4gICAgICAgIm1jbGsyIiBmb3IgdGhlIGNsb2NrIHN1cHBsaWVk IG9uIE1DTEsyLCByZWNvbW1lbmRlZCB0byBiZSBhbiBhbHdheXMgb24KPiAgICAgICAzMmsgY2xv Y2sKPiAKPiBTdGlsbCB0cnlpbmcgdG8gZmlndXJlIG91dCBob3cgdG8gc3BlY2lmeSB0aGVzZS4g IEkgaGF2ZSBwYXN0ZWQgb3VyIGRldmljZSB0cmVlIHRvIHRoZSBlbmQgb2YgdGhpcyBlbWFpbC4g IChPaCwgZ3BpbyBmb3IgQkJCIE1jQVNQIGNsb2NrIGlzIGRlbGliZXJhdGVseSByb3V0ZWQgYXdh eSBmcm9tIGdwaW8xXzI3LCBiZWNhdXNlIHNvbWVob3cgd2UgYXJlIG5vdCBjb252aW5jaW5nIHRo ZSBkcml2ZXIgdG8gZW5hYmxlIGl0LCBhbmQgc28gd2UgaGF2ZSBhIGdwaW9fc2V0X3ZhbHVlKE1Z X0NMT0NLX0dQSU9fRU5BQkxFLDEpOyBpbiBhcml6b25hLWNvcmUgcHJvYmUgdW50aWwgd2UgZmln dXJlIG91dCBob3cuCgpEaWRuJ3QgYWN0dWFsbHkgdGhpbmsgdGhlc2Ugd2hlcmUgbWVyZ2VkIHll dCwgb2sgd2VsbC4gVGhlCmJpbmRpbmcgaXMgZ29vZCBidXQgdGhlIGRyaXZlciBoYXMgbm8gc3Vw cG9ydCBmb3IgaXQgeWV0LgoKPiAKPiA+PiBXZSBoYWQgdG8gc2ltcGx5IGRpc2ludml0ZSBleHRj b24tYXJpem9uYSBmcm9tIHRoZSBwYXJ0eQo+ID4+IHRob3VnaC4gIE9uIGJvdGggdGhlIFdNNTEw Mi02MjcxLUNTMTM3LU0tU0NILVJFVjIuMDMgYW5kIG91cgo+ID4+IHByb3RvYm9hcmQsIEpBQ0tE RVQgaXMgYW4gSVJRIGdvbmUgd2lsZC4gIE9uIHRoZSBXb2xmc29uIGJvYXJkLAo+ID4+IGluc2Vy dGluZyBteSBoZWFkcGhvbmVzIGludG8gdGhlIGphY2sgc2h1dCBpdCB1cC4gIEJ1dCBvbiBvdXIK PiA+PiBwcm90b2JvYXJkLCB3aGVyZSB3ZSBsZWZ0IHRoYXQgcGluIHVuY29ubmVjdGVkLCB3ZSBm b3VuZCB0aGF0Cj4gPj4gdGhlIHByb2JlIG9mIGV4dGNvbi1hcml6b25hIGhhcmQgZW5hYmxlcyBK QUNLREVULgo+ID4+IAo+ID4gSSBhbSBzdXJwcmlzZWQgeW91IGFyZSBzZWVpbmcgaXNzdWVzIG9u IG9uZSBvZiBvdXIgYm9hcmRzLCB0aGV5Cj4gPiBhcmUgYWxsIGZhaXJseSB3ZWxsIHRlc3RlZCBo ZXJlLiBJIHdvdWxkIHF1aXRlIGxpa2UgdG8gc2VlIGEKPiA+IGtlcm5lbCBsb2cgb24gdGhhdCBv bmUgaWYgSSBjYW4/Cj4gCj4gT2theSwgSeKAmWxsIGhvb2sgdXAgdGhlIGRldiBib2FyZCwgbGlr ZWx5IFRodXJzLUZyaSBhZnRlciB3ZSBjb21wbGV0ZQo+IGJvYXJkIGJyaW5nIHVwLgo+IAo+ID4g QXBhcnQgZnJvbSB0aGF0LCB0aGlzIGFsbCBzZWVtcyByZWFzb25hYmxlLCB0aGUgZXh0Y29uIGRy aXZlcgo+ID4gZXhpc3RzIHRvIGNvbnRyb2wgdGhlIGphY2sgZGV0ZWN0aW9uLiBJZiB0aGF0IGlz IG5vdCB3aXJlZCB1cCBvbgo+ID4geW91ciBzeXN0ZW0gdGhlbiBub3QgYnVpbGRpbmcgaW4gdGhp cyBwYXJ0IG9mIHRoZSBzeXN0ZW0gc2VlbXMKPiA+IHRoZSBjb3JyZWN0IHJlc3BvbnNlLgo+ID4g Cj4gPiBUaGFua3MsCj4gPiBDaGFybGVzCj4gCj4gVGhhbmsgeW91LCBDbGFyay4KPiAKPiBEZXZp Y2UgVHJlZSBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiAKPiAvKgo+ ICAqIENvcHlyaWdodCAoQykgMjAxMiBUZXhhcyBJbnN0cnVtZW50cyBJbmNvcnBvcmF0ZWQgLSBo dHRwOi8vd3d3LnRpLmNvbS8KPiAgKgo+ICAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Cj4gICogaXQgdW5kZXIgdGhl IHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgYXMKPiAg KiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4KPiAgKi8KPiAvZHRz LXYxLzsKPiAKPiAjaW5jbHVkZSAiYW0zM3h4LmR0c2kiCj4gI2luY2x1ZGUgImFtMzM1eC1ib25l LWNvbW1vbi5kdHNpIgo+ICNpbmNsdWRlICJkdC1iaW5kaW5ncy9tZmQvYXJpem9uYS5oIgo+IAo+ IC8gewo+IAltb2RlbCA9ICJUSSBBTTMzNXggQmVhZ2xlQm9uZSBCbGFjayI7Cj4gCWNvbXBhdGli bGUgPSAidGksYW0zMzV4LWJvbmUtYmxhY2siLCAidGksYW0zMzV4LWJvbmUiLCAidGksYW0zM3h4 IjsKPiAKPiAKPiBsZWRzIHsKPiAgICAgIHBpbmN0cmwtbmFtZXMgPSAiZGVmYXVsdCI7Cj4gICAg ICBwaW5jdHJsLTAgPSA8JmxlZF9waW5zX2RlZmF1bHQ+Owo+ICAgICAgY29tcGF0aWJsZSA9ICJn cGlvLWxlZHMiOwo+IAo+ICAgICAgbGVkQDEgewo+ICAgICAgCSAgIGxhYmVsPSAibGVkX2lyIjsK PiAJICAgZ3Bpb3MgPSA8JmdwaW8wIDI2IEdQSU9fQUNUSVZFX0hJR0g+Owo+IAkgICBkZWZhdWx0 LXN0YXRlID0gIm9mZiI7Cj4gCSAgIH07Cj4gCj4gICAgICBsZWRAMiB7Cj4gICAgICAJICAgbGFi ZWw9ICJsZWRfcmVkIjsKPiAJICAgZ3Bpb3MgPSA8JmdwaW8xIDE0IEdQSU9fQUNUSVZFX0hJR0g+ Owo+IAkgICBkZWZhdWx0LXN0YXRlID0gIm9mZiI7Cj4gCSAgIH07Cj4gfTsKPiAKPiAKPiAKPiBs ZG8xODogbGRvMTggewo+ICAgICAgIGNvbXBhdGlibGUgPSAicmVndWxhdG9yLWZpeGVkIjsKPiAg ICAgICByZWd1bGF0b3ItbmFtZSA9ICJEQ18xVjgiOwo+ICAgICAgIHJlZ3VsYXRvci1taW4tbWlj cm92b2x0ID0gPDE4MDAwMDA+Owo+ICAgICAgIHJlZ3VsYXRvci1tYXgtbWljcm92b2x0ID0gPDE4 MDAwMDA+Owo+ICAgICAgIGVuYWJsZS1hY3RpdmUtaGlnaDsKPiAgICAgICByZWd1bGF0b3ItYWx3 YXlzLW9uOwo+ICAgICAgICAgfTsKPiAKPiBsZG81MDogbGRvNTAgeyAvKiBCQkIgVkNDXzVWICov Cj4gICAgICAgY29tcGF0aWJsZSA9ICJyZWd1bGF0b3ItZml4ZWQiOwo+ICAgICAgIHJlZ3VsYXRv ci1uYW1lID0gIkRDXzVWMCI7Cj4gICAgICAgcmVndWxhdG9yLW1pbi1taWNyb3ZvbHQgPSA8NTAw MDAwMD47Cj4gICAgICAgcmVndWxhdG9yLW1heC1taWNyb3ZvbHQgPSA8NTAwMDAwMD47Cj4gICAg ICAgZW5hYmxlLWFjdGl2ZS1oaWdoOwo+ICAgICAgIHJlZ3VsYXRvci1hbHdheXMtb247Cj4gICAg ICAgICB9Owo+IAo+IGNsa19hdWRpb19maXhlZDogY2xrX2F1ZGlvX2ZpeGVkIHsKPiAgICAgICAj Y2xvY2stY2VsbHMgPSA8MD47Cj4gICAgICAgY29tcGF0aWJsZSA9ICJmaXhlZC1jbG9jayI7Cj4g ICAgICAgY2xvY2stZnJlcXVlbmN5ID0gPDI0NTc2MDAwPjsKPiB9Owo+IAo+IAo+IGNsa19hdWRp bzogY2xrX2F1ZGlvIHsKPiAgICAgICAjY2xvY2stY2VsbHMgPSA8MD47Cj4gICAgICAgY29tcGF0 aWJsZSA9ICJncGlvLWdhdGUtY2xvY2siOwo+ICAgICAgIGNsb2NrcyA9IDwmY2xrX2F1ZGlvX2Zp eGVkPjsKPiAgICAgICBlbmFibGUtZ3Bpb3MgPSA8JmdwaW8yIDIgR1BJT19BQ1RJVkVfSElHSD47 IC8qIEJlYWdsZUJvbmUgQmxhY2sgQ2xrIGVuYWJsZSBvbiBHUElPMV8yNyAqLwo+IH07Cj4gCj4g Cj4gc291bmQ6IHNvdW5kQDAgewo+ICAgICBzdGF0dXMgPSAib2theSI7Cj4gICAgIGNvbXBhdGli bGUgPSAic2ltcGxlLWF1ZGlvLWNhcmQiOwo+ICAgICBzaW1wbGUtYXVkaW8tY2FyZCxuYW1lID0g IldNNTEwMiI7Cj4gICAgIHNpbXBsZS1hdWRpby1jYXJkLHdpZGdldHMgPQo+ICAgICAgICAgIkxp bmUiLCAiTGluZSBJbiI7Cj4gICAgIHNpbXBsZS1hdWRpby1jYXJkLHJvdXRpbmcgPQo+IAkJCQkg IklOMUwiLCAiTGluZSBJbiIsCj4gCQkJCSAiSU4xUiIsICJMaW5lIEluIiwKPiAJCQkJICJJTjJM IiwgIkxpbmUgSW4iLAo+IAkJCQkgIklOMlIiLCAiTGluZSBJbiIsCj4gCQkJCSAiSU4zTCIsICJM aW5lIEluIiwKPiAJCQkJICJJTjNSIiwgIkxpbmUgSW4iOwo+IC8qCXNpbXBsZS1hdWRpby1jYXJk LGhwLWRldC1ncGlvID0gPCZncGlvMCAxMiBHUElPX0FDVElWRV9ISUdIPjsgLypUUDM4Ki8KPiAg ICAgLypzaW1wbGUtYXVkaW8tY2FyZCxkYWktbGluayB7Ki8KPiAJc2ltcGxlLWF1ZGlvLWNhcmQs Zm9ybWF0ID0gImRzcF9iIjsKPiAJc2ltcGxlLWF1ZGlvLWNhcmQsYml0Y2xvY2stbWFzdGVyID0g PCZzb3VuZF9tYXN0ZXI+Owo+IAlzaW1wbGUtYXVkaW8tY2FyZCxmcmFtZS1tYXN0ZXIgPSA8JnNv dW5kX21hc3Rlcj47Cj4gCXNpbXBsZS1hdWRpby1jYXJkLGNwdSB7Cj4gCQlzb3VuZC1kYWkgPSA8 Jm1jYXNwMD47Cj4gICAgICAgICAgICAgICAgIGNsb2NrcyA9IDwmY2xrX2F1ZGlvPjsKPiAJCS8q Cj4gCQlkYWktdGRtLXNsb3QtbnVtID0gPDY+Owo+IAkJZGFpLXRkbS1zbG90LXdpZHRoID0gPDMy PjsKPiAJCSovCj4gCX07Cj4gCXNvdW5kX21hc3Rlcjogc2ltcGxlLWF1ZGlvLWNhcmQsY29kZWMg ewo+IAkJc291bmQtZGFpID0gPCZ3bTUxMDI+Owo+IAkJY2xvY2tzID0gPCZjbGtfYXVkaW8+Owo+ IAkgICAgICAgIHN5c3RlbS1jbG9jay1pZCA9IDwxPjsgLyogQVJJWk9OQV9DTEtfU1lTQ0xLICov Cj4gCQkvKgo+IAkJZGFpLXRkbS1zbG90LW51bSA9IDw2PjsKPiAJCWRhaS10ZG0tc2xvdC13aWR0 aCA9IDwzMj47Cj4gCQkqLwo+IAl9Owo+ICAgIC8qIH07Ki8KPiAKPiB9Owo+IAo+IH07Cj4gCj4g JmxkbzNfcmVnIHsKPiAJcmVndWxhdG9yLW1pbi1taWNyb3ZvbHQgPSA8MTgwMDAwMD47Cj4gCXJl Z3VsYXRvci1tYXgtbWljcm92b2x0ID0gPDE4MDAwMDA+Owo+IAlyZWd1bGF0b3ItYWx3YXlzLW9u Owo+IH07Cj4gCj4gJm1tYzEgewo+IAl2bW1jLXN1cHBseSA9IDwmdm1tY3NkX2ZpeGVkPjsKPiB9 Owo+IAo+ICZtbWMyIHsKPiAJdm1tYy1zdXBwbHkgPSA8JnZtbWNzZF9maXhlZD47Cj4gCXBpbmN0 cmwtbmFtZXMgPSAiZGVmYXVsdCI7Cj4gCXBpbmN0cmwtMCA9IDwmZW1tY19waW5zPjsKPiAJYnVz LXdpZHRoID0gPDg+Owo+IAlzdGF0dXMgPSAib2theSI7Cj4gfTsKPiAKPiAmYW0zM3h4X3Bpbm11 eCB7Cj4gCj4gCW54cF9oZG1pX2JvbmVsdF9waW5zOiBueHBfaGRtaV9ib25lbHRfcGlucyB7Cj4g CQlwaW5jdHJsLXNpbmdsZSxwaW5zID0gPAo+IAkJMHgxYjAgMHgwMyAgICAgIC8qIHhkbWFfZXZl bnRfaW50cjAsIE9NQVBfTVVYX01PREUzIHwgQU0zM1hYX1BJTl9PVVRQVVQgKi8KPiAJCTB4MThj ICggUElOX0lOUFVUX1BVTExVUCB8IE1VWF9NT0RFMCApIC8qIChDMTYpIEkyQzBfU0NMLkkyQzBf U0NMICovCj4gCQkweDE4OCAoIFBJTl9JTlBVVF9QVUxMVVAgfCBNVVhfTU9ERTAgKSAvKiAoQzE3 KSBJMkMwX1NEQS5JMkMwX1NEQSAqLwo+IAkJPjsKPiAJfTsKPiAJCj4gCW54cF9oZG1pX2JvbmVs dF9vZmZfcGluczogbnhwX2hkbWlfYm9uZWx0X29mZl9waW5zIHsKPiAJCXBpbmN0cmwtc2luZ2xl LHBpbnMgPSA8Cj4gCQkJMHgxYjAgMHgwMyAgICAgIC8qIHhkbWFfZXZlbnRfaW50cjAsIE9NQVBf TVVYX01PREUzIHwgQU0zM1hYX1BJTl9PVVRQVVQgKi8KPiAJCQkweDE4YyAoIFBJTl9JTlBVVCB8 IE1VWF9NT0RFMCApIC8qIChDMTYpIEkyQzBfU0NMLkkyQzBfU0NMICovCj4gCQkJMHgxODggKCBQ SU5fSU5QVVQgfCBNVVhfTU9ERTAgKSAvKiAoQzE3KSBJMkMwX1NEQS5JMkMwX1NEQSAqLwo+IAkJ PjsKPiAJfTsKPiAKPiAJbGVkX3BpbnNfZGVmYXVsdDogbGVkX3BpbnNfZGVmYXVsdCB7Cj4gCQlw aW5jdHJsLXNpbmdsZSxwaW5zID0gPAo+IAkJCTB4MTc4ICggUElOX09VVFBVVCB8IE1VWF9NT0RF NyApIC8qIChEMTgpIHVhcnQxX2N0c24uZ3BpbzBbMTJdIFRQMzggKi8KPiAJCQkweDE3YyAoIFBJ Tl9PVVRQVVQgfCBNVVhfTU9ERTcgKSAvKiAoRDE3KSB1YXJ0MV9ydHNuLmdwaW8wWzEzXSBUUDM5 ICovCj4gCQkJMHgyOCAoIFBJTl9PVVRQVVRfUFVMTERPV04gfCBNVVhfTU9ERTcgKSAvKiAoVDEx KSBncG1jX2FkMTAuZ3BpbzBbMjZdIElSIExFRCAqLwo+IAkJCTB4MzggKCBQSU5fT1VUUFVUX1BV TExET1dOIHwgTVVYX01PREU3ICkgLyogKFYxMykgZ3BtY19hZDE0LmdwaW8xWzE0XSBSRUQgTEVE ICovCj4gCQk+Owo+IAl9Owo+IAo+IAlhY2NlbF9waW5zX2RlZmF1bHQ6IGFjY2VsX3BpbnNfZGVm YXVsdCB7Cj4gCQlwaW5jdHJsLXNpbmdsZSxwaW5zID0gPAo+IAkJCTB4ZTggKCBQSU5fT1VUUFVU X1BVTExET1dOIHwgTVVYX01PREU3ICkgLyogKFY1KSBsY2RfcGNsay5ncGlvMlsyNF0gQUNDRUxf U1QgKi8KPiAJCQkweGVjICggUElOX09VVFBVVF9QVUxMVVAgfCBNVVhfTU9ERTcgKSAvKiAoUjYp IGxjZF9hY19iaWFzX2VuLmdwaW8yWzI1XSBBQ0NFTF9GUyAqLwo+IAkJPjsKPiAJfTsKPiAKPiAJ bWNhc3AwX3NsYXZlX3BpbnNfZGVmYXVsdDogbWNhc3AwX3NsYXZlX3BpbnNfZGVmYXVsdCB7Cj4g CQlwaW5jdHJsLXNpbmdsZSxwaW5zID0gPAo+IAkJCTB4MWEwICggUElOX0lOUFVUIHwgTVVYX01P REUwICkgLyogKEIxMikgbWNhc3AwX2FjbGtyLm1jYXNwMF9hY2xrciAqLwo+IAkJCTB4MWE0ICgg UElOX0lOUFVUIHwgTVVYX01PREUwICkgLyogKEMxMykgbWNhc3AwX2Zzci5tY2FzcDBfZnNyICov Cj4gCQkJMHgxOTggKCBQSU5fSU5QVVQgfCBNVVhfTU9ERTAgKSAvKiAoRDEyKSBtY2FzcDBfYXhy MC5tY2FzcDBfYXhyMCAqLwo+IAkJCTB4MTljICggUElOX09VVFBVVCB8IE1VWF9NT0RFMiApIC8q IChDMTIpIG1jYXNwMF9haGNsa3IubWNhc3AwX2F4cjIgKi8KPiAJCT47Cj4gCX07Cj4gCj4gCXdt NTEwMl9waW5zX2RlZmF1bHQ6IHdtNTEwMl9waW5zX2RlZmF1bHQgewo+IAkJcGluY3RybC1zaW5n bGUscGlucyA9IDwKPiAJCQkweDZjICggUElOX09VVFBVVF9QVUxMVVAgfCBNVVhfTU9ERTcgKSAv KiAoVjE3KSBncG1jX2ExMS5ncGlvMVsyN10gMjQuNTc2IE1IWiBDRSAqLwo+IAkJCTB4NzggKCBQ SU5fT1VUUFVUX1BVTExET1dOIHwgTVVYX01PREU3ICkgLyogKFUxOCkgZ3BtY19iZTFuLmdwaW8x WzI4XSAvUkVTRVQgKi8KPiAJCQkweDdjICggUElOX09VVFBVVF9QVUxMVVAgfCBNVVhfTU9ERTcg KSAvKiAoVjYpIGdwbWNfY3NuMC5ncGlvMVsyOV0gTERPRU5BICovCj4gCQkJMHhlNCAoIFBJTl9J TlBVVCB8IE1VWF9NT0RFNyApIC8qIChSNSkgbGNkX2hzeW5jLmdwaW8yWzIzXSAvSVJRICovCj4g CQkJMHgxYWMgKCBQSU5fSU5QVVRfUFVMTFVQIHwgTVVYX01PREUwICkgLyogKEExNCkgbWNhc3Aw X2FoY2xreC5ncGlvM1syMV0gQVVESU9fTUNMSyAqLwo+IAkJCTB4MTVjICggUElOX0lOUFVUX1BV TExVUCB8IE1VWF9NT0RFMiApIC8qIChBMTYpIHNwaTBfY3MwLkkyQzFfU0NMICovCj4gCQkJMHgx NTggKCBQSU5fSU5QVVRfUFVMTFVQIHwgTVVYX01PREUyICkgLyogKEIxNikgc3BpMF9kMS5JMkMx X1NEQSAqLwo+IAkJCTB4MTY0ICggUElOX0lOUFVUIHwgTVVYX01PREU3ICkgLyogKEMxOCkgZUNB UDBfaW5fUFdNMF9vdXQuZ3BpbzBbN10gKEFVRElPIEJDTEspIEhJR0haKi8KPiAJCT47Cj4gCX07 Cj4gCj4gCj4gfTsKPiAKPiAmbGNkYyB7Cj4gCXN0YXR1cyA9ICJkaXNhYmxlZCI7Cj4gCXBvcnQg ewo+IAkJbGNkY18wOiBlbmRwb2ludEAwIHsKPiAJCQlyZW1vdGUtZW5kcG9pbnQgPSA8JmhkbWlf MD47Cj4gCQl9Owo+IAl9Owo+IH07Cj4gCj4gJmkyYzAgewo+IAl0ZGExOTk4OCB7Cj4gCQljb21w YXRpYmxlID0gIm54cCx0ZGE5OTh4IjsKPiAJCXJlZyA9IDwweDcwPjsKPiAJCXBpbmN0cmwtbmFt ZXMgPSAiZGVmYXVsdCIsICJvZmYiOwo+IAkJcGluY3RybC0wID0gPCZueHBfaGRtaV9ib25lbHRf cGlucz47Cj4gCQlwaW5jdHJsLTEgPSA8Jm54cF9oZG1pX2JvbmVsdF9vZmZfcGlucz47Cj4gCj4g CQlwb3J0IHsKPiAJCQloZG1pXzA6IGVuZHBvaW50QDAgewo+IAkJCQlyZW1vdGUtZW5kcG9pbnQg PSA8JmxjZGNfMD47Cj4gCQkJfTsKPiAJCX07Cj4gCX07Cj4gfTsKPiAKPiAKPiAmaTJjMSB7Cj4g ICAgICAgcGluY3RybC1uYW1lcyA9ICJkZWZhdWx0IjsKPiAgICAgICBwaW50Y3RybC0wID0gPCZ3 bTUxMDJfcGluc19kZWZhdWx0PjsKPiAgICAgICBzdGF0dXMgPSAib2theSI7Cj4gICAgICAgY2xv Y2stZnJlcXVlbmN5ID0gPDQwMDAwMD47Cj4gCj4gCj4gICAgICAgd201MTAyOiB3bTUxMDJAMWIg ewo+IAkJY29tcGF0aWJsZSA9ICJ3bGYsd201MTAyIjsKPiAJICAgICAgcmVnID0gPDB4MWI+Owo+ IAkgICAgICBzdGF0dXMgPSAib2theSI7Cj4gCSAgICAgIC8qIC9JUlEgaXMgY29ubmVjdGVkIHRv IEdQSU8yXzIzLiBNYXNrIGZyb20gSGlhc3NvZlQgRFQgZm9yIGNpcnJ1cyBhdWRpbyBib2FyZCB3 YXMgOCAqLwo+IAkgICAgICBpbnRlcnJ1cHRzID0gPDIzIDg+Owo+IAkgICAgICBpbnRlcnJ1cHQt Y29udHJvbGxlcjsKPiAJICAgICAgI2ludGVycnVwdC1jZWxscyA9IDwyPjsKPiAJICAgICAgaW50 ZXJydXB0LXBhcmVudCA9IDwmZ3BpbzI+Owo+ICAgICAgICAgICAgICAgLypjbG9jay1uYW1lcyA9 ICJtY2xrMSIsICJtY2xrMiI7Ki8KPiAJICAgICAgZ3Bpby1jb250cm9sbGVyOwo+IAkgICAgICAj Z3Bpby1jZWxscyA9IDwyPjsKPiAJICAgICAgd2xmLGdwaW8tZGVmYXVsdHMgPSA8Cj4gCQkJQVJJ Wk9OQV9HUF9GTl9UWExSQ0xLCj4gCQkJQVJJWk9OQV9HUF9ERUZBVUxUCj4gCQkJQVJJWk9OQV9H UF9ERUZBVUxUCj4gCQkJQVJJWk9OQV9HUF9ERUZBVUxUCj4gCQkJQVJJWk9OQV9HUF9ERUZBVUxU Cj4gCQkJPjsKPiAJICAgICAgd2xmLHJlc2V0ID0gPCZncGlvMSAyOCBHUElPX0FDVElWRV9ISUdI PjsgLyogYWxsb3cgL1JFU0VUIHdtNTEwMiBieSBkcml2ZXIgKHZpYSBpbnZlcnRlcikqLwo+ICAg ICAgICAgICAgICAgd2xmLGxkb2VuYSA9IDwmZ3BpbzEgMjkgR1BJT19BQ1RJVkVfSElHSD47IC8q IGFsbG93IExET0VOQSB3bTUxMDIgYnkgZHJpdmVyICovCgpUaGlzIGhlcmUgaXMgdGhlIGNvcnJl Y3QgcGxhY2UgZm9yIHRoZSBsZG9lbmEuCgo+IAkgICAgICBMRE9WREQtc3VwcGx5ICA9IDwmbGRv MTg+OyAvKiBmaXhlZCAxVjggcmVndWxhdG9yICovCj4gCSAgICAgIEFWREQtc3VwcGx5ICAgID0g PCZsZG8xOD47Cj4gCSAgICAgIERCVkREMS1zdXBwbHkgID0gPCZsZG8xOD47Cj4gCSAgICAgIERC VkREMi1zdXBwbHkgID0gPCZsZG8xOD47Cj4gCSAgICAgIERCVkREMy1zdXBwbHkgID0gPCZsZG8x OD47Cj4gCSAgICAgIENQVkRELXN1cHBseSAgID0gPCZsZG8xOD47Cj4gCSAgICAgIC8qRENWREQt c3VwcGx5ICAgPSA8JmxkbzE4PjsgLyogc3VwcGxpZWQgYnkgTERPMQoKWWVhaCB0aGlzIGxpbmUg Y2FuIGdvIHlvdSBkb24ndCBuZWVkIHRvIHNwZWNpZnkgRENWREQgdW5sZXNzIHlvdQphcmUgbm90 IHVzaW5nIHRoZSBpbnRlcm5hbCBMRE8uCgo+IAkgICAgICBNSUNWREQtc3VwcGx5ICA9IDwmbGRv NTA+OyAKPiAJICAgICAgU1BLVkRETC1zdXBwbHkgPSA8JmxkbzUwPjsgLyogZml4ZWQgVkREXzVW IGZyb20gQkJCICovCj4gCSAgICAgIFNQS1ZERFItc3VwcGx5ID0gPCZsZG81MD47Cj4gICAgICAg ICAgICAgICAjc291bmQtZGFpLWNlbGxzID0gPDA+Owo+IC8qIHdlIGhhdmVuJ3QgZmlndXJlZCBv dXQgaG93IHJlZmVyZW5jZSB0aGUgaW50ZXJuYWwgTERPLCBwaW4gaXMgcHVsbGVkIHVwICovCj4g I2lmIDAKPiAJbGRvMTogbGRvMSB7Cj4gCQl3bGYsbGRvZW5hID0gPCZncGlvMSAyOSBHUElPX0FD VElWRV9ISUdIPjsgLyogYWxsb3cgTERPRU5BIHdtNTEwMiBieSBkcml2ZXIgKi8KPiAJfTsKPiAj ZW5kaWYKClRoaXMgY2FuIGdvIGFzIHdlbGwgYWdhaW4gbm8gbmVlZCB0byBzcGVjaWZ5IGEgYmxv Y2sgZm9yIGludGVybmFsCkxETyB1bmxlc3MgeW91IHdhbnQgdG8gZG8gc29tZSBzdHJhbmdlIGNv bmZpZ3VyYXRpb24gb2YgaXQgd2hpY2gKeW91IGFsbW9zdCBjZXJ0YWlubHkgZG9uJ3QuCgo+ICAg ICAgIH07Cj4gCj4gfTsKPiAKPiAKPiAmbWNhc3AwIHsKPiAgICAgICAgIHBpbmN0cmwtbmFtZXMg PSAiZGVmYXVsdCI7Cj4gICAgICAgICBwaW5jdHJsLTAgPSA8Jm1jYXNwMF9zbGF2ZV9waW5zX2Rl ZmF1bHQ+Owo+IAo+ICAgICAgICAgc3RhdHVzID0gIm9rYXkiOwo+ICAgICAgICAgb3AtbW9kZSA9 IDwwPjsgICAgICAgIC8qIE1DQVNQX0lJU19NT0RFICovCj4gCXRkbS1zbG90cyA9IDw2PjsKPiAg ICAgICAgIC8qIDQgc2VyaWFsaXplcnMgKi8KPiAgICAgICAgIHNlcmlhbC1kaXIgPSA8ICAvKiAw OiBJTkFDVElWRSwgMTogVFgsIDI6IFJYIC0gMCAyIDAgMCAqLwo+ICAgICAgICAgICAgICAgICAy IDAgMCAwCj4gICAgICAgICA+Owo+ICAgICAgICAgdHgtbnVtLWV2dCA9IDwzMj47Cj4gICAgICAg ICByeC1udW0tZXZ0ID0gPDMyPjsKPiAgICAgICAgICNzb3VuZC1kYWktY2VsbHMgPSA8MD47Cj4g fTsKPiAKPiAKPiAmcnRjIHsKPiAJc3lzdGVtLXBvd2VyLWNvbnRyb2xsZXI7Cj4gfTsKPiAKPiAK PiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWxzYS1k ZXZlbCBtYWlsaW5nIGxpc3QKQWxzYS1kZXZlbEBhbHNhLXByb2plY3Qub3JnCmh0dHA6Ly9tYWls bWFuLmFsc2EtcHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbHNhLWRldmVsCg==