From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailout3.samsung.com ([203.254.224.33]) by canuck.infradead.org with esmtp (Exim 4.62 #1 (Red Hat Linux)) id 1GfvNk-0006O6-Iw for linux-mtd@lists.infradead.org; Fri, 03 Nov 2006 04:30:50 -0500 Received: from ep_ms12_bk (mailout3.samsung.com [203.254.224.33]) by mailout3.samsung.com (iPlanet Messaging Server 5.2 Patch 2 (built Jul 14 2004)) with ESMTP id <0J8500BL0EDR2L@mailout3.samsung.com> for linux-mtd@lists.infradead.org; Fri, 03 Nov 2006 18:29:51 +0900 (KST) Received: from ep_spt02 (ms12.samsung.com [203.254.225.99]) by ms12.samsung.com (iPlanet Messaging Server 5.2 Patch 2 (built Jul 14 2004)) with ESMTP id <0J8500G6YEDRDP@ms12.samsung.com> for linux-mtd@lists.infradead.org; Fri, 03 Nov 2006 18:29:51 +0900 (KST) Content-return: prohibited Date: Fri, 03 Nov 2006 09:29:22 +0000 (GMT) From: Kyungmin Park Subject: OneNAND: interrupt based wait support (for reference) To: linux-mtd@lists.infradead.org Message-id: <8759205.60761162546191576.JavaMail.weblogic@ep_ml21> MIME-version: 1.0 MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-transfer-encoding: base64 Reply-To: kyungmin.park@samsung.com List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , SGksDQoNClRoZSBwcmV2aW91cyBtYWlsIGhhcyBzb21lIHByb2JsZW0uIFNvIEkgc2VuZCBpdCBh Z2Fpbi4NCg0KSGVyZSdzIGZ1bGwgcmVmZXJlbmVjZSBjb2RlIGFnYWluc3QgbXRkIHRyZWUuDQoN Ckp1c3QgcmVmZXJlbmNlIHRvIGFwb2xsb24gc291cmNlLiBBcG9sbG9uIHBhdGNoIHdpbGwgYmUg c2VudCB0byBvbWFwIG1haWxpbmcgbGlzdC4NCg0KUGxlYXNlIGFwcGx5IHRoZSBwcmV2aW91cyBw YXRjaC4gOikNCg0KVGhhbmsgeW91LA0KS3l1bmdtaW4gUGFyaw0KDQotLQ0KDQoNCmRpZmYgLS1n aXQgYS9hcmNoL2FybS9tYWNoLW9tYXAyL2JvYXJkLWFwb2xsb24uYyBiL2FyY2gvYXJtL21hY2gt b21hcDIvYm9hcmQtYXBvbGxvbi5jDQppbmRleCAwM2Q2OTA1Li5lMTgxOTQ1IDEwMDY0NA0KLS0t IGEvYXJjaC9hcm0vbWFjaC1vbWFwMi9ib2FyZC1hcG9sbG9uLmMNCisrKyBiL2FyY2gvYXJtL21h Y2gtb21hcDIvYm9hcmQtYXBvbGxvbi5jDQpAQCAtMjQsNiArMjQsNyBAQCAjaW5jbHVkZSA8bGlu dXgvbXRkL3BhcnRpdGlvbnMuaD4NCiAjaW5jbHVkZSA8bGludXgvbXRkL29uZW5hbmQuaD4NCiAj aW5jbHVkZSA8bGludXgvaW50ZXJydXB0Lmg+DQogI2luY2x1ZGUgPGxpbnV4L2RlbGF5Lmg+DQor I2luY2x1ZGUgPGxpbnV4L2lycS5oPg0KIA0KICNpbmNsdWRlIDxhc20vaGFyZHdhcmUuaD4NCiAj aW5jbHVkZSA8YXNtL21hY2gtdHlwZXMuaD4NCkBAIC00NSw2ICs0Niw4IEBAICNkZWZpbmUgU1df RU5URVJfR1BJTzE2CQkxNg0KICNkZWZpbmUgU1dfVVBfR1BJTzE3CQkxNw0KICNkZWZpbmUgU1df RE9XTl9HUElPNTgJCTU4DQogDQorI2RlZmluZSBBUE9MTE9OX0ZMQVNIX0dQSU9fSVJRCTcyDQor DQogc3RhdGljIHN0cnVjdCBtdGRfcGFydGl0aW9uIGFwb2xsb25fcGFydGl0aW9uc1tdID0gew0K IAl7DQogCQkubmFtZQkJPSAiWC1Mb2FkZXIgKyBVLUJvb3QiLA0KQEAgLTg0LDEwICs4NywxNyBA QCBzdGF0aWMgc3RydWN0IGZsYXNoX3BsYXRmb3JtX2RhdGEgYXBvbGxvDQogCS5ucl9wYXJ0cwk9 IEFSUkFZX1NJWkUoYXBvbGxvbl9wYXJ0aXRpb25zKSwNCiB9Ow0KIA0KLXN0YXRpYyBzdHJ1Y3Qg cmVzb3VyY2UgYXBvbGxvbl9mbGFzaF9yZXNvdXJjZSA9IHsNCi0JLnN0YXJ0CQk9IEFQT0xMT05f Q1MwX0JBU0UsDQotCS5lbmQJCT0gQVBPTExPTl9DUzBfQkFTRSArIFNaXzEyOEssDQotCS5mbGFn cwkJPSBJT1JFU09VUkNFX01FTSwNCitzdGF0aWMgc3RydWN0IHJlc291cmNlIGFwb2xsb25fZmxh c2hfcmVzb3VyY2VbXSA9IHsNCisJWzBdID0gew0KKwkJLnN0YXJ0CT0gQVBPTExPTl9DUzBfQkFT RSwNCisJCS5lbmQJPSBBUE9MTE9OX0NTMF9CQVNFICsgU1pfMTI4SywNCisJCS5mbGFncwk9IElP UkVTT1VSQ0VfTUVNLA0KKwl9LA0KKwlbMV0gPSB7DQorCQkuc3RhcnQJPSBPTUFQX0dQSU9fSVJR KEFQT0xMT05fRkxBU0hfR1BJT19JUlEpLA0KKwkJLmVuZAk9IE9NQVBfR1BJT19JUlEoQVBPTExP Tl9GTEFTSF9HUElPX0lSUSksDQorCQkuZmxhZ3MJPSBJT1JFU09VUkNFX0lSUSwNCisJfSwNCiB9 Ow0KIA0KIHN0YXRpYyBzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlIGFwb2xsb25fb25lbmFuZF9kZXZp Y2UgPSB7DQpAQCAtOTYsOCArMTA2LDggQEAgc3RhdGljIHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2Ug YXBvbGxvbl9vbg0KIAkuZGV2CQk9IHsNCiAJCS5wbGF0Zm9ybV9kYXRhCT0gJmFwb2xsb25fZmxh c2hfZGF0YSwNCiAJfSwNCi0JLm51bV9yZXNvdXJjZXMJPSBBUlJBWV9TSVpFKCZhcG9sbG9uX2Zs YXNoX3Jlc291cmNlKSwNCi0JLnJlc291cmNlCT0gJmFwb2xsb25fZmxhc2hfcmVzb3VyY2UsDQor CS5udW1fcmVzb3VyY2VzCT0gQVJSQVlfU0laRShhcG9sbG9uX2ZsYXNoX3Jlc291cmNlKSwNCisJ LnJlc291cmNlCT0gYXBvbGxvbl9mbGFzaF9yZXNvdXJjZSwNCiB9Ow0KIA0KIHN0YXRpYyBzdHJ1 Y3QgcmVzb3VyY2UgYXBvbGxvbl9zbWM5MXhfcmVzb3VyY2VzW10gPSB7DQpAQCAtMTUyLDEyICsx NjIsMjQgQEAgc3RhdGljIGlubGluZSB2b2lkIF9faW5pdCBhcG9sbG9uX2luaXRfcw0KIAlvbWFw X3NldF9ncGlvX2RpcmVjdGlvbihBUE9MTE9OX0VUSFJfR1BJT19JUlEsIDEpOw0KIH0NCiANCitz dGF0aWMgaW5saW5lIHZvaWQgX19pbml0IGFwb2xsb25faW5pdF9mbGFzaCh2b2lkKQ0KK3sNCisJ aWYgKG9tYXBfcmVxdWVzdF9ncGlvKEFQT0xMT05fRkxBU0hfR1BJT19JUlEpIDwgMCkgew0KKwkJ cHJpbnRrKEtFUk5fRVJSICJGYWlsZWQgdG8gcmVxdWVzdCBHUElPJWQgZm9yIG9uZW5hbmQgSVJR XG4iLA0KKwkJCUFQT0xMT05fRkxBU0hfR1BJT19JUlEpOw0KKwkJcmV0dXJuOw0KKwl9DQorCW9t YXBfc2V0X2dwaW9fZGlyZWN0aW9uKEFQT0xMT05fRkxBU0hfR1BJT19JUlEsIDEpOw0KKwlzZXRf aXJxX3R5cGUoT01BUF9HUElPX0lSUShBUE9MTE9OX0ZMQVNIX0dQSU9fSVJRKSwgSVJRVF9SSVNJ TkcpOw0KK30NCisNCiBzdGF0aWMgdm9pZCBfX2luaXQgb21hcF9hcG9sbG9uX2luaXRfaXJxKHZv aWQpDQogew0KIAlvbWFwMl9pbml0X2NvbW1vbl9odygpOw0KIAlvbWFwX2luaXRfaXJxKCk7DQog CW9tYXBfZ3Bpb19pbml0KCk7DQogCWFwb2xsb25faW5pdF9zbWM5MXgoKTsNCisJYXBvbGxvbl9p bml0X2ZsYXNoKCk7DQogfQ0KIA0KIHN0YXRpYyBzdHJ1Y3Qgb21hcF91YXJ0X2NvbmZpZyBhcG9s bG9uX3VhcnRfY29uZmlnIF9faW5pdGRhdGEgPSB7DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tdGQv b25lbmFuZC9nZW5lcmljLmMgYi9kcml2ZXJzL210ZC9vbmVuYW5kL2dlbmVyaWMuYw0KaW5kZXgg YWYwNmE4MC4uY2RmODBjNiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvbXRkL29uZW5hbmQvZ2VuZXJp Yy5jDQorKysgYi9kcml2ZXJzL210ZC9vbmVuYW5kL2dlbmVyaWMuYw0KQEAgLTYzLDYgKzYzLDcg QEAgc3RhdGljIGludCBfX2RldmluaXQgZ2VuZXJpY19vbmVuYW5kX3Bybw0KIAl9DQogDQogCWlu Zm8tPm9uZW5hbmQubW1jb250cm9sID0gcGRhdGEtPm1tY29udHJvbDsNCisJaW5mby0+b25lbmFu ZC5pcnEgPSBwbGF0Zm9ybV9nZXRfaXJxKHBkZXYsIDApOw0KIA0KIAlpbmZvLT5tdGQubmFtZSA9 IHBkZXYtPmRldi5idXNfaWQ7DQogCWluZm8tPm10ZC5wcml2ID0gJmluZm8tPm9uZW5hbmQ7DQpk aWZmIC0tZ2l0IGEvZHJpdmVycy9tdGQvb25lbmFuZC9vbmVuYW5kX2Jhc2UuYyBiL2RyaXZlcnMv bXRkL29uZW5hbmQvb25lbmFuZF9iYXNlLmMNCmluZGV4IDhlZDY4YjIuLmFlYTEzYTMgMTAwNjQ0 DQotLS0gYS9kcml2ZXJzL210ZC9vbmVuYW5kL29uZW5hbmRfYmFzZS5jDQorKysgYi9kcml2ZXJz L210ZC9vbmVuYW5kL29uZW5hbmRfYmFzZS5jDQpAQCAtMTMsNiArMTMsNyBAQCAjaW5jbHVkZSA8 bGludXgva2VybmVsLmg+DQogI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPg0KICNpbmNsdWRlIDxs aW51eC9pbml0Lmg+DQogI2luY2x1ZGUgPGxpbnV4L3NjaGVkLmg+DQorI2luY2x1ZGUgPGxpbnV4 L2ludGVycnVwdC5oPg0KICNpbmNsdWRlIDxsaW51eC9qaWZmaWVzLmg+DQogI2luY2x1ZGUgPGxp bnV4L210ZC9tdGQuaD4NCiAjaW5jbHVkZSA8bGludXgvbXRkL29uZW5hbmQuaD4NCkBAIC0zMzks NiArMzQwLDExMSBAQCBzdGF0aWMgaW50IG9uZW5hbmRfd2FpdChzdHJ1Y3QgbXRkX2luZm8gDQog CXJldHVybiAwOw0KIH0NCiANCisvKg0KKyAqIG9uZW5hbmRfaW50ZXJydXB0IC0gW0RFRkFVTFRd IG9uZW5hbmQgaW50ZXJydXB0IGhhbmRsZXINCisgKiBAcGFyYW0gaXJxCQlvbmVuYW5kIGludGVy cnVwdCBudW1iZXINCisgKiBAcGFyYW0gZGV2X2lkCWludGVycnVwdCBkYXRhDQorICoNCisgKiBj b21wbGV0ZSB0aGUgd29yaw0KKyAqLw0KK3N0YXRpYyBpcnFyZXR1cm5fdCBvbmVuYW5kX2ludGVy cnVwdChpbnQgaXJxLCB2b2lkICpkYXRhKQ0KK3sNCisJc3RydWN0IG9uZW5hbmRfY2hpcCAqdGhp cyA9IChzdHJ1Y3Qgb25lbmFuZF9jaGlwICopIGRhdGE7DQorDQorCS8qIFRvIGhhbmRsZSBzaGFy ZWQgaW50ZXJydXB0ICovDQorCWlmICghdGhpcy0+Y29tcGxldGUuZG9uZSkNCisJCWNvbXBsZXRl KCZ0aGlzLT5jb21wbGV0ZSk7DQorDQorCXJldHVybiBJUlFfSEFORExFRDsNCit9DQorDQorLyoN CisgKiBvbmVuYW5kX2ludGVycnVwdF93YWl0IC0gW0RFRkFVTFRdIHdhaXQgdW50aWwgdGhlIGNv bW1hbmQgaXMgZG9uZQ0KKyAqIEBwYXJhbSBtdGQJCU1URCBkZXZpY2Ugc3RydWN0dXJlDQorICog QHBhcmFtIHN0YXRlCQlzdGF0ZSB0byBzZWxlY3QgdGhlIG1heC4gdGltZW91dCB2YWx1ZQ0KKyAq DQorICogV2FpdCBmb3IgY29tbWFuZCBkb25lLg0KKyAqLw0KK3N0YXRpYyBpbnQgb25lbmFuZF9p bnRlcnJ1cHRfd2FpdChzdHJ1Y3QgbXRkX2luZm8gKm10ZCwgaW50IHN0YXRlKQ0KK3sNCisJc3Ry dWN0IG9uZW5hbmRfY2hpcCAqdGhpcyA9IG10ZC0+cHJpdjsNCisNCisJLyogVG8gcHJldmVudCBz b2Z0IGxvY2t1cCAqLw0KKwl0b3VjaF9zb2Z0bG9ja3VwX3dhdGNoZG9nKCk7DQorDQorCXdhaXRf Zm9yX2NvbXBsZXRpb24oJnRoaXMtPmNvbXBsZXRlKTsNCisNCisJcmV0dXJuIG9uZW5hbmRfd2Fp dChtdGQsIHN0YXRlKTsNCit9DQorDQorLyoNCisgKiBvbmVuYW5kX3RyeV9pbnRlcnJ1cHRfd2Fp dCAtIFtERUZBVUxUXSB0cnkgaW50ZXJydXB0IHdhaXQNCisgKiBAcGFyYW0gbXRkCQlNVEQgZGV2 aWNlIHN0cnVjdHVyZQ0KKyAqIEBwYXJhbSBzdGF0ZQkJc3RhdGUgdG8gc2VsZWN0IHRoZSBtYXgu IHRpbWVvdXQgdmFsdWUNCisgKg0KKyAqIFRyeSBpbnRlcnJ1cHQgYmFzZWQgd2FpdCAoSXQgaXMg dXNlZCBvbmUtdGltZSkNCisgKi8NCitzdGF0aWMgaW50IG9uZW5hbmRfdHJ5X2ludGVycnVwdF93 YWl0KHN0cnVjdCBtdGRfaW5mbyAqbXRkLCBpbnQgc3RhdGUpDQorew0KKwlzdHJ1Y3Qgb25lbmFu ZF9jaGlwICp0aGlzID0gbXRkLT5wcml2Ow0KKwl1bnNpZ25lZCBsb25nIHJlbWFpbiwgdGltZW91 dDsNCisNCisJLyogV2UgdXNlIGludGVycnVwdCB3YWl0IGZpcnN0ICovDQorCXRoaXMtPndhaXQg PSBvbmVuYW5kX2ludGVycnVwdF93YWl0Ow0KKw0KKwkvKiBUbyBwcmV2ZW50IHNvZnQgbG9ja3Vw ICovDQorCXRvdWNoX3NvZnRsb2NrdXBfd2F0Y2hkb2coKTsNCisNCisJdGltZW91dCA9IG1zZWNz X3RvX2ppZmZpZXMoMTAwKTsNCisJcmVtYWluID0gd2FpdF9mb3JfY29tcGxldGlvbl90aW1lb3V0 KCZ0aGlzLT5jb21wbGV0ZSwgdGltZW91dCk7DQorCWlmICghcmVtYWluKSB7DQorCQlwcmludGso S0VSTl9JTkZPICJPbmVOQU5EOiBUaGVyZSdzIG5vIGludGVycnVwdC4gIg0KKwkJCQkiV2UgdXNl IHRoZSBub3JtYWwgd2FpdFxuIik7DQorDQorCQkvKiBSZWxlYXNlIHRoZSBpcnEgKi8NCisJCWZy ZWVfaXJxKHRoaXMtPmlycSwgdGhpcyk7DQorCQkNCisJCXRoaXMtPndhaXQgPSBvbmVuYW5kX3dh aXQ7DQorCX0NCisNCisJcmV0dXJuIG9uZW5hbmRfd2FpdChtdGQsIHN0YXRlKTsNCit9DQorDQor LyoNCisgKiBvbmVuYW5kX3NldHVwX3dhaXQgLSBbT25lTkFORCBJbnRlcmZhY2VdIHNldHVwIG9u ZW5hbmQgd2FpdCBtZXRob2QNCisgKiBAcGFyYW0gbXRkCQlNVEQgZGV2aWNlIHN0cnVjdHVyZQ0K KyAqDQorICogVGhlcmUncyB0d28gbWV0aG9kIHRvIHdhaXQgb25lbmFuZCB3b3JrDQorICogMS4g cG9sbGluZyAtIHJlYWQgaW50ZXJydXB0IHN0YXR1cyByZWdpc3Rlcg0KKyAqIDIuIGludGVycnVw dCAtIHVzZSB0aGUga2VybmVsIGludGVycnVwdCBtZXRob2QNCisgKi8NCitzdGF0aWMgdm9pZCBv bmVuYW5kX3NldHVwX3dhaXQoc3RydWN0IG10ZF9pbmZvICptdGQpDQorew0KKwlzdHJ1Y3Qgb25l bmFuZF9jaGlwICp0aGlzID0gbXRkLT5wcml2Ow0KKwlpbnQgc3lzY2ZnOw0KKw0KKwlpbml0X2Nv bXBsZXRpb24oJnRoaXMtPmNvbXBsZXRlKTsNCisNCisJaWYgKHRoaXMtPmlycSA8PSAwKSB7DQor CQl0aGlzLT53YWl0ID0gb25lbmFuZF93YWl0Ow0KKwkJcmV0dXJuOw0KKwl9DQorDQorCWlmIChy ZXF1ZXN0X2lycSh0aGlzLT5pcnEsICZvbmVuYW5kX2ludGVycnVwdCwNCisJCQkJSVJRRl9TSEFS RUQsICJvbmVuYW5kIiwgdGhpcykpIHsNCisJCS8qIElmIHdlIGNhbid0IGdldCBpcnEsIHVzZSB0 aGUgbm9ybWFsIHdhaXQgKi8NCisJCXRoaXMtPndhaXQgPSBvbmVuYW5kX3dhaXQ7DQorCQlyZXR1 cm47DQorCX0NCisNCisJLyogRW5hYmxlIGludGVycnVwdCAqLw0KKwlzeXNjZmcgPSB0aGlzLT5y ZWFkX3dvcmQodGhpcy0+YmFzZSArIE9ORU5BTkRfUkVHX1NZU19DRkcxKTsNCisJc3lzY2ZnIHw9 IE9ORU5BTkRfU1lTX0NGRzFfSU9CRTsNCisJdGhpcy0+d3JpdGVfd29yZChzeXNjZmcsIHRoaXMt PmJhc2UgKyBPTkVOQU5EX1JFR19TWVNfQ0ZHMSk7DQorDQorCXRoaXMtPndhaXQgPSBvbmVuYW5k X3RyeV9pbnRlcnJ1cHRfd2FpdDsNCit9DQorDQogLyoqDQogICogb25lbmFuZF9idWZmZXJyYW1f b2Zmc2V0IC0gW0RFRkFVTFRdIEJ1ZmZlclJBTSBvZmZzZXQNCiAgKiBAcGFyYW0gbXRkCQlNVEQg ZGF0YSBzdHJ1Y3R1cmUNCkBAIC0xMTI5LDcgKzEyMzUsNiBAQCBzdGF0aWMgdm9pZCBvbmVuYW5k X3N5bmMoc3RydWN0IG10ZF9pbmZvDQogCW9uZW5hbmRfcmVsZWFzZV9kZXZpY2UobXRkKTsNCiB9 DQogDQotDQogLyoqDQogICogb25lbmFuZF9ibG9ja19pc2JhZCAtIFtNVEQgSW50ZXJmYWNlXSBD aGVjayB3aGV0aGVyIHRoZSBibG9jayBhdCB0aGUgZ2l2ZW4gb2Zmc2V0IGlzIGJhZA0KICAqIEBw YXJhbSBtdGQJCU1URCBkZXZpY2Ugc3RydWN0dXJlDQpAQCAtMTg0Niw3ICsxOTUxLDcgQEAgaW50 IG9uZW5hbmRfc2NhbihzdHJ1Y3QgbXRkX2luZm8gKm10ZCwgaQ0KIAlpZiAoIXRoaXMtPmNvbW1h bmQpDQogCQl0aGlzLT5jb21tYW5kID0gb25lbmFuZF9jb21tYW5kOw0KIAlpZiAoIXRoaXMtPndh aXQpDQotCQl0aGlzLT53YWl0ID0gb25lbmFuZF93YWl0Ow0KKwkJb25lbmFuZF9zZXR1cF93YWl0 KG10ZCk7DQogDQogCWlmICghdGhpcy0+cmVhZF9idWZmZXJyYW0pDQogCQl0aGlzLT5yZWFkX2J1 ZmZlcnJhbSA9IG9uZW5hbmRfcmVhZF9idWZmZXJyYW07DQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9h c20tYXJtL2FyY2gtb21hcC9vbWFwMjR4eC5oIGIvaW5jbHVkZS9hc20tYXJtL2FyY2gtb21hcC9v bWFwMjR4eC5oDQppbmRleCA2ZTU5ODA1Li5hNDk3ZGNjIDEwMDY0NA0KLS0tIGEvaW5jbHVkZS9h c20tYXJtL2FyY2gtb21hcC9vbWFwMjR4eC5oDQorKysgYi9pbmNsdWRlL2FzbS1hcm0vYXJjaC1v bWFwL29tYXAyNHh4LmgNCkBAIC0xNiw2ICsxNiw4IEBAICNkZWZpbmUgVkFfSUNfQkFTRQkJSU9f QUREUkVTUyhPTUFQMjRYWF8NCiAjZGVmaW5lIE9NQVAyNFhYX0lWQV9JTlRDX0JBU0UJMHg0MDAw MDAwMA0KICNkZWZpbmUgSVJRX1NJUl9JUlEJCTB4MDA0MA0KIA0KKyNkZWZpbmUgT01BUDI0Mlhf Q09OVFJPTF9TVEFUVVMJKEw0XzI0WFhfQkFTRSArIDB4MmY4KQ0KKw0KICNkZWZpbmUgT01BUDI0 WFhfMzJLU1lOQ1RfQkFTRQkoTDRfMjRYWF9CQVNFICsgMHg0MDAwKQ0KICNkZWZpbmUgT01BUDI0 WFhfUFJDTV9CQVNFCShMNF8yNFhYX0JBU0UgKyAweDgwMDApDQogI2RlZmluZSBPTUFQMjRYWF9T RFJDX0JBU0UJKEwzXzI0WFhfQkFTRSArIDB4OTAwMCkNCmRpZmYgLS1naXQgYS9pbmNsdWRlL2xp bnV4L210ZC9vbmVuYW5kLmggYi9pbmNsdWRlL2xpbnV4L210ZC9vbmVuYW5kLmgNCmluZGV4IDZm MDQ1YjUuLmRmOTYzZjEgMTAwNjQ0DQotLS0gYS9pbmNsdWRlL2xpbnV4L210ZC9vbmVuYW5kLmgN CisrKyBiL2luY2x1ZGUvbGludXgvbXRkL29uZW5hbmQuaA0KQEAgLTEzLDYgKzEzLDcgQEAgI2lm bmRlZiBfX0xJTlVYX01URF9PTkVOQU5EX0gNCiAjZGVmaW5lIF9fTElOVVhfTVREX09ORU5BTkRf SA0KIA0KICNpbmNsdWRlIDxsaW51eC9zcGlubG9jay5oPg0KKyNpbmNsdWRlIDxsaW51eC9jb21w bGV0aW9uLmg+DQogI2luY2x1ZGUgPGxpbnV4L210ZC9vbmVuYW5kX3JlZ3MuaD4NCiAjaW5jbHVk ZSA8bGludXgvbXRkL2JibS5oPg0KIA0KQEAgLTEyMCw2ICsxMjEsOSBAQCBzdHJ1Y3Qgb25lbmFu ZF9jaGlwIHsNCiAJaW50ICgqYmxvY2tfbWFya2JhZCkoc3RydWN0IG10ZF9pbmZvICptdGQsIGxv ZmZfdCBvZnMpOw0KIAlpbnQgKCpzY2FuX2JidCkoc3RydWN0IG10ZF9pbmZvICptdGQpOw0KIA0K KwlzdHJ1Y3QgY29tcGxldGlvbgljb21wbGV0ZTsNCisJaW50CQkJaXJxOw0KKw0KIAlzcGlubG9j a190CQljaGlwX2xvY2s7DQogCXdhaXRfcXVldWVfaGVhZF90CXdxOw0KIAlvbmVuYW5kX3N0YXRl X3QJCXN0YXRlOw==