Thread (5 messages) flat view 5 messages, 2 authors, 2018-03-20

RE: [RFC PATCH 1/2] clk: add new APIs to operate on all available clocks

From: "A.s. Dong" <aisheng.dong@nxp.com>
Date: 2018-03-20 03:21:27
Also in: linux-arm-kernel, linux-clk, lkml

PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBTdGVwaGVuIEJveWQgW21haWx0
bzpzYm95ZEBrZXJuZWwub3JnXQ0KPiBTZW50OiBUdWVzZGF5LCBNYXJjaCAyMCwgMjAxOCAxMjoy
MiBBTQ0KPiBUbzogQS5zLiBEb25nIDxhaXNoZW5nLmRvbmdAbnhwLmNvbT47IGxpbnV4LWNsa0B2
Z2VyLmtlcm5lbC5vcmcNCj4gQ2M6IGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmc7IGxpbnV4
LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZzsgZGwtDQo+IGxpbnV4LWlteCA8bGludXgt
aW14QG54cC5jb20+OyBhaXNoZW5nLmRvbmdAY29kZWF1cm9yYS5vcmc7IGxpbnV4LQ0KPiBmYmRl
dkB2Z2VyLmtlcm5lbC5vcmc7IHlhbWFkYS5tYXNhaGlyb0Bzb2Npb25leHQuY29tOw0KPiBzYm95
ZEBjb2RlYXVyb3JhLm9yZzsgaGRlZ29lZGVAcmVkaGF0LmNvbTsNCj4gYi56b2xuaWVya2llQHNh
bXN1bmcuY29tOyBBLnMuIERvbmcgPGFpc2hlbmcuZG9uZ0BueHAuY29tPg0KPiBTdWJqZWN0OiBS
ZTogW1JGQyBQQVRDSCAxLzJdIGNsazogYWRkIG5ldyBBUElzIHRvIG9wZXJhdGUgb24gYWxsIGF2
YWlsYWJsZQ0KPiBjbG9ja3MNCj4gDQo+IFF1b3RpbmcgRG9uZyBBaXNoZW5nICgyMDE4LTAxLTIz
IDA0OjUwOjQwKQ0KPiA+IFRoaXMgcGF0Y2ggaW50cm9kdWNlcyBvZl9jbGtfYnVsa19nZXRfYWxs
IGFuZCBjbGtfYnVsa194X2FsbCBBUElzIHRvDQo+ID4gdXNlcnMgd2hvIGp1c3Qgd2FudCB0byBo
YW5kbGUgYWxsIGF2YWlsYWJsZSBjbG9ja3MgZnJvbSBkZXZpY2UgdHJlZQ0KPiA+IHdpdGhvdXQg
bmVlZCB0byBrbm93IHRoZSBkZXRhaWxlZCBjbG9jayBpbmZvcm1hdGlvbiBsaWtlcyBjbG9jaw0K
PiA+IG51bWJlcnMgYW5kIG5hbWVzLiBUaGlzIGlzIHVzZWZ1bCBpbiB3cml0aW5nIHNvbWUgZ2Vu
ZXJpYyBkcml2ZXJzIHRvDQo+ID4gaGFuZGxlIGNsb2NrIHBhcnQuDQo+ID4NCj4gPiBDYzogU3Rl
cGhlbiBCb3lkIDxzYm95ZEBjb2RlYXVyb3JhLm9yZz4NCj4gPiBDYzogTWFzYWhpcm8gWWFtYWRh
IDx5YW1hZGEubWFzYWhpcm9Ac29jaW9uZXh0LmNvbT4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBEb25n
IEFpc2hlbmcgPGFpc2hlbmcuZG9uZ0BueHAuY29tPg0KPiA+DQo+ID4gLS0tDQo+ID4gQSBmZXcg
cXVlc3Rpb24gbWF5IG5lZWQgZGlzY3VzczoNCj4gPiAxKSAgVGhpcyBwYXRjaCBpcyB3cml0dGVu
IGJhc2VkIG9uIG9mX2Nsa19idWxrX2dldC4NCj4gPiBbVjQsMS8xXSBjbGs6IGJ1bGs6IGFkZCBv
Zl9jbGtfYnVsa19nZXQoKQ0KPiA+DQo+IGh0dHBzOi8vZW1lYTAxLnNhZmVsaW5rcy5wcm90ZWN0
aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZwYXQNCj4gPg0KPiBjaHdvcmsua2Vy
bmVsLm9yZyUyRnBhdGNoJTJGOTk3MTUyNyUyRiZkYXRhPTAyJTdDMDElN0NhaXNoZW5nLmRvbg0K
PiBnJTQwbg0KPiA+DQo+IHhwLmNvbSU3QzQ0OTIwOWRkM2UxOTQ5MWFmYjk5MDhkNThkYjU5NjZk
JTdDNjg2ZWExZDNiYzJiNGM2ZmE5MmMNCj4gZDk5YzVjDQo+ID4NCj4gMzAxNjM1JTdDMCU3QzAl
N0M2MzY1NzA3MzM0MTE3NTQxMjcmc2RhdGE9NG01ZW1YT1IlMkJ1aTNNcXcNCj4gTWJBSlFEUXhK
Y0UNCj4gPiAlMkJ4TGNCNTFoRWkycTNWMk84JTNEJnJlc2VydmVkPTAgU3RlcGVuIG9uY2Ugc2Fp
ZCB3ZSBtYXkgbm90DQo+IG5lZWQgaXQsDQo+ID4gYnV0IGkgZ3Vlc3MgYXMgd2UgYWxyZWFkeSBo
YXZlIGNsa19idWxrX2dldCwgdGhlcmUgbWF5IGJlIGd1eXMgd2hvDQo+ID4gd2FudCBvZl9jbGtf
YnVsa19nZXQgYXMgd2VsbCBpZiB0aGV5IG5lZWQgc3BlY2lmeSB0aGUgY2xvY2sgY291bnQNCj4g
PiBpbmZvcm1hdGlvbiwgYmVjYXVlcyBvZl9jbGtfYnVsa19nZXRfYWxsIHdpbGwgbm90IGNoZWNr
IHRoZSBjb3VudC4NCj4gPiBBbmQgb2ZfY2xrX2J1bGtfZ2V0IGlzIGFsc28gaGVscGZ1bCB3aGVu
IGltcGxlbWVudGluZw0KPiA+IG9mX2Nsa19idWxrX2dldF9hbGwuDQo+IA0KPiBIbW0gb2suIEl0
J3Mgb2sgdG8gaW1wbGVtZW50IGl0IG9uIHRvcCBvZiBvZl9jbGtfYnVsa19nZXQgSSBzdXBwb3Nl
LCBidXQNCj4gbWF5YmUgdGhhdCBBUEkgY2FuIGJlIGtlcHQgcHJpdmF0ZSB1bnRpbCBzb21lb25l
IGNhbiBwcm92ZSB0aGV5IG5lZWQgaXQNCj4gYmVjYXVzZSB0aGV5IGRvbid0IGhhdmUgYSBzdHJ1
Y3QgZGV2aWNlIHBvaW50ZXIuIENhbiB5b3UgcGljayB0aGF0IHBhdGNoIGZyb20NCj4gdGhlIGxp
c3QgYW5kIHJlc2VuZCBpbiB0aGUgc2VyaWVzPw0KPiANCg0KT2YgY291cnNlLiBJIHdpbGwgZG8g
dGhhdC4NCg0KPiA+DQo+ID4gMikgSXQgb25seSBpbXBsZW1lbnRzIHRoZSBEVCB0eXBlIGNsa19n
ZXRfYWxsIGFzIGkgc2VlIFN0ZXBoZW4gc2FpZCB3ZQ0KPiA+IHByb2JhYmx5IG1heSBub3QgbmVl
ZCB0byBpbXBsZW1lbnQgbm9uLWR0IHR5cGUgYXMgdGhlcmUncmUgc3RpbGwgbm8NCj4gPiB1c2Vy
cy4NCj4gDQo+IEdvb2QuDQo+IA0KPiA+DQo+ID4gSWYgd2UgZG8gd2FudCB0byBpbXBsZW1lbnQg
bm9uLWR0IHR5cGUgYXMgd2VsbCwgd2UgY291bGQgcmV2aXNlIHRoZQ0KPiA+IHBhdGNoIHRvIGFk
ZCBpdCB0b28uDQo+ID4gLS0tDQo+ID4gIGRyaXZlcnMvY2xrL2Nsay1idWxrLmMgfCA2NA0KPiAr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KPiA+ICBp
bmNsdWRlL2xpbnV4L2Nsay5oICAgIHwgNjENCj4gKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKy0NCj4gPiAgMiBmaWxlcyBjaGFuZ2VkLCAxMjQgaW5zZXJ0aW9u
cygrKSwgMSBkZWxldGlvbigtKQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvY2xrL2Ns
ay1idWxrLmMgYi9kcml2ZXJzL2Nsay9jbGstYnVsay5jIGluZGV4DQo+ID4gMWMxYTc5ZC4uYmFj
MmFhZSAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL2Nsay9jbGstYnVsay5jDQo+ID4gKysrIGIv
ZHJpdmVycy9jbGsvY2xrLWJ1bGsuYw0KPiA+IEBAIC0xNyw5ICsxNywxMSBAQA0KPiA+ICAgKi8N
Cj4gPg0KPiA+ICAjaW5jbHVkZSA8bGludXgvY2xrLmg+DQo+ID4gKyNpbmNsdWRlIDxsaW51eC9j
bGstcHJvdmlkZXIuaD4NCj4gPiAgI2luY2x1ZGUgPGxpbnV4L2RldmljZS5oPg0KPiA+ICAjaW5j
bHVkZSA8bGludXgvZXhwb3J0Lmg+DQo+ID4gICNpbmNsdWRlIDxsaW51eC9vZi5oPg0KPiA+ICsj
aW5jbHVkZSA8bGludXgvc2xhYi5oPg0KPiA+DQo+ID4gICNpZiBkZWZpbmVkKENPTkZJR19PRikg
JiYgZGVmaW5lZChDT05GSUdfQ09NTU9OX0NMSykgIGludA0KPiA+IF9fbXVzdF9jaGVjayBvZl9j
bGtfYnVsa19nZXQoc3RydWN0IGRldmljZV9ub2RlICpucCwgaW50IG51bV9jbGtzLCBAQA0KPiA+
IC01MCw2ICs1Miw0NSBAQCBpbnQgX19tdXN0X2NoZWNrIG9mX2Nsa19idWxrX2dldChzdHJ1Y3Qg
ZGV2aWNlX25vZGUNCj4gKm5wLCBpbnQgbnVtX2Nsa3MsDQo+ID4gICAgICAgICByZXR1cm4gcmV0
Ow0KPiA+ICB9DQo+ID4gIEVYUE9SVF9TWU1CT0wob2ZfY2xrX2J1bGtfZ2V0KTsNCj4gPiArDQo+
ID4gK3N0cnVjdCBjbGtfYnVsayBfX211c3RfY2hlY2sgKm9mX2Nsa19idWxrX2dldF9hbGwoc3Ry
dWN0IGRldmljZV9ub2RlDQo+ID4gKypucCkgew0KPiA+ICsgICAgICAgc3RydWN0IGNsa19idWxr
ICpjbGtfYnVsazsNCj4gPiArICAgICAgIGludCBudW1fY2xrczsNCj4gPiArICAgICAgIGludCBy
ZXQ7DQo+ID4gKw0KPiA+ICsgICAgICAgbnVtX2Nsa3MgPSBvZl9jbGtfZ2V0X3BhcmVudF9jb3Vu
dChucCk7DQo+ID4gKyAgICAgICBpZiAoIW51bV9jbGtzKQ0KPiA+ICsgICAgICAgICAgICAgICBy
ZXR1cm4gTlVMTDsNCj4gPiArDQo+ID4gKyAgICAgICBjbGtfYnVsayA9IGt6YWxsb2Moc2l6ZW9m
KCpjbGtfYnVsaykgKw0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgIG51bV9jbGtzICog
c2l6ZW9mKHN0cnVjdCBjbGtfYnVsa19kYXRhKSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAg
ICAgICBHRlBfS0VSTkVMKTsNCj4gPiArICAgICAgIGlmICghY2xrX2J1bGspDQo+ID4gKyAgICAg
ICAgICAgICAgIHJldHVybiBFUlJfUFRSKC1FTk9NRU0pOw0KPiA+ICsNCj4gPiArICAgICAgIGNs
a19idWxrLT5udW1fY2xrcyA9IG51bV9jbGtzOw0KPiA+ICsgICAgICAgcmV0ID0gb2ZfY2xrX2J1
bGtfZ2V0KG5wLCBjbGtfYnVsay0+bnVtX2Nsa3MsIGNsa19idWxrLT5jbGtzKTsNCj4gPiArICAg
ICAgIGlmIChyZXQpIHsNCj4gPiArICAgICAgICAgICAgICAga2ZyZWUoY2xrX2J1bGspOw0KPiA+
ICsgICAgICAgICAgICAgICByZXR1cm4gRVJSX1BUUihyZXQpOw0KPiA+ICsgICAgICAgfQ0KPiAN
Cj4gSGFzIHRoaXMgYmVlbiB0ZXN0ZWQ/IGNsa19idWxrLT5jbGtzIHByb2JhYmx5IHBvaW50cyB0
byBqdW5rPw0KPiANCg0KWW91J3JlIHJpZ2h0LiBXaWxsIGZpeCBpbiBhIGZvcm1hbCBwYXRjaC4N
Cg0KPiA+ICsNCj4gPiArICAgICAgIHJldHVybiBjbGtfYnVsazsNCj4gPiArfQ0KPiA+ICtFWFBP
UlRfU1lNQk9MKG9mX2Nsa19idWxrX2dldF9hbGwpOw0KPiA+ICsNCj4gPiArdm9pZCBvZl9jbGtf
YnVsa19wdXRfYWxsKHN0cnVjdCBjbGtfYnVsayAqY2xrX2J1bGspIHsNCj4gPiArICAgICAgIGlm
IChJU19FUlJfT1JfTlVMTChjbGtfYnVsaykpDQo+ID4gKyAgICAgICAgICAgICAgIHJldHVybjsN
Cj4gPiArDQo+ID4gKyAgICAgICBjbGtfYnVsa19wdXQoY2xrX2J1bGstPm51bV9jbGtzLCBjbGtf
YnVsay0+Y2xrcyk7DQo+ID4gKw0KPiA+ICsgICAgICAga2ZyZWUoY2xrX2J1bGstPmNsa3MpOw0K
PiA+ICsgICAgICAga2ZyZWUoY2xrX2J1bGspOw0KPiA+ICt9DQo+ID4gK0VYUE9SVF9TWU1CT0wo
b2ZfY2xrX2J1bGtfcHV0X2FsbCk7DQo+ID4gICNlbmRpZg0KPiANCj4gTXkgZ29hbCB3YXMgdG8g
bWFrZSBkZXZpY2UgZHJpdmVycyBwYXNzIGluIHRoZWlyIHN0cnVjdCBkZXZpY2UgdG8NCj4gY2xr
X2J1bGtfZ2V0X2FsbCgpIGFuZCB0aGVuIGhhdmUgdGhhdCBjYWxsIGludG8gYSBwcml2YXRlIERU
IGhlbHBlciBmdW5jdGlvbg0KPiBsaWtlIG9mX2Nsa19idWxrX2dldF9hbGwoKS4gV2l0aCB5b3Vy
IHBhdGNoIDIgdGhhdCBjb3VsZCBzdGlsbCBiZSBkb25lIHNvIGxldCdzDQo+IGdvIHRoYXQgZGly
ZWN0aW9uPw0KPiANCg0KU291bmRzIGdvb2QgdG8gbWUuDQoNCj4gPg0KPiA+ICB2b2lkIGNsa19i
dWxrX3B1dChpbnQgbnVtX2Nsa3MsIHN0cnVjdCBjbGtfYnVsa19kYXRhICpjbGtzKSBAQCAtMTA3
LDYNCj4gPiArMTQ4LDEyIEBAIHZvaWQgY2xrX2J1bGtfdW5wcmVwYXJlKGludCBudW1fY2xrcywg
Y29uc3Qgc3RydWN0DQo+ID4gY2xrX2J1bGtfZGF0YSAqY2xrcykgIH0gIEVYUE9SVF9TWU1CT0xf
R1BMKGNsa19idWxrX3VucHJlcGFyZSk7DQo+ID4NCj4gPiArdm9pZCBpbmxpbmUgY2xrX2J1bGtf
dW5wcmVwYXJlX2FsbChjb25zdCBzdHJ1Y3QgY2xrX2J1bGsgKmNsa19idWxrKSB7DQo+ID4gKyAg
ICAgICBjbGtfYnVsa191bnByZXBhcmUoY2xrX2J1bGstPm51bV9jbGtzLCBjbGtfYnVsay0+Y2xr
cyk7IH0NCj4gPiArRVhQT1JUX1NZTUJPTF9HUEwoY2xrX2J1bGtfdW5wcmVwYXJlX2FsbCk7DQo+
IA0KPiBEbyB3ZSByZWFsbHkgbmVlZCB0aGVzZSBfYWxsIEFQSXMgdGhvdWdoPw0KPiANCj4gPiAr
DQo+ID4gIC8qKg0KPiA+ICAgKiBjbGtfYnVsa19wcmVwYXJlIC0gcHJlcGFyZSBhIHNldCBvZiBj
bG9ja3MNCj4gPiAgICogQG51bV9jbGtzOiB0aGUgbnVtYmVyIG9mIGNsa19idWxrX2RhdGEgQEAg
LTEzOSw2ICsxODYsMTEgQEAgaW50DQo+ID4gX19tdXN0X2NoZWNrIGNsa19idWxrX3ByZXBhcmUo
aW50IG51bV9jbGtzLCAgfQ0KPiA+IEVYUE9SVF9TWU1CT0xfR1BMKGNsa19idWxrX3ByZXBhcmUp
Ow0KPiA+DQo+ID4gK2ludCBpbmxpbmUgX19tdXN0X2NoZWNrIGNsa19idWxrX3ByZXBhcmVfYWxs
KGNvbnN0IHN0cnVjdCBjbGtfYnVsaw0KPiA+ICsqY2xrX2J1bGspDQo+IA0KPiBpbmxpbmUgd29u
J3QgaGVscCBtdWNoIGhlcmUuIE1heWJlIHRoZXNlIHdyYXBwZXJzIHNob3VsZCBnbyBpbnRvIHRo
ZQ0KPiBoZWFkZXIgZmlsZT8NCj4gDQoNCldpbGwgdHJ5IHRoYXQuDQoNCj4gPiArew0KPiA+ICsg
ICAgICAgcmV0dXJuIGNsa19idWxrX3ByZXBhcmUoY2xrX2J1bGstPm51bV9jbGtzLCBjbGtfYnVs
ay0+Y2xrcyk7IH0NCj4gPiArDQo+ID4gICNlbmRpZiAvKiBDT05GSUdfSEFWRV9DTEtfUFJFUEFS
RSAqLw0KPiA+DQo+ID4gIC8qKg0KPiA+IEBAIC0xNTgsNiArMjEwLDEyIEBAIHZvaWQgY2xrX2J1
bGtfZGlzYWJsZShpbnQgbnVtX2Nsa3MsIGNvbnN0IHN0cnVjdA0KPiA+IGNsa19idWxrX2RhdGEg
KmNsa3MpICB9ICBFWFBPUlRfU1lNQk9MX0dQTChjbGtfYnVsa19kaXNhYmxlKTsNCj4gPg0KPiA+
ICt2b2lkIGlubGluZSBjbGtfYnVsa19kaXNhYmxlX2FsbChjb25zdCBzdHJ1Y3QgY2xrX2J1bGsg
KmNsa19idWxrKQ0KPiANCj4gZGl0dG8NCj4gDQo+ID4gK3sNCj4gPiArICAgICAgIHJldHVybiBj
bGtfYnVsa19kaXNhYmxlKGNsa19idWxrLT5udW1fY2xrcywgY2xrX2J1bGstPmNsa3MpOyB9DQo+
ID4gK0VYUE9SVF9TWU1CT0xfR1BMKGNsa19idWxrX2Rpc2FibGVfYWxsKTsNCj4gPiArDQo+ID4g
IC8qKg0KPiA+ICAgKiBjbGtfYnVsa19lbmFibGUgLSB1bmdhdGUgYSBzZXQgb2YgY2xvY2tzDQo+
ID4gICAqIEBudW1fY2xrczogdGhlIG51bWJlciBvZiBjbGtfYnVsa19kYXRhIEBAIC0xODgsMyAr
MjQ2LDkgQEAgaW50DQo+ID4gX19tdXN0X2NoZWNrIGNsa19idWxrX2VuYWJsZShpbnQgbnVtX2Ns
a3MsIGNvbnN0IHN0cnVjdCBjbGtfYnVsa19kYXRhDQo+ICpjbGtzKQ0KPiA+ICAgICAgICAgcmV0
dXJuICByZXQ7DQo+ID4gIH0NCj4gPiAgRVhQT1JUX1NZTUJPTF9HUEwoY2xrX2J1bGtfZW5hYmxl
KTsNCj4gPiArDQo+ID4gK2ludCBpbmxpbmUgX19tdXN0X2NoZWNrIGNsa19idWxrX2VuYWJsZV9h
bGwoY29uc3Qgc3RydWN0IGNsa19idWxrDQo+ID4gKypjbGtfYnVsaykNCj4gDQo+IGFnYWluDQo+
IA0KPiA+ICt7DQo+ID4gKyAgICAgICByZXR1cm4gY2xrX2J1bGtfZW5hYmxlKGNsa19idWxrLT5u
dW1fY2xrcywgY2xrX2J1bGstPmNsa3MpOyB9DQo+ID4gK0VYUE9SVF9TWU1CT0xfR1BMKGNsa19i
dWxrX2VuYWJsZV9hbGwpOw0KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L2Nsay5oIGIv
aW5jbHVkZS9saW51eC9jbGsuaCBpbmRleA0KPiA+IDA5YWU3NjAuLmNjYWZkYTEgMTAwNjQ0DQo+
ID4gLS0tIGEvaW5jbHVkZS9saW51eC9jbGsuaA0KPiA+ICsrKyBiL2luY2x1ZGUvbGludXgvY2xr
LmgNCj4gPiBAQCAtOTIsNiArOTIsMjEgQEAgc3RydWN0IGNsa19idWxrX2RhdGEgew0KPiA+ICAg
ICAgICAgc3RydWN0IGNsayAgICAgICAgICAgICAgKmNsazsNCj4gPiAgfTsNCj4gPg0KPiA+ICsv
KioNCj4gPiArICogc3RydWN0IGNsa19idWxrIC0gYnVsayBjbGsgc3RydWN0dXJlDQo+ID4gKyAq
DQo+ID4gKyAqIEBudW1fY2xrczogdGhlIG51bWJlciBvZiBhdmFsaWFibGUgY2xvY2tzIGluIHRo
aXMgYnVsaw0KPiA+ICsgKiBAY2xrczogc3RydWN0IGNsa19idWxrX2RhdGEgKiB0byBzdG9yZSB0
aGUgYXNzb2NpYXRlZCBjbG9jaw0KPiA+ICsgKg0KPiA+ICsgKiBUaGUgQ0xLIEFQSXMgcHJvdmlk
ZSBhIHNlcmllcyBvZiBjbGtfYnVsa194X2FsbCgpIEFQSSBjYWxscyBhcw0KPiA+ICsgKiBhIGNv
bnZlbmllbmNlIHRvIGNvbnN1bWVycyB3aGljaCByZXF1aXJlIG11bHRpcGxlIGNsa3MuICBUaGlz
DQo+ID4gKyAqIHN0cnVjdHVyZSBpcyB1c2VkIHRvIG1hbmFnZSBkYXRhIGZvciB0aGVzZSBjYWxs
cy4NCj4gPiArICovDQo+ID4gK3N0cnVjdCBjbGtfYnVsayB7DQo+ID4gKyAgICAgICBpbnQgbnVt
X2Nsa3M7DQo+ID4gKyAgICAgICBzdHJ1Y3QgY2xrX2J1bGtfZGF0YSAqY2xrczsNCj4gPiArfTsN
Cj4gDQo+IFRoaXMgY291bGQgZ28gYXdheSwgYW5kIHdlIGNvdWxkIHJldHVybiB0aGUgbnVtYmVy
IG9mIGNsa3MgZnJvbQ0KPiBjbGtfYnVsa19nZXRfYWxsKCkgYXMgYSBwb3NpdGl2ZSBudW1iZXIs
IDAgaWYgdGhlcmUgYXJlIG5vbmUsIGFuZCBhIG5lZ2F0aXZlDQo+IG51bWJlciBpZiBzb21ldGhp
bmcgZmFpbGVkLiBUaGVuIHdlIGRvbid0IG5lZWQgdGhlIF9hbGwgdmFyaWFudHMgb3IgYQ0KPiB3
cmFwcGVyIHN0cnVjdC4gSXQgd291bGQgYmUgbmljZSB0byBhdm9pZCB0aGUgZXh0cmEgdmFyaWFu
dHMganVzdCBiZWNhdXNlIHdlDQo+IG5lZWQgdG8gdGVsbCBpdCB0aGUgbnVtYmVyIG9mIGNsa3Mg
dG8gaGFuZGxlLg0KDQpUaGlzIGxvb2tzIGxpa2UgYSBnb29kIGlkZWEuDQpJIHdpbGwgdHJ5IGl0
Lg0KDQpUaGFua3MgZm9yIHlvdXIgZ29vZCBzdWdnZXN0aW9ucy4NCg0KUmVnYXJkcw0KRG9uZyBB
aXNoZW5nDQo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help