From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peng Fan Subject: Re: [RFC 0/5] xen/arm: support big.little SoC Date: Thu, 22 Sep 2016 18:05:53 +0800 Message-ID: <20160922100550.GA22467@linux-u7w5.ap.freescale.net> References: <61196660-df7c-7324-2fb6-cfb11f44ea1e@arm.com> <39623498-bb30-4ff7-f075-219487a5afbb@arm.com> <6bd7d587-f9ba-c3bf-db96-46a2958d9e5b@arm.com> <1ae3ca04-2fdd-531f-7cb1-0b3ab80feccb@arm.com> <20160922064928.GB19448@linux-u7w5.ap.freescale.net> <1474534223.4393.320.camel@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1474534223.4393.320.camel@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Dario Faggioli Cc: Juergen Gross , Peng Fan , Stefano Stabellini , Steve Capper , George Dunlap , Andrew Cooper , Punit Agrawal , George Dunlap , "xen-devel@lists.xen.org" , Julien Grall , Jan Beulich List-Id: xen-devel@lists.xenproject.org T24gVGh1LCBTZXAgMjIsIDIwMTYgYXQgMTA6NTA6MjNBTSArMDIwMCwgRGFyaW8gRmFnZ2lvbGkg d3JvdGU6Cj5PbiBUaHUsIDIwMTYtMDktMjIgYXQgMTQ6NDkgKzA4MDAsIFBlbmcgRmFuIHdyb3Rl Ogo+PiBPbiBXZWQsIFNlcCAyMSwgMjAxNiBhdCAwODoxMTo0M1BNICswMTAwLCBKdWxpZW4gR3Jh bGwgd3JvdGU6Cj4+ID4gCj4+ID4gSGkgU3RlZmFubywKPj4gPiAKPj4gPiBPbiAyMS8wOS8yMDE2 IDE5OjEzLCBTdGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6Cj4+ID4gPiAKPj4gPiA+IE9uIFdlZCwg MjEgU2VwIDIwMTYsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gPiA+ID4gCj4+ID4gPiA+IChDQyBh IGNvdXBsZSBvZiBBUk0gZm9sa3MpCj4+ID4gPiA+IAo+PiA+ID4gPiBPbiAyMS8wOS8xNiAxMToy MiwgR2VvcmdlIER1bmxhcCB3cm90ZToKPj4gPiA+ID4gPiAKPj4gPiA+ID4gPiBPbiAyMS8wOS8x NiAxMTowOSwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+PiA+ID4gPiA+ID4gCj4+ID4gPiA+ID4gPiAK Pj4gPiA+ID4gPiA+IAo+PiA+ID4gPiA+ID4gT24gMjAvMDkvMTYgMjE6MTcsIFN0ZWZhbm8gU3Rh YmVsbGluaSB3cm90ZToKPj4gPiA+ID4gPiA+ID4gCj4+ID4gPiA+ID4gPiA+IE9uIFR1ZSwgMjAg U2VwIDIwMTYsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4gPiA+ID4gPiA+ID4gPiAKPj4gPiA+ID4g PiA+ID4gPiBIaSBTdGVmYW5vLAo+PiA+ID4gPiA+ID4gPiA+IAo+PiA+ID4gPiA+ID4gPiA+IE9u IDIwLzA5LzIwMTYgMjA6MDksIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90ZToKPj4gPiA+ID4gPiA+ ID4gPiA+IAo+PiA+ID4gPiA+ID4gPiA+ID4gT24gVHVlLCAyMCBTZXAgMjAxNiwgSnVsaWVuIEdy YWxsIHdyb3RlOgo+PiA+ID4gPiA+ID4gPiA+ID4gPiAKPj4gPiA+ID4gPiA+ID4gPiA+ID4gSGks Cj4+ID4gPiA+ID4gPiA+ID4gPiA+IAo+PiA+ID4gPiA+ID4gPiA+ID4gPiBPbiAyMC8wOS8yMDE2 IDEyOjI3LCBHZW9yZ2UgRHVubGFwIHdyb3RlOgo+PiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+PiA+ ID4gPiA+ID4gPiA+ID4gPiA+IE9uIFR1ZSwgU2VwIDIwLCAyMDE2IGF0IDExOjAzIEFNLCBQZW5n IEZhbgo+PiA+ID4gPiA+ID4gPiA+ID4gPiA+IDx2YW4uZnJlZW5peEBnbWFpbC5jb20+Cj4+ID4g PiA+ID4gPiA+ID4gPiA+ID4gd3JvdGU6Cj4+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAKPj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+IE9uIFR1ZSwgU2VwIDIwLCAyMDE2IGF0IDAyOjU0OjA2QU0gKzAy MDAsIERhcmlvCj4+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBGYWdnaW9saQo+PiA+ID4gPiA+ID4g PiA+ID4gPiA+ID4gd3JvdGU6Cj4+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IAo+PiA+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiBPbiBNb24sIDIwMTYtMDktMTkgYXQgMTc6MDEgLTA3MDAsIFN0ZWZh bm8KPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gU3RhYmVsbGluaSB3cm90ZToKPj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID4gPiAKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiBPbiBUdWUs IDIwIFNlcCAyMDE2LCBEYXJpbyBGYWdnaW9saSB3cm90ZToKPj4gPiA+ID4gPiA+ID4gPiA+ID4g PiA+IEknZCBsaWtlIHRvIGFkZCBhIGNvbXB1dGluZyBjYXBhYmlsaXR5IGluCj4+ID4gPiA+ID4g PiA+ID4gPiA+ID4gPiB4ZW4vYXJtLCBsaWtlIHRoaXM6Cj4+ID4gPiA+ID4gPiA+ID4gPiA+ID4g PiAKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IHN0cnVjdCBjb21wdXRlX2NhcGF0aWxpYnkKPj4g PiA+ID4gPiA+ID4gPiA+ID4gPiA+IHsKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID8/IGNoYXIg KmNvcmVfbmFtZTsKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+ID8/IHVpbnQzMl90IHJhbms7Cj4+ ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA/PyB1aW50MzJfdCBjcHVfcGFydG51bTsKPj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+IH07Cj4+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAKPj4gPiA+ID4gPiA+ ID4gPiA+ID4gPiA+IHN0cnVjdCBjb21wdXRlX2NhcGF0aWxpYnkgY2M9Cj4+ID4gPiA+ID4gPiA+ ID4gPiA+ID4gPiB7Cj4+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiA/P3siQTcyIiwgNCwgMHhkMDh9 LAo+PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPz97IkE1NyIsIDMsIDB4eHh4fSwKPj4gPiA+ID4g PiA+ID4gPiA+ID4gPiA+ID8/eyJBNTMiLCAyLCAweGQwM30sCj4+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gPiA/P3siQTM1IiwgMSwgLi4ufSwKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IH0KPj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+IAo+PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gVGhlbiB3aGVuIGlk ZW50aWZ5IGNwdSwgd2UgZGVjaWRlIHdoaWNoIGNwdSBpcwo+PiA+ID4gPiA+ID4gPiA+ID4gPiA+ ID4gYmlnIGFuZCB3aGljaAo+PiA+ID4gPiA+ID4gPiA+ID4gPiA+ID4gY3B1IGlzCj4+ID4gPiA+ ID4gPiA+ID4gPiA+ID4gPiBsaXR0bGUKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiA+IGFjY29yZGlu ZyB0byB0aGUgY29tcHV0aW5nIHJhbmsuCj4+ID4gPiA+ID4gPiA+ID4gPiA+ID4gPiAKPj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiA+IEFueSBjb21tZW50cz8KPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiAK Pj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBJIHRoaW5rIHdlIGRlZmluaXRlbHkgbmVlZCB0byBoYXZl IFhlbiBoYXZlIHNvbWUKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBraW5kIG9mIGlkZWEKPj4gPiA+ ID4gPiA+ID4gPiA+ID4gPiB0aGUKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBvcmRlciBiZXR3ZWVu IHByb2Nlc3NvcnMsIHNvIHRoYXQgdGhlIHVzZXIKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBkb2Vz bid0IG5lZWQgdG8KPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBmaWd1cmUgb3V0Cj4+ID4gPiA+ID4g PiA+ID4gPiA+ID4gd2hpY2ggY2xhc3MgLyBwb29sIGlzIGJpZyBhbmQgd2hpY2ggcG9vbCBpcwo+ PiA+ID4gPiA+ID4gPiA+ID4gPiA+IExJVFRMRS4/Pz8/V2hldGhlcgo+PiA+ID4gPiA+ID4gPiA+ ID4gPiA+IHRoaXMKPj4gPiA+ID4gPiA+ID4gPiA+ID4gPiBzb3J0Cj4+ID4gPiA+ID4gPiA+ID4g PiA+ID4gb2YgZW51bWVyYXRpb24gaXMgdGhlIGJlc3Qgd2F5IHRvIGRvIHRoYXQgSSdsbAo+PiA+ ID4gPiA+ID4gPiA+ID4gPiA+IGxldCBKdWxpZW4gYW5kCj4+ID4gPiA+ID4gPiA+ID4gPiA+ID4g U3RlZmFubwo+PiA+ID4gPiA+ID4gPiA+ID4gPiA+IGdpdmUgdGhlaXIgb3Bpbmlvbi4KPj4gPiA+ ID4gPiA+ID4gPiA+ID4gCj4+ID4gPiA+ID4gPiA+ID4gPiA+IEkgZG9uJ3QgdGhpbmsgYW4gaGFy ZGNvZGVkIGxpc3Qgb2YgcHJvY2Vzc29yIGluIFhlbgo+PiA+ID4gPiA+ID4gPiA+ID4gPiBpcyB0 aGUgcmlnaHQKPj4gPiA+ID4gPiA+ID4gPiA+ID4gc29sdXRpb24uCj4+ID4gPiA+ID4gPiA+ID4g PiA+IFRoZXJlIGFyZSBtYW55IGV4aXN0aW5nIHByb2Nlc3NvcnMgYW5kIGNvbWJpbmF0aW9ucwo+ PiA+ID4gPiA+ID4gPiA+ID4gPiBmb3IgYmlnLkxJVFRMRQo+PiA+ID4gPiA+ID4gPiA+ID4gPiBz byBpdAo+PiA+ID4gPiA+ID4gPiA+ID4gPiB3aWxsCj4+ID4gPiA+ID4gPiA+ID4gPiA+IG5lYXJs eSBiZSBpbXBvc3NpYmxlIHRvIGtlZXAgdXBkYXRlZC4KPj4gPiA+ID4gPiA+ID4gPiA+ID4gCj4+ ID4gPiA+ID4gPiA+ID4gPiA+IEkgd291bGQgZXhwZWN0IHRoZSBmaXJtd2FyZSB0YWJsZSAoZGV2 aWNlIHRyZWUsCj4+ID4gPiA+ID4gPiA+ID4gPiA+IEFDUEkpIHRvIHByb3ZpZGUKPj4gPiA+ID4g PiA+ID4gPiA+ID4gcmVsZXZhbnQKPj4gPiA+ID4gPiA+ID4gPiA+ID4gZGF0YQo+PiA+ID4gPiA+ ID4gPiA+ID4gPiBmb3IgZWFjaCBwcm9jZXNzb3IgYW5kIGRpZmZlcmVudGlhdGUgYmlnIGZyb20K Pj4gPiA+ID4gPiA+ID4gPiA+ID4gTElUVExFIGNvcmUuCj4+ID4gPiA+ID4gPiA+ID4gPiA+IE5v dGUgdGhhdCBJIGhhdmVuJ3QgbG9va2VkIGF0IGl0IGZvciBub3cuIEEgZ29vZAo+PiA+ID4gPiA+ ID4gPiA+ID4gPiBwbGFjZSB0byBzdGFydCBpcwo+PiA+ID4gPiA+ID4gPiA+ID4gPiBsb29raW5n Cj4+ID4gPiA+ID4gPiA+ID4gPiA+IGF0Cj4+ID4gPiA+ID4gPiA+ID4gPiA+IGhvdyBMaW51eCBk b2VzLgo+PiA+ID4gPiA+ID4gPiA+ID4gCj4+ID4gPiA+ID4gPiA+ID4gPiBUaGF0J3MgcmlnaHQs IHNlZQo+PiA+ID4gPiA+ID4gPiA+ID4gRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdz L2FybS9jcHVzLnR4dC4gSXQKPj4gPiA+ID4gPiA+ID4gPiA+IGlzCj4+ID4gPiA+ID4gPiA+ID4g PiB0cml2aWFsIHRvIGlkZW50aWZ5IHRoZSB0d28gZGlmZmVyZW50IENQVSBjbGFzc2VzIGFuZAo+ PiA+ID4gPiA+ID4gPiA+ID4gd2hpY2ggY29yZXMKPj4gPiA+ID4gPiA+ID4gPiA+IGJlbG9uZwo+ PiA+ID4gPiA+ID4gPiA+ID4gdG8gd2hpY2ggY2xhc3MudCwgYXMKPj4gPiA+ID4gPiA+ID4gPiAK Pj4gPiA+ID4gPiA+ID4gPiBUaGUgY2xhc3Mgb2YgdGhlIENQVSBjYW4gYmUgZm91bmQgZnJvbSB0 aGUgTUlEUiwgdGhlcmUKPj4gPiA+ID4gPiA+ID4gPiBpcyBubyBuZWVkIHRvCj4+ID4gPiA+ID4g PiA+ID4gdXNlIHRoZQo+PiA+ID4gPiA+ID4gPiA+IGRldmljZSB0cmVlL2FjcGkgZm9yIHRoYXQu IE5vdGUgdGhhdCBJIGRvbid0IHRoaW5rCj4+ID4gPiA+ID4gPiA+ID4gdGhlcmUgaXMgYW4gZWFz eQo+PiA+ID4gPiA+ID4gPiA+IHdheSBpbgo+PiA+ID4gPiA+ID4gPiA+IEFDUEkgKGkuZSBub3Qg aW4gQU1MKSB0byBmaW5kIG91dCB0aGUgY2xhc3MuCj4+ID4gPiA+ID4gPiA+ID4gCj4+ID4gPiA+ ID4gPiA+ID4gPiAKPj4gPiA+ID4gPiA+ID4gPiA+IEl0IGlzIGhhcmRlciB0byBmaWd1cmUgb3V0 IHdoaWNoIG9uZSBpcyBzdXBwb3NlZCB0bwo+PiA+ID4gPiA+ID4gPiA+ID4gYmUKPj4gPiA+ID4g PiA+ID4gPiA+IGJpZyBhbmQgd2hpY2ggb25lIExJVFRMRS4gUmVnYXJkbGVzcywgd2UgY291bGQK Pj4gPiA+ID4gPiA+ID4gPiA+IGRlZmF1bHQgdG8gdXNpbmcgdGhlCj4+ID4gPiA+ID4gPiA+ID4g PiBmaXJzdCBjbHVzdGVyICh1c3VhbGx5IGJpZyksIHdoaWNoIGlzIGFsc28gdGhlCj4+ID4gPiA+ ID4gPiA+ID4gPiBjbHVzdGVyIG9mIHRoZSBib290Cj4+ID4gPiA+ID4gPiA+ID4gPiBjcHUsCj4+ ID4gPiA+ID4gPiA+ID4gPiBhbmQgdXRpbGl6ZSB0aGUgc2Vjb25kIGNsdXN0ZXIgb25seSB3aGVu IHRoZSB1c2VyCj4+ID4gPiA+ID4gPiA+ID4gPiBkZW1hbmRzIGl0Lgo+PiA+ID4gPiA+ID4gPiA+ IAo+PiA+ID4gPiA+ID4gPiA+IFdoeSBkbyB5b3UgdGhpbmsgdGhlIGJvb3QgQ1BVIHdpbGwgdXN1 YWxseSBiZSBhIGJpZwo+PiA+ID4gPiA+ID4gPiA+IG9uZT8gSW4gdGhlIGNhc2UKPj4gPiA+ID4g PiA+ID4gPiBvZiBKdW5vCj4+ID4gPiA+ID4gPiA+ID4gcGxhdGZvcm0gaXQgaXMgY29uZmlndXJh YmxlLCBhbmQgdGhlIGJvb3QgQ1BVIGlzIGEKPj4gPiA+ID4gPiA+ID4gPiBsaXR0bGUgY29yZSBv biByMgo+PiA+ID4gPiA+ID4gPiA+IGJ5Cj4+ID4gPiA+ID4gPiA+ID4gZGVmYXVsdC4KPj4gPiA+ ID4gPiA+ID4gPiAKPj4gPiA+ID4gPiA+ID4gPiBJbiBhbnkgY2FzZSwgd2hhdCB3ZSBjYXJlIGFi b3V0IGlzIGRpZmZlcmVudGlhdGUKPj4gPiA+ID4gPiA+ID4gPiBiZXR3ZWVuIHR3byBzZXQgb2YK Pj4gPiA+ID4gPiA+ID4gPiBDUFVzLiBJCj4+ID4gPiA+ID4gPiA+ID4gZG9uJ3QgdGhpbmsgWGVu IHNob3VsZCBjYXJlIGFib3V0IG1pZ3JhdGluZyBhIGd1ZXN0Cj4+ID4gPiA+ID4gPiA+ID4gdkNQ VSBiZXR3ZWVuIGJpZwo+PiA+ID4gPiA+ID4gPiA+IGFuZAo+PiA+ID4gPiA+ID4gPiA+IExJVFRM RSBjcHVzLiBTbyBJIGFtIG5vdCBzdXJlIHdoeSB3ZSB3b3VsZCB3YW50IHRvIGtub3cKPj4gPiA+ ID4gPiA+ID4gPiB0aGF0Lgo+PiA+ID4gPiA+ID4gPiAKPj4gPiA+ID4gPiA+ID4gTm8sIGl0IGlz IG5vdCBhYm91dCBtaWdyYXRpbmcgKGF0IGxlYXN0IHlldCkuIEl0IGlzIGFib3V0Cj4+ID4gPiA+ ID4gPiA+IGdpdmluZyB1c2VmdWwKPj4gPiA+ID4gPiA+ID4gaW5mb3JtYXRpb24gdG8gdGhlIHVz ZXIuIEl0IHdvdWxkIGJlIG5pY2UgaWYgdGhlIHVzZXIgaGFkCj4+ID4gPiA+ID4gPiA+IHRvIGNo b29zZQo+PiA+ID4gPiA+ID4gPiBiZXR3ZWVuICJiaWciIGFuZCAiTElUVExFIiByYXRoZXIgdGhh biAiY2xhc3MgMHgxIiBhbmQKPj4gPiA+ID4gPiA+ID4gImNsYXNzIDB4MTAwIiwgb3IKPj4gPiA+ ID4gPiA+ID4gZXZlbiAiQTciIG9yICJBMTUiLgo+PiA+ID4gPiA+ID4gCj4+ID4gPiA+ID4gPiBJ IGRvbid0IHRoaW5rIGl0IGlzIHdpc2UgdG8gYXNzdW1lIHRoYXQgd2UgbWF5IGhhdmUgb25seSAy Cj4+ID4gPiA+ID4gPiBraW5kIG9mIENQVXMKPj4gPiA+ID4gPiA+IG9uIHRoZSBwbGF0Zm9ybS4g V2UgbWF5IGhhdmUgbW9yZSBpbiB0aGUgZnV0dXJlLCBpZiBzbyBob3cKPj4gPiA+ID4gPiA+IHdv dWxkIHlvdQo+PiA+ID4gPiA+ID4gbmFtZSB0aGVtPwo+PiA+ID4gPiA+IAo+PiA+ID4gPiA+IEkg d291bGQgc3VnZ2VzdCB0aGF0IGludGVybmFsbHkgWGVuIHJlY29nbml6ZSBhbiBhcmJpdHJhcnkK Pj4gPiA+ID4gPiBudW1iZXIgb2YKPj4gPiA+ID4gPiBwcm9jZXNzb3IgImNsYXNzZXMiLCBhbmQg b3JkZXIgdGhlbSBhY2NvcmRpbmcgdG8gbW9yZQo+PiA+ID4gPiA+IHBvd2VyZnVsIC0+IGxlc3MK Pj4gPiA+ID4gPiBwb3dlcmZ1bC4/Pz8/VGhlbiBpZiBhdCBzb21lIHBvaW50IHNvbWVvbmUgbWFr ZXMgYSBwbGF0Zm9ybQo+PiA+ID4gPiA+IHdpdGggdGhyZWUKPj4gPiA+ID4gPiBwcm9jZXNzb3Jz LCB5b3UgY2FuIHNheSAiY2xhc3MgMCIsICJjbGFzcyAxIiBvciAiY2xhc3MKPj4gPiA+ID4gPiAy Ii4/Pz8/ImJpZyIgd291bGQKPj4gPiA+ID4gPiBiZSBhbiBhbGlhcyBmb3IgImNsYXNzIDAiIGFu ZCAibGl0dGxlIiB3b3VsZCBiZSBhbiBhbGlhcyBmb3IKPj4gPiA+ID4gPiAiY2xhc3MgMSIuCj4+ ID4gPiA+IAo+PiA+ID4gPiBBcyBtZW50aW9uZWQgZWFybGllciwgdGhlcmUgaXMgbm8gdXBzdHJl YW1lZCB5ZXQgZGV2aWNlIHRyZWUKPj4gPiA+ID4gYmluZGluZ3MgdG8ga25vdwo+PiA+ID4gPiB0 aGUgInBvd2VyIiBvZiBhIENQVSAoc2VlIFsxXQo+PiA+ID4gPiAKPj4gPiA+ID4gPiAKPj4gPiA+ ID4gPiAKPj4gPiA+ID4gPiBBbmQgaW4gbXkgc3VnZ2VzdGlvbiwgd2UgYWxsb3cgYSByaWNoZXIg c2V0IG9mIGxhYmVscywgc28KPj4gPiA+ID4gPiB0aGF0IHRoZSB1c2VyCj4+ID4gPiA+ID4gY291 bGQgYWxzbyBiZSBtb3JlIHNwZWNpZmljIC0tIGUuZy4sIGFza2luZyBmb3IgIkExNSIKPj4gPiA+ ID4gPiBzcGVjaWZpY2FsbHksIGZvcgo+PiA+ID4gPiA+IGV4YW1wbGUsIGFuZCBmYWlsaW5nIHRv IGJ1aWxkIGlmIHRoZXJlIGFyZSBubyBBMTUgY29yZXMKPj4gPiA+ID4gPiBwcmVzZW50LCB3aGls ZQo+PiA+ID4gPiA+IGFsbG93aW5nIHVzZXJzIHRvIHNpbXBseSB3cml0ZSAiYmlnIiBvciAibGl0 dGxlIiBpZiB0aGV5IHdhbnQKPj4gPiA+ID4gPiBzaW1wbGljaXR5Cj4+ID4gPiA+ID4gLyB0aGlu Z3Mgd2hpY2ggd29yayBhY3Jvc3MgZGlmZmVyZW50IHBsYXRmb3Jtcy4KPj4gPiA+ID4gCj4+ID4g PiA+IFdlbGwsIGJlZm9yZSB0cnlpbmcgdG8gZG8gc29tZXRoaW5nIGNsZXZlciBsaWtlIHRoYXQg KGkuZQo+PiA+ID4gPiBuYW1pbmcgImJpZyIgYW5kCj4+ID4gPiA+ICJsaXR0bGUiKSwgd2UgbmVl ZCB0byBoYXZlIHVwc3RyZWFtZWQgYmluZGluZ3MgYXZhaWxhYmxlIHRvCj4+ID4gPiA+IGFja25v d2xlZGdlIHRoZQo+PiA+ID4gPiBkaWZmZXJlbmNlLiBBRkFJQ1QsIGl0IGlzIG5vdCB5ZXQgdXBz dHJlYW1lZCBmb3IgRGV2aWNlIFRyZWUKPj4gPiA+ID4gKHNlZSBbMV0pIGFuZCBJCj4+ID4gPiA+ IGRvbid0IGtub3cgYW55IHN0YXRpYyBBQ1BJIHRhYmxlcyBwcm92aWRpbmcgdGhlIHNpbWlsYXIK Pj4gPiA+ID4gaW5mb3JtYXRpb24uCj4+ID4gPiAKPj4gPiA+IEkgbGlrZSBHZW9yZ2UncyBpZGVh IHRoYXQgImJpZyIgYW5kICJsaXR0bGUiIGNvdWxkIGJlIGp1c3QKPj4gPiA+IGNvbnZlbmllbmNl Cj4+ID4gPiBhbGlhc2VzLiBPZiBjb3Vyc2UgdGhleSBhcmUgcHJlZGljYXRlZCBvbiB0aGUgbmVj ZXNzYXJ5IGRldmljZQo+PiA+ID4gdHJlZQo+PiA+ID4gYmluZGluZ3MgYmVpbmcgdXBzdHJlYW0u IFdlIGRvbid0IG5lZWQgWzFdIHRvIGJlIHVwc3RyZWFtIGluCj4+ID4gPiBMaW51eCwganVzdAo+ PiA+ID4gdGhlIGJpbmRpbmc6Cj4+ID4gPiAKPj4gPiA+IGh0dHA6Ly9tYXJjLmluZm8vP2w9bGlu dXgtYXJtLWtlcm5lbCZtPTE0NzMwODU1NjcyOTQyNiZ3PTIKPj4gPiA+IAo+PiA+ID4gd2hpY2gg aGFzIGFscmVhZHkgYmVlbiBhY2tlZCBieSB0aGUgcmVsZXZhbnQgbWFpbnRhaW5lcnMuCj4+ID4g Cj4+ID4gVGhpcyBpcyBkZXZpY2UgdHJlZSBvbmx5LiBXaGF0IGFib3V0IEFDUEk/Cj4+ID4gCj4+ ID4gPiAKPj4gPiA+IAo+PiA+ID4gCj4+ID4gPiA+IAo+PiA+ID4gPiBJIGhhZCBmZXcgZGlzY3Vz c2lvbnMgYW5kPz8/P21vcmUgdGhvdWdodCBhYm91dCBiaWcuTElUVExFCj4+ID4gPiA+IHN1cHBv cnQgaW4gWGVuLiBUaGUKPj4gPiA+ID4gbWFpbiBnb2FsIG9mIGJpZy5MSVRUTEUgaXMgcG93ZXIg ZWZmaWNpZW5jeSBieSBtb3ZpbmcgdGFzawo+PiA+ID4gPiBhcm91bmQgYW5kIGJlZW4KPj4gPiA+ ID4gYWJsZSB0byBpZGxlIG9uZSBjbHVzdGVyLiBBbGwgdGhlIHNvbHV0aW9ucyBzdWdnZXN0ZWQK Pj4gPiA+ID4gKGluY2x1ZGluZyBtaW5lKSBzbyBmYXIsCj4+ID4gPiA+IGNhbiBiZSByZXBsaWNh dGVkIGJ5IGhhbmQgKGV4Y2VwdCB0aGUgVlBJRFIpIHNvIHRoZXkgYXJlIG1vc3RseQo+PiA+ID4g PiBhbiBhdXRvbWF0aWMKPj4gPiA+ID4gd2F5LiBUaGlzIHdpbGwgYWxzbyByZW1vdmUgdGhlIHJl YWwgYmVuZWZpdHMgb2YgYmlnLkxJVFRMRQo+PiA+ID4gPiBiZWNhdXNlIFhlbiB3aWxsCj4+ID4g PiA+IG5vdCBiZSBhYmxlIHRvIG1pZ3JhdGUgdkNQVSBhY3Jvc3MgY2x1c3RlciBmb3IgcG93ZXIK Pj4gPiA+ID4gZWZmaWNpZW5jeS4KPj4gPiA+IAo+PiA+ID4gVGhlIGdvYWwgb2YgdGhlIGFyY2hp dGVjdHMgb2YgYmlnLkxJVFRMRSBtaWdodCBoYXZlIGJlZW4gcG93ZXIKPj4gPiA+IGVmZmljaWVu Y3ksIGJ1dCBvZiBjb3Vyc2Ugd2UgYXJlIGZyZWUgdG8gdXNlIGFueSBmZWF0dXJlcyB0aGF0Cj4+ ID4gPiB0aGUKPj4gPiA+IGhhcmR3YXJlIHByb3ZpZGVzIGluIHRoZSBiZXN0IHdheSBmb3IgWGVu IGFuZCB0aGUgWGVuIGNvbW11bml0eS4KPj4gPiAKPj4gPiBUaGlzIGlzIHZlcnkgZGVwZW5kZW50 IG9uIGhvdyB0aGUgYmlnLkxJVFRMRSBoYXMgYmVlbiBpbXBsZW1lbnRlZAo+PiA+IGJ5IHRoZQo+ PiA+IGhhcmR3YXJlLiBTb21lIHBsYXRmb3JtIGNhbiBub3QgcnVuIGJvdGggYmlnIGFuZCBMSVRU TEUgY29yZXMgYXQKPj4gPiB0aGUgc2FtZQo+PiA+IHRpbWUuIFlvdSBuZWVkIGEgcHJvcGVyIHN3 aXRjaCBpbiB0aGUgZmlybXdhcmUvaHlwZXJ2aXNvci4KPj4gPiAKPj4gPiA+IAo+PiA+ID4gCj4+ ID4gPiA+IAo+PiA+ID4gPiBJZiB3ZSBjYXJlIGFib3V0IHBvd2VyIGVmZmljaWVuY3ksIHdlIHdv dWxkIGhhdmUgdG8gaGFuZGxlCj4+ID4gPiA+IHNlYW1sZXNzbHkKPj4gPiA+ID4gYmlnLkxJVFRM RSBpbiBYZW4gKGkuZSBhIGd1ZXNzIHdvdWxkIG9ubHkgc2VlIGEga2luZCBvZiBDUFUpLgo+PiA+ ID4gPiBUaGlzIGFyaXNlIHF1aXRlCj4+ID4gPiA+IGZldyBwcm9ibGVtLCBub3RoaW5nIGluc3Vy bW91bnRhYmxlLCBzaW1pbGFyIHRvIG1pZ3JhdGlvbgo+PiA+ID4gPiBhY3Jvc3MgdHdvIHBsYXRm b3Jtcwo+PiA+ID4gPiB3aXRoIGRpZmZlcmVudCBtaWNyby1hcmNoaXRlY3R1cmUgKGUuZyBwcm9j ZXNzb3JzKTogZXJyYXRhLAo+PiA+ID4gPiBmZWF0dXJlcwo+PiA+ID4gPiBzdXBwb3J0ZWQuLi4g VGhlIGd1ZXN0IHdvdWxkIGhhdmUgdG8ga25vdyB0aGUgdW5pb24gb2YgYWxsIHRoZQo+PiA+ID4g PiBlcnJhdGEgKHRoaXMgaXMKPj4gPiA+ID4gZG9uZSBzbyBmYXIgdmlhIHRoZSBNSURSLCBzbyB3 ZSB3b3VsZCBhIFBWIHdheSB0byBkbyBpdCksIGFuZAo+PiA+ID4gPiBvbmx5IHRoZQo+PiA+ID4g PiBpbnRlcnNlY3Rpb24gb2YgZmVhdHVyZXMgd291bGQgYmUgZXhwb3NlZCB0byB0aGUgZ3Vlc3Qu IFRoaXMKPj4gPiA+ID4gYWxzbyBtZWFucyB0aGUKPj4gPiA+ID4gc2NoZWR1bGVyIHdvdWxkIGhh dmUgdG8gYmUgbW9kaWZpZWQgdG8gaGFuZGxlIHBvd2VyIGVmZmljaWVuY3kKPj4gPiA+ID4gKG5v dCBzdHJpY3RseQo+PiA+ID4gPiBuZWNlc3NhcnkgYXQgdGhlIGJlZ2lubmluZykuCj4+ID4gPiA+ IAo+PiA+ID4gPiBJIGFncmVlIHRoYXQgYSBzdWNoIHNvbHV0aW9uIHdvdWxkIHJlcXVpcmUgc29t ZSB3b3JrIHRvCj4+ID4gPiA+IGltcGxlbWVudCwgYWx0aG91Z2gKPj4gPiA+ID4gWGVuIHdpbGwg aGF2ZSBhIGJldHRlciBjb250cm9sIG9mIHRoZSBlbmVyZ3kgY29uc3VtcHRpb24gb2YgdGhlCj4+ ID4gPiA+IHBsYXRmb3JtLgo+PiA+ID4gPiAKPj4gPiA+ID4gU28gdGhlIHF1ZXN0aW9uIGhlcmUs IGlzIHdoYXQgZG8gd2Ugd2FudCB0byBhY2hpZXZlIHdpdGgKPj4gPiA+ID4gYmlnLkxJVFRMRT8K Pj4gPiA+IAo+PiA+ID4gSSBkb24ndCB0aGluayB0aGF0IGhhbmRsaW5nIHNlYW1sZXNzbHkgYmln LkxJVFRMRSBpbiBYZW4gaXMgdGhlCj4+ID4gPiBiZXN0IHdheQo+PiA+ID4gdG8gZG8gaXQgaW4g dGhlIHNjZW5hcmlvcyB3aGVyZSBYZW4gb24gQVJNIGlzIGJlaW5nIHVzZWQgdG9kYXkuIEkKPj4g PiA+IHVuZGVyc3RhbmQgdGhlIHByaW5jaXBsZXMgYmVoaW5kIGl0LCBidXQgSSBkb24ndCB0aGlu ayB0aGF0IGl0Cj4+ID4gPiB3aWxsIGxlYWQKPj4gPiA+IHRvIGdvb2QgcmVzdWx0cyBpbiBhIHZp cnR1YWxpemVkIGVudmlyb25tZW50LCB3aGVyZSB0aGVyZSBpcyBtb3JlCj4+ID4gPiBhY3Rpdml0 eSBhbmQgbW9yZSB2Y3B1cyB0aGFuIHBjcHVzLgo+PiA+IAo+PiA+IENhbiB5b3UgZGV0YWlsIHdo eSB5b3UgZG9uJ3QgdGhpbmsgaXQgd2lsbCBnaXZlIGdvb2QgcmVzdWx0cz8KPj4gPiAKPj4gPiA+ IAo+PiA+ID4gCj4+ID4gPiBXaGF0IHdlIGRpc2N1c3NlZCBpbiB0aGlzIHRocmVhZCBzbyBmYXIg aXMgYWN0aW9uYWJsZSwgYW5kIGdpdmVzCj4+ID4gPiB1cwo+PiA+ID4gYmlnLkxJVFRMRSBzdXBw b3J0IGluIGEgc2hvcnQgdGltZSBmcmFtZS4gSXQgaXMgYSBnb29kIGZpdCBmb3IKPj4gPiA+IFhl biBvbgo+PiA+ID4gQVJNIHVzZSBjYXNlcyBhbmQgc3RpbGwgbGVhZHMgdG8gbG93ZXIgcG93ZXIg Y29uc3VtcHRpb24gd2l0aCBhbgo+PiA+ID4gd2lzZQo+PiA+ID4gYWxsb2NhdGlvbiBvZiBiaWcg YW5kIExJVFRMRSB2Y3B1cyBhbmQgcGNwdXMgdG8gZ3Vlc3RzLgo+PiA+IAo+PiA+IEhvdyB0aGlz IHdvdWxkIGxlYWQgdG8gbG93ZXIgcG93ZXIgY29uc3VtcHRpb24/IElmIHRoZXJlIGlzIG5vdGhp bmcKPj4gPiBydW5uaW5nCj4+ID4gb2YgdGhlIHByb2Nlc3NvciB3ZSB3b3VsZCBoYXZlIGEgd2Zp IGxvb3Agd2hpY2ggd2lsbCBuZXZlciBwdXQgdGhlCj4+ID4gcGh5c2ljYWwKPj4gPiBDUFUgaW4g ZGVlcCBzbGVlcC4gVGhlIG1haW4gYWR2YW50YWdlIG9mIGJpZy5MSVRUTEUgaXMgdG9vIGJlIGFi bGUKPj4gPiB0byBzd2l0Y2gKPj4gPiBvZmYgYSBjbHVzdGVyL2NwdSB3aGVuIGl0IGlzIG5vdCB1 c2VkLgo+PiA+IAo+PiA+IFdpdGhvdXQgYW55IGtub3dsZWRnZSBpbiBYZW4gKHN1Y2ggYXMgQ1BV IGZyZXEpLCBJIGFtIGFmcmFpZCB0aGUKPj4gPiB0aGUgcG93ZXIKPj4gPiBjb25zdW1wdGlvbiB3 aWxsIHN0aWxsIGJlIHRoZSBzYW1lLgo+PiA+IAo+PiA+ID4gCj4+ID4gPiAKPj4gPiA+IEkgd291 bGQgc3RhcnQgZnJvbSB0aGlzIGFwcHJvYWNoLCB0aGVuIGlmIHNvbWVib2R5IGNvbWVzIGFsb25n Cj4+ID4gPiB3aXRoIGEKPj4gPiA+IHBsYW4gdG8gaW1wbGVtZW50IGEgYmlnLkxJVFRMRSBzd2l0 Y2hlciBpbiBYZW4sIEkgd2VsY29tZSBoZXIgdG8KPj4gPiA+IGRvIGl0Cj4+ID4gPiBhbmQgSSB3 b3VsZCBiZSBoYXBweSB0byBhY2NlcHQgdGhlIGNvZGUgaW4gWGVuLiBXZSdsbCBqdXN0IG1ha2UK Pj4gPiA+IGl0Cj4+ID4gPiBvcHRpb25hbC4KPj4gPiAKPj4gPiBJIHRoaW5rIHdlIGFyZSBkaXNj dXNzaW5nIGhlcmUgYSBzaW1wbGUgZGVzaWduIGZvciBiaWcuTElUVExFLiBJCj4+ID4gbmV2ZXIg YXNrZWQKPj4gPiBQZW5nIHRvIGRvIGFsbCB0aGUgd29yay4gSSBhbSB3b3JyeSB0aGF0IGlmIHdl IHN0YXJ0IHRvIGV4cG9zZSB0aGUKPj4gPiBiaWcuTElUVExFCj4+ID4gdG8gdGhlIHVzZXJzcGFj ZSBpdCB3aWxsIGJlIGhhcmQgaW4gdGhlIGZ1dHVyZSB0byBzdGVwIGJhY2sgZnJvbQo+PiA+IGl0 Lgo+PiAKPj4gSGVsbG8gSnVsaWVuLAo+PiAKPj4gCj4+IEkgcHJlZmVyIHRoZSBzaW1wbGUgZG9h YmxlIG1ldGhvZCwgYW5kIEFzIFN0ZWZhbm8gc2FpZCwgYWN0aW9uYWJsZS4KPj4gCj5ZZXAsIHRo aXMgaXMgYSB2ZXJ5IGdvb2Qgc3RhcnRpbmcgcG9pbnQsIElNTy4KPgo+PiA/Py0gaW50cm9kdWNl IGEgaHlwZXJjYWxsIGludGVyZmFjZSB0byBsZXQgeGwgY2FuIGdldCB0aGUgZGlmZmVyZW50Cj4+ IGNsYXNzZXMgY3B1IGluZm8uCj4+Cj4rMQo+Cj4+ID8/LSBVc2UgdmNwdWNsYXNzIGluIHhsIGNm ZyBmaWxlIHRvIGxldCB1c2VyIGNyZWF0ZSBkaWZmZXJlbnQgdmNwdXMKPj4KPlllcC4KPgo+PiA/ Py0gZXh0cmFjdCBjcHUgY29tcHV0aW5nIGNhcCBmcm9tIGR0cyB0byBkaWZmZXJlbnRpYXRlIGNw dXMuIEFzIHlvdQo+PiBzYWlkLCBiaW5kaW5ncwo+PiA/Pz8/Pz9ub3QgdXBzdHJlYW1lZC4gQnV0 IHRoaXMgaXMgbm90IHRoZSBoYXJkcG9pbnQsIHdlIGNvdWxkIGNoYW5nZSB0aGUKPj4gaW5mbywg d2hldGhlcgo+PiA/Pz8/Pz9kbWlwcyBvciBjYXAgaW4gZnV0dXJlLgo+Pgo+WWVzIChvciBJIHNo b3VsZCBzYXksICJ3aGF0ZXZlciIsIGFzIEkga25vdyBub3RoaW5nIGFib3V0IGFsbAo+dGhpcyEg Oi1QKQoKT25lIG1vcmUgdGhpbmcgSSdkIGxpa2UgdG8gYXNrLCBkbyB5b3UgcHJlZmVyIGNwdSBj bGFzc2VzIHRvIGJlIEFSTSBzcGVjaWZpYyBvciBBUk0vWDg2CmNvbW1vbj8KClRoYW5rcywKUGVu Zy4KCj4KPj4gPz8tIHVzZSBjcHUgaGFyZCBhZmZpbml0eSB0byBibG9jayB2Y3B1IHNjaGVkdWxp bmcgYnd0d2VlbiBsaXR0bGUgYW5kCj4+IGJpZyBwY3B1Lgo+Pgo+InRvIGJsb2NrIHZjcHUgc2No ZWR1bGluZyB3aXRoaW4gdGhlIHNwZWNpZmllZCBjbGFzc2VzLCBmb3IgZWFjaCB2Y3B1Igo+Cj5C dXQsIGFnYWluLCB5ZXMuCj4KPj4gPz8tIGJsb2NrIHVzZXIgc2V0dGluZyB2Y3B1IGhhcmQgYWZm aW5pdHkgYnd0d2VlbiBiaWcgYW5kIExJVFRMRS4KPj4KPiJiZXR3ZWVuIHRoZSBzcGVjaWZpZWQg Y2xhc3MiCj4KPkluZGVlZC4KPgo+PiA/Py0gb25seSBoYXJkIGFmZmluaXR5IHNlZW1zIGVub3Vn aCwgbm8gbmVlZCBzb2Z0IGFmZmluaXR5Lgo+PiAKPkNvcnJlY3QuIEp1c3QgZG9uJ3QgY2FyZSBh dCBhbGwgYW5kIGRvbid0IHRvdWNoIHNvZnQgYWZmaW5pdHkgZm9yIG5vdy4KPgo+PiBBbnl3YXks IGZvciB2Y3B1IHNjaGVkdWxpbmcgYnd0d2VlbiBiaWcgYW5kIExJVFRMRSwgaWYgdGhpcyBpcyB0 aGUKPj4gcmlnaHQKPj4gZGlyZWN0aW9uIGFuZCB5b3UgaGF2ZSBhbiBpZGVhIG9uIGhvdyB0byBp bXBsZW1lbnQsIEkgY291bGQgZm9sbG93Cj4+IHlvdSBvbgo+PiBlbmFibGluZyB0aGlzIGZlYXR1 cmUgd2l0aCB5b3UgbGVhZGluZyB0aGUgd29yay4gSSBkbyBub3QgaGF2ZSBtdWNoCj4+IGlkZWEg b24gdGhpcy4KPj4gCj5UaGlzIGNhbiBjb21lIGxhdGVyLCBlaXRoZXIgYXMgYW4gZW5oYW5jZW1l bnQgb2YgdGhpcyBhZmZpbml0eSBiYXNlZAo+c29sdXRpb24sIG9yIGJlaW5nIGltcGxlbWVudGVk IG9uIHRvcCBvZiBpdC4KPgo+SW4gYW55IGNhc2UsIGxldCdzIHN0YXJ0IHdpdGggdGhlIGFmZmlu aXR5IGJhc2VkIHNvbHV0aW9uIGZvciBub3cuIEl0J3MKPmEgZ29vZCBsZXZlbCBzdXBwb3J0IGFs cmVhZHksIGFuZCBhIG5pY2UgZmlyc3Qgc3RlcCB0b3dhcmQgZnV0dXJlCj5pbXByb3ZlbWVudHMu Cj4KPk9oLCBidHcsIHBsZWFzZSBkb24ndCB0aHJvdyBhd2F5IHRoaXMgY3B1cG9vbCBwYXRjaCBz ZXJpZXMgZWl0aGVyIQo+Cj5BIGZlYXR1cmUgbGlrZSBgeGwgY3B1cG9vbC1iaWdsaXR0bGUtc3Bs aXQnIGNhbiBzdGlsbCBiZSBpbnRlcmVzdGluZywKPmNvbXBsZXRlbHkgb3J0aG9nb25hbGx5IGFu ZCBpbmRlcGVuZGVudGx5IGZyb20gdGhlIGFmZmluaXR5IGJhc2VkIHdvcmssCj5hbmQgdGhpcyBz ZXJpZXMgbG9va3MgbGlrZSBpdCBjYW4gYmUgdXNlZCB0byBpbXBsZW1lbnQgdGhhdC4gOi0pCj4K PlRoYW5rcyBhbmQgUmVnYXJkcywKPkRhcmlvCj4tLSAKPjw8VGhpcyBoYXBwZW5zIGJlY2F1c2Ug SSBjaG9vc2UgaXQgdG8gaGFwcGVuIT4+IChSYWlzdGxpbiBNYWplcmUpCj4tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+RGFy aW8gRmFnZ2lvbGksIFBoLkQsIGh0dHA6Ly9hYm91dC5tZS9kYXJpby5mYWdnaW9saQo+U2VuaW9y IFNvZnR3YXJlIEVuZ2luZWVyLCBDaXRyaXggU3lzdGVtcyBSJkQgTHRkLiwgQ2FtYnJpZGdlIChV SykKCgoKLS0gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8v bGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK