From bahamasfranks@gmail.com Thu Mar 6 00:42:41 2008 Return-Path: Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 60465106566C for ; Thu, 6 Mar 2008 00:42:41 +0000 (UTC) (envelope-from bahamasfranks@gmail.com) Received: from wf-out-1314.google.com (wf-out-1314.google.com [209.85.200.169]) by mx1.freebsd.org (Postfix) with ESMTP id 3D4938FC14 for ; Thu, 6 Mar 2008 00:42:41 +0000 (UTC) (envelope-from bahamasfranks@gmail.com) Received: by wf-out-1314.google.com with SMTP id 25so1996775wfa.7 for ; Wed, 05 Mar 2008 16:42:40 -0800 (PST) Received: by 10.142.43.7 with SMTP id q7mr463443wfq.67.1204762474189; Wed, 05 Mar 2008 16:14:34 -0800 (PST) Received: by 10.142.237.12 with HTTP; Wed, 5 Mar 2008 16:14:34 -0800 (PST) Message-Id: <539c60b90803051614s53468178n1005aeb6c156f2c6@mail.gmail.com> Date: Wed, 5 Mar 2008 17:14:34 -0700 From: "Steve Franks" Sender: bahamasfranks@gmail.com Reply-To: stevefranks@ieee.org To: bug-followup@freebsd.org Cc: remko@FreeBSD.org Subject: Re:%20usb/119002:%20%5Bpatch%5D%20%5Brequest%5D%20new%20driver%3A%20add%20%22ucp%22%20driver%20support >Number: 121415 >Category: usb >Synopsis: Re:%20usb/119002:%20%5Bpatch%5D%20%5Brequest%5D%20new%20driver%3A%20add%20%22ucp%22%20driver%20support >Confidential: no >Severity: serious >Priority: medium >Responsible: gavin >State: closed >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Mar 06 00:50:00 UTC 2008 >Closed-Date: Thu Mar 06 03:42:30 UTC 2008 >Last-Modified: Thu Mar 06 03:42:30 UTC 2008 >Originator: >Release: >Organization: >Environment: >Description: ------=_Part_24136_14330792.1204762474199 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline New patch - following should go into 7.0-RC2 w/o err, although I had to mkdir ..../modules/ucp manually Steve ------=_Part_24136_14330792.1204762474199 Content-Type: text/x-patch; name=ucp-0.02.diff Content-Transfer-Encoding: base64 X-Attachment-Id: f_fdgkg0tz0 Content-Disposition: attachment; filename=ucp-0.02.diff SW5kZXg6IG1vZHVsZXMvdWNwL01ha2VmaWxlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IG1vZHVsZXMv dWNwL01ha2VmaWxlCmRpZmYgLU4gbW9kdWxlcy91Y3AvTWFrZWZpbGUKLS0tIC9kZXYvbnVsbAkx IEphbiAxOTcwIDAwOjAwOjAwIC0wMDAwCisrKyBtb2R1bGVzL3VjcC9NYWtlZmlsZQk5IE1heSAy MDA2IDAwOjQyOjI0IC0wMDAwCkBAIC0wLDAgKzEsMTAgQEAKKyMgJEZyZWVCU0QkCisKK1M9CSR7 LkNVUkRJUn0vLi4vLi4KKy5QQVRIOiAkUy9kZXYvdXNiCisKK0tNT0Q9CXVjcAorU1JDUz0JdWNw LmMgdWNwcmVnLmggb3B0X3VzYi5oIGRldmljZV9pZi5oIGJ1c19pZi5oIHVzYmRldnMuaAorCitD RkxBR1MrPS1EVVNCX0RFQlVHCisuaW5jbHVkZSA8YnNkLmttb2QubWs+CkluZGV4OiBkZXYvdXNi L3VjcC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IGRldi91c2IvdWNwLmMKZGlmZiAtTiBkZXYvdXNi L3VjcC5jCi0tLSAvZGV2L251bGwJMSBKYW4gMTk3MCAwMDowMDowMCAtMDAwMAorKysgZGV2L3Vz Yi91Y3AuYwk5IE1heSAyMDA2IDAwOjQ0OjU2IC0wMDAwCkBAIC0wLDAgKzEsNTkwIEBACisvKgor ICogU2lsaWNvbiBMYWJzIENQMjEwMS8yMTAyIFVTQiBVQVJUIGRyaXZlcgorICoKKyAqIEJhc2Vk IG9uIHRoZSBMaW51eCBkcml2ZXIgd3JpdHRlbiBieSBDcmFpZyBTaGVsbGV5IDxjcmFpZ0BtaWNy b3Ryb24ub3JnLnVrPgorICoKKyAqIENvcHlyaWdodCAoQykgMjAwNiBEYW5pZWwgTydDb25ub3Ig PGRvY29ubm9yQGdzb2Z0LmNvbS5hdT4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0 aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlv bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp bWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRp b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24u CisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorX19GQlNESUQoIiRGcmVlQlNEJCIpOwor CisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisKKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KKyNpbmNs dWRlIDxzeXMvc3lzdG0uaD4KKyNpbmNsdWRlIDxzeXMva2VybmVsLmg+CisjaW5jbHVkZSA8c3lz L21hbGxvYy5oPgorI2luY2x1ZGUgPHN5cy9tb2R1bGUuaD4KKyNpbmNsdWRlIDxzeXMvYnVzLmg+ CisjaW5jbHVkZSA8c3lzL2lvY2NvbS5oPgorI2luY2x1ZGUgPHN5cy9mY250bC5oPgorI2luY2x1 ZGUgPHN5cy9jb25mLmg+CisjaW5jbHVkZSA8c3lzL3R0eS5oPgorI2luY2x1ZGUgPHN5cy9zZXJp YWwuaD4KKyNpbmNsdWRlIDxzeXMvZmlsZS5oPgorCisjaW5jbHVkZSA8c3lzL3NlbGluZm8uaD4K KworI2luY2x1ZGUgPHN5cy9zeXNjdGwuaD4KKworI2luY2x1ZGUgPHN5cy9lbmRpYW4uaD4KKwor I2luY2x1ZGUgPG1hY2hpbmUvYnVzLmg+CisjaW5jbHVkZSA8c3lzL2J1c19kbWEuaD4KKworI2lu Y2x1ZGUgPGRldi91c2IvdXNiLmg+CisjaW5jbHVkZSA8ZGV2L3VzYi91c2JkaS5oPgorI2luY2x1 ZGUgPGRldi91c2IvdXNiZGlfdXRpbC5oPgorI2luY2x1ZGUgPGRldi91c2IvdXNiZGl2YXIuaD4K KyNpbmNsdWRlICJ1c2JkZXZzLmgiCisKKyNpbmNsdWRlIDxkZXYvdXNiL3Vjb212YXIuaD4KKwor I2luY2x1ZGUgPGRldi91c2IvdWNwcmVnLmg+CisKKworI2lmZGVmIFVTQl9ERUJVRworc3RhdGlj IGludCB1Y3BkZWJ1ZyA9IDA7CitTWVNDVExfTk9ERShfaHdfdXNiLCBPSURfQVVUTywgdWNwLCBD VExGTEFHX1JXLCAwLCAiVVNCIHVjcCIpOworU1lTQ1RMX0lOVChfaHdfdXNiX3VjcCwgT0lEX0FV VE8sIGRlYnVnLCBDVExGTEFHX1JXLAorCSAgICZ1Y3BkZWJ1ZywgMCwgInVjcCBkZWJ1ZyBsZXZl bCIpOworI2RlZmluZSBEUFJJTlRGKHgpICAgICAgZG8geyBcCisJCQkJaWYgKHVjcGRlYnVnKSBc CisJCQkJCWxvZ3ByaW50ZiB4OyBcCisJCQl9IHdoaWxlICgwKQorCisjZGVmaW5lIERQUklOVEZO KG4sIHgpICBkbyB7IFwKKwkJCQlpZiAodWNwZGVidWcgPiAobikpIFwKKwkJCQkJbG9ncHJpbnRm IHg7IFwKKwkJCX0gd2hpbGUgKDApCisKKyNlbHNlCisjZGVmaW5lIERQUklOVEYoeCkKKyNkZWZp bmUgRFBSSU5URk4obix4KQorI2VuZGlmCisKKyNkZWZpbmUgVUNQX0NPTkZJR19JTkRFWAkwCisj ZGVmaW5lIFVDUF9JRkFDRV9JTkRFWAkJMAorCisvKiBYWFg6IFByZXR0eSBzdXJlIHRoaXMgaXMg cmlnaHQuLi4gKi8KKyNkZWZpbmUgVUNQSUJVRlNJWkUgNjQKKyNkZWZpbmUgVUNQT0JVRlNJWkUg NjQKKworc3RydWN0IHVjcF9zb2Z0YyB7CisJc3RydWN0IHVjb21fc29mdGMJc2NfdWNvbTsKKwor CXVzYmRfaW50ZXJmYWNlX2hhbmRsZQlzY19pZmFjZTsJLyogaW50ZXJmYWNlICovCit9OworCitT dGF0aWMgaW50CXVjcF9vcGVuKHZvaWQgKnNjLCBpbnQgcG9ydG5vKTsKK1N0YXRpYyB2b2lkCXVj cF9jbG9zZSh2b2lkICpzYywgaW50IHBvcnRubyk7CitTdGF0aWMgdm9pZAl1Y3Bfc2V0KHZvaWQg KiwgaW50LCBpbnQsIGludCk7CitTdGF0aWMgaW50CXVjcF9wYXJhbSh2b2lkICosIGludCwgc3Ry dWN0IHRlcm1pb3MgKik7CitTdGF0aWMgdm9pZAl1Y3BfZ2V0X3N0YXR1cyh2b2lkICosIGludCBw b3J0bm8sIHVfY2hhciAqbHNyLCB1X2NoYXIgKm1zcik7CitTdGF0aWMgdm9pZAl1Y3BfYnJlYWso dm9pZCAqc2MsIGludCBwb3J0bm8sIGludCBvbm9mZik7CitTdGF0aWMgaW50CXVjcF9zZXRfY29u ZmlnKHN0cnVjdCB1Y29tX3NvZnRjICp1Y29tLCB1aW50OF90IHJlcXVlc3QsIHVpbnQxNl90IGRh dGEpOworU3RhdGljIGludAl1Y3BfZ2V0X2NvbmZpZyhzdHJ1Y3QgdWNvbV9zb2Z0YyAqdWNvbSwg dWludDhfdCByZXF1ZXN0LCB1aW50MTZfdCAqZGF0YSk7CisKK3N0cnVjdCB1Y29tX2NhbGxiYWNr IHVjcF9jYWxsYmFjayA9IHsKKwkudWNvbV9nZXRfc3RhdHVzID0gdWNwX2dldF9zdGF0dXMsCisJ LnVjb21fc2V0ID0gdWNwX3NldCwKKwkudWNvbV9wYXJhbSA9IHVjcF9wYXJhbSwKKwkudWNvbV9v cGVuID0gdWNwX29wZW4sCisJLnVjb21fY2xvc2UgPSB1Y3BfY2xvc2UsCit9OworCitzdGF0aWMg Y29uc3Qgc3RydWN0IHVzYl9kZXZubyB1Y3BfZGV2c1tdID0geworCXsgVVNCX1ZFTkRPUl9TSUxB QlMsCQlVU0JfUFJPRFVDVF9TSUxBQlNfQ1JVTUIxMjggfSwKKwl7IFVTQl9WRU5ET1JfU0lMQUJT LAkJVVNCX1BST0RVQ1RfU0lMQUJTX0RFR1JFRSB9LAorCXsgVVNCX1ZFTkRPUl9TSUxBQlMsCQlV U0JfUFJPRFVDVF9TSUxBQlNfU1VVTlRPIH0sCisJeyBVU0JfVkVORE9SX1NJTEFCUywJCVVTQl9Q Uk9EVUNUX1NJTEFCU19CVVJOU0lERSB9LAorCXsgVVNCX1ZFTkRPUl9TSUxBQlMsCQlVU0JfUFJP RFVDVF9TSUxBQlNfSEVMSUNPTSB9LAorCXsgVVNCX1ZFTkRPUl9TSUxBQlMsCQlVU0JfUFJPRFVD VF9TSUxBQlNfQ1AyMTAyIH0sCisJeyBVU0JfVkVORE9SX1BMWCwJCVVTQl9QUk9EVUNUX1BMWF9O T0tJQV9DQTQyIH0KKwkKK307CisKK1VTQl9NQVRDSCh1Y3ApIHsKKwlVU0JfTUFUQ0hfU1RBUlQo dWNwLCB1YWEpOworCisJRFBSSU5URk4oMjAsKCJ1Y3A6IHZlbmRvcj0weCV4LCBwcm9kdWN0PTB4 JXhcbiIsCisJCSAgICAgdWFhLT52ZW5kb3IsIHVhYS0+cHJvZHVjdCkpOworCisJaWYgKHVhYS0+ aWZhY2UgIT0gTlVMTCkKKwkJcmV0dXJuIFVNQVRDSF9OT05FOworCisJcmV0dXJuICh1c2JfbG9v a3VwKHVjcF9kZXZzLCB1YWEtPnZlbmRvciwgdWFhLT5wcm9kdWN0KSAhPSBOVUxMKSA/CisJICAg IFVNQVRDSF9WRU5ET1JfUFJPRFVDVCA6IFVNQVRDSF9OT05FOworfQorCitVU0JfQVRUQUNIKHVj cCkgeworCVVTQl9BVFRBQ0hfU1RBUlQodWNwLCBzYywgdWFhKTsKKwl1c2JkX2RldmljZV9oYW5k bGUgZGV2ID0gdWFhLT5kZXZpY2U7CisJdXNiZF9pbnRlcmZhY2VfaGFuZGxlIGlmYWNlOworCXVz Yl9pbnRlcmZhY2VfZGVzY3JpcHRvcl90ICppZDsKKwl1c2JfZW5kcG9pbnRfZGVzY3JpcHRvcl90 ICplZDsKKwljaGFyICpkZXZpbmZvOworCWNvbnN0IGNoYXIgKmRldm5hbWU7CisJaW50IGk7CisJ dXNiZF9zdGF0dXMgZXJyOworCXN0cnVjdCB1Y29tX3NvZnRjICp1Y29tID0gJnNjLT5zY191Y29t OworCisJRFBSSU5URk4oMTAsKCJcbnVjcF9hdHRhY2g6IHNjPSVwXG4iLCBzYykpOworCWRldmlu Zm8gPSBtYWxsb2MoMTAyNCwgTV9VU0JERVYsIE1fV0FJVE9LKTsKKworCXVjb20tPnNjX2RldiA9 IHNlbGY7CisJdWNvbS0+c2NfdWRldiA9IGRldjsKKworCWRldm5hbWUgPSBVU0JERVZOQU1FKHVj b20tPnNjX2Rldik7CisKKyAJaWYgKHVhYS0+aWZhY2UgPT0gTlVMTCkgeworCQkvKiBNb3ZlIHRo ZSBkZXZpY2UgaW50byB0aGUgY29uZmlndXJlZCBzdGF0ZS4gKi8KKwkJZXJyID0gdXNiZF9zZXRf Y29uZmlnX2luZGV4KGRldiwgVUNQX0NPTkZJR19JTkRFWCwgMSk7CisJCWlmIChlcnIpIHsKKwkJ CXByaW50ZigiXG4lczogZmFpbGVkIHRvIHNldCBjb25maWd1cmF0aW9uLCBlcnI9JXNcbiIsCisJ CQkgICAgICAgZGV2bmFtZSwgdXNiZF9lcnJzdHIoZXJyKSk7CisJCQlnb3RvIGJhZDsKKwkJfQor CisJCWVyciA9IHVzYmRfZGV2aWNlMmludGVyZmFjZV9oYW5kbGUoZGV2LCBVQ1BfSUZBQ0VfSU5E RVgsICZpZmFjZSk7CisJCWlmIChlcnIpIHsKKwkJCXByaW50ZigiXG4lczogZmFpbGVkIHRvIGdl dCBpbnRlcmZhY2UsIGVycj0lc1xuIiwKKwkJCSAgICAgICBkZXZuYW1lLCB1c2JkX2VycnN0cihl cnIpKTsKKwkJCWdvdG8gYmFkOworCQl9CisJfSBlbHNlIHsKKwkJaWZhY2UgPSB1YWEtPmlmYWNl OworCX0KKworCXVzYmRfZGV2aW5mbyhkZXYsIDAsIGRldmluZm8pOworCS8qCVVTQl9BVFRBQ0hf U0VUVVA7Ki8KKwlwcmludGYoIiVzOiAlc1xuIiwgZGV2bmFtZSwgZGV2aW5mbyk7CisKKwlpZCA9 IHVzYmRfZ2V0X2ludGVyZmFjZV9kZXNjcmlwdG9yKGlmYWNlKTsKKwl1Y29tLT5zY19pZmFjZSA9 IGlmYWNlOworCXVjb20tPnNjX2J1bGtpbl9ubyA9IHVjb20tPnNjX2J1bGtvdXRfbm8gPSAtMTsK KworCWZvciAoaSA9IDA7IGkgPCBpZC0+Yk51bUVuZHBvaW50czsgaSsrKSB7CisJCWludCBhZGRy LCBkaXIsIGF0dHI7CisJCWVkID0gdXNiZF9pbnRlcmZhY2UyZW5kcG9pbnRfZGVzY3JpcHRvcihp ZmFjZSwgaSk7CisJCWlmIChlZCA9PSBOVUxMKSB7CisJCQlwcmludGYoIiVzOiBjb3VsZCBub3Qg cmVhZCBlbmRwb2ludCBkZXNjcmlwdG9yXG4iLAorCQkJICAgIGRldm5hbWUpOworCQkJZ290byBi YWQ7CisJCX0KKworCQlhZGRyID0gZWQtPmJFbmRwb2ludEFkZHJlc3M7CisJCWRpciA9IFVFX0dF VF9ESVIoZWQtPmJFbmRwb2ludEFkZHJlc3MpOworCQlhdHRyID0gZWQtPmJtQXR0cmlidXRlcyAm IFVFX1hGRVJUWVBFOworCQlpZiAoZGlyID09IFVFX0RJUl9JTiAmJiBhdHRyID09IFVFX0JVTEsp CisJCSAgdWNvbS0+c2NfYnVsa2luX25vID0gYWRkcjsKKwkJZWxzZSBpZiAoZGlyID09IFVFX0RJ Ul9PVVQgJiYgYXR0ciA9PSBVRV9CVUxLKQorCQkgIHVjb20tPnNjX2J1bGtvdXRfbm8gPSBhZGRy OworCQllbHNlIHsKKwkJICBwcmludGYoIiVzOiB1bmV4cGVjdGVkIGVuZHBvaW50XG4iLCBkZXZu YW1lKTsKKwkJICBnb3RvIGJhZDsKKwkJfQorCX0KKwlpZiAodWNvbS0+c2NfYnVsa2luX25vID09 IC0xKSB7CisJCXByaW50ZigiJXM6IENvdWxkIG5vdCBmaW5kIGRhdGEgYnVsayBpblxuIiwKKwkJ ICAgICAgIGRldm5hbWUpOworCQlnb3RvIGJhZDsKKwl9CisJaWYgKHVjb20tPnNjX2J1bGtvdXRf bm8gPT0gLTEpIHsKKwkJcHJpbnRmKCIlczogQ291bGQgbm90IGZpbmQgZGF0YSBidWxrIG91dFxu IiwKKwkJICAgICAgIGRldm5hbWUpOworCQlnb3RvIGJhZDsKKwl9CisgICAgICAgIHVjb20tPnNj X3BhcmVudCAgPSBzYzsKKwlpZiAodWFhLT5pZmFjZSA9PSBOVUxMKQorCQl1Y29tLT5zY19wb3J0 bm8gPSAwOworCisJLyogYnVsa2luLCBidWxrb3V0IHNldCBhYm92ZSAqLworCisgIAl1Y29tLT5z Y19pYnVmc2l6ZSA9IFVDUElCVUZTSVpFOworCXVjb20tPnNjX29idWZzaXplID0gVUNQT0JVRlNJ WkU7CisJdWNvbS0+c2NfaWJ1ZnNpemVwYWQgPSBVQ1BJQlVGU0laRTsKKworCXVjb20tPnNjX2Nh bGxiYWNrID0gJnVjcF9jYWxsYmFjazsKKyNpZiAwCisJdXNiZF9hZGRfZHJ2X2V2ZW50KFVTQl9F VkVOVF9EUklWRVJfQVRUQUNILCB1Y29tLT5zY191ZGV2LAorCQkJICAgVVNCREVWKHVjb20tPnNj X2RldikpOworI2VuZGlmCisJRFBSSU5URigoInVjcDogaW49MHgleCBvdXQ9MHgleFxuIiwgdWNv bS0+c2NfYnVsa2luX25vLCB1Y29tLT5zY19idWxrb3V0X25vKSk7CisJdWNvbV9hdHRhY2goJnNj LT5zY191Y29tKTsKKwlmcmVlKGRldmluZm8sIE1fVVNCREVWKTsKKworCVVTQl9BVFRBQ0hfU1VD Q0VTU19SRVRVUk47CisKK2JhZDoKKwlEUFJJTlRGKCgidWNwX2F0dGFjaDogQVRUQUNIIEVSUk9S XG4iKSk7CisJdWNvbS0+c2NfZHlpbmcgPSAxOworCWZyZWUoZGV2aW5mbywgTV9VU0JERVYpOwor CisJVVNCX0FUVEFDSF9FUlJPUl9SRVRVUk47Cit9CisKK1VTQl9ERVRBQ0godWNwKQoreworCVVT Ql9ERVRBQ0hfU1RBUlQodWNwLCBzYyk7CisKKwlpbnQgcnYgPSAwOworCisJRFBSSU5URigoInVj cF9kZXRhY2g6IHNjPSVwXG4iLCBzYykpOworCXNjLT5zY191Y29tLnNjX2R5aW5nID0gMTsKKwly diA9IHVjb21fZGV0YWNoKCZzYy0+c2NfdWNvbSk7CisKKwlyZXR1cm4gcnY7Cit9CisKK1N0YXRp YyBpbnQKK3VjcF9vcGVuKHZvaWQgKnZzYywgaW50IHBvcnRubykgeworCXN0cnVjdCB1Y3Bfc29m dGMgKnNjID0gdnNjOworCXN0cnVjdCB1Y29tX3NvZnRjICp1Y29tID0gJnNjLT5zY191Y29tOwor CXN0cnVjdCB0ZXJtaW9zIHQ7CisKKwlEUFJJTlRGKCgidWNwX29wZW46IHNjPSVwXG4iLCBzYykp OworCisJaWYgKHVjb20tPnNjX2R5aW5nKQorCQlyZXR1cm4gKEVJTyk7CisKKwlEUFJJTlRGTigy LCAoIkVuYWJsaW5nIFVBUlRcbiIpKTsKKwlpZiAodWNwX3NldF9jb25maWcodWNvbSwgQ1AyMTAx X1VBUlQsIFVBUlRfRU5BQkxFKSkgeworCQlwcmludGYoIlVuYWJsZSB0byBlbmFibGUgVUFSVFxu Iik7CisJCXJldHVybihFSU8pOworCX0KKworCS8qIFNldCA5NjAwIGJhdWQsIDIgc3RvcCBiaXRz LCBubyBwYXJpdHksIDggYml0cywgUlRTL0NUUyBmbG93IGNvbnRyb2wgKi8KKwl0LmNfb3NwZWVk ID0gOTYwMDsKKwl0LmNfY2ZsYWcgPSBDU1RPUEIgfCBDUzggfCBDUlRTQ1RTOworCSh2b2lkKXVj cF9wYXJhbShzYywgMCwgJnQpOworCisJcmV0dXJuKDApOworfQorCitTdGF0aWMgdm9pZAordWNw X2Nsb3NlKHZvaWQgKnZzYywgaW50IHBvcnRubykgeworCXN0cnVjdCB1Y3Bfc29mdGMgKnNjID0g dnNjOworCXN0cnVjdCB1Y29tX3NvZnRjICp1Y29tID0gJnNjLT5zY191Y29tOworCisJRFBSSU5U RigoInVjcF9jbG9zZTogc2M9JXBcbiIsIHNjKSk7CisKKwlpZiAodWNvbS0+c2NfZHlpbmcpCisJ CXJldHVybjsKKworCURQUklOVEZOKDIsICgiRGlzYWJsaW5nIFVBUlRcbiIpKTsKKwlpZiAodWNw X3NldF9jb25maWcodWNvbSwgQ1AyMTAxX1VBUlQsIFVBUlRfRElTQUJMRSkpIHsKKwkJcHJpbnRm KCJVbmFibGUgdG8gZGlzYWJsZSBVQVJUXG4iKTsKKwkJcmV0dXJuOworCX0KK30KKworLyogU2V0 IERUUi9SVFMgb3Igc2VuZCBhIGJyZWFrICovCitTdGF0aWMgdm9pZAordWNwX3NldCh2b2lkICp2 c2MsIGludCBwb3J0bm8sIGludCByZWcsIGludCBvbm9mZikgeworCXN0cnVjdCB1Y3Bfc29mdGMg KglzYyA9IHZzYzsKKwlzdHJ1Y3QgdWNvbV9zb2Z0YyAqCXVjb20gPSAmc2MtPnNjX3Vjb207CisJ dWludDE2X3QJCWN0bDsKKworCURQUklOVEYoKCJ1Y3Bfc2V0OiBwb3J0PSVkIHJlZz0lZCBvbm9m Zj0lZFxuIiwgcG9ydG5vLCByZWcsIG9ub2ZmKSk7CisKKwlzd2l0Y2ggKHJlZykgeworCWNhc2Ug VUNPTV9TRVRfRFRSOgorCQlEUFJJTlRGTigyLCAoIlNldHRpbmcgRFRSXG4iKSk7CisJCWN0bCA9 IENPTlRST0xfV1JJVEVfRFRSOworCQlpZiAob25vZmYpCisJCQljdGwgfD0gQ09OVFJPTF9EVFI7 CisJCWVsc2UKKwkJCWN0bCAmPSB+Q09OVFJPTF9EVFI7CisJCWJyZWFrOworCisJY2FzZSBVQ09N X1NFVF9SVFM6CisJCWN0bCA9IDA7CisjaWYgMAorCQlEUFJJTlRGTigyLCAoIlNldHRpbmcgUlRT XG4iKSk7CisJCWN0bCA9IENPTlRST0xfV1JJVEVfUlRTOworCQlpZiAob25vZmYpCisJCQljdGwg fD0gQ09OVFJPTF9SVFM7CisJCWVsc2UKKwkJCWN0bCAmPSB+Q09OVFJPTF9SVFM7CisjZW5kaWYK KwkJYnJlYWs7CisKKwljYXNlIFVDT01fU0VUX0JSRUFLOgorCQlEUFJJTlRGTigyLCAoIlNldHRp bmcgQlJFQUtcbiIpKTsKKwkJdWNwX2JyZWFrKHZzYywgcG9ydG5vLCBvbm9mZik7CisJCXJldHVy bjsKKworCWRlZmF1bHQ6CisJCXJldHVybjsKKwl9CisKKwkodm9pZCl1Y3Bfc2V0X2NvbmZpZyh1 Y29tLCBDUDIxMDFfQ09OVFJPTCwgY3RsKTsKK30JCisKKy8qIFNldCBiYXVkIHJhdGUsIHN0b3Av c3RhcnQgYml0cywgcGFyaXR5IGV0YyAgKi8KK1N0YXRpYyBpbnQKK3VjcF9wYXJhbSh2b2lkICp2 c2MsIGludCBwb3J0bm8sIHN0cnVjdCB0ZXJtaW9zICp0KSB7CisJc3RydWN0IHVjcF9zb2Z0YyAq CXNjID0gdnNjOworCXN0cnVjdCB1Y29tX3NvZnRjICoJdWNvbSA9ICZzYy0+c2NfdWNvbTsKKwlp bnQJCQlpOworCXVpbnQxNl90CQlkYXQ7CisJdWludDMyX3QJCW1vZGVtX2N0bFs0XTsKKyNpZiAx CisJdXNiX2RldmljZV9yZXF1ZXN0X3QgCXJlcTsKKwl1c2JkX3N0YXR1cwkJcmVzdWx0OworI2Vu ZGlmCisKKwlEUFJJTlRGKCgidWNwX3BhcmFtOiBzYz0lcFxuIiwgc2MpKTsKKworCWlmICh1Y29t LT5zY19keWluZykKKwkJcmV0dXJuIChFSU8pOworCisJc3dpdGNoICh0LT5jX29zcGVlZCkgewor CQljYXNlIDMwMDoKKwkJY2FzZSA2MDA6CisJCWNhc2UgMTIwMDoKKwkJY2FzZSAyNDAwOgorCQlj YXNlIDQ4MDA6CisJCWNhc2UgOTYwMDoKKwkJY2FzZSAxOTIwMDoKKwkJY2FzZSAzODQwMDoKKwkJ Y2FzZSA1NzYwMDoKKwkJY2FzZSAxMTUyMDA6CisJCQlpZiAodWNwX3NldF9jb25maWcodWNvbSwg Q1AyMTAxX0JBVURSQVRFLCBCQVVEX1JBVEVfR0VOX0ZSRVEgLyB0LT5jX29zcGVlZCkgIT0gMCkK KwkJCQlwcmludGYoIlNldHRpbmcgYmF1ZCByYXRlIGZhaWxlZFxuIik7CisJCisJCQlicmVhazsK KworCQlkZWZhdWx0OgorCQkJcHJpbnRmKCJJbnZhbGlkIGJhdWQgcmF0ZSAlZFxuIiwgdC0+Y19v c3BlZWQpOworCQkJYnJlYWs7CisJfQorCQorCWlmICh1Y3BfZ2V0X2NvbmZpZyh1Y29tLCBDUDIx MDFfQklUUywgJmRhdCkgIT0gMCkgeworCQlwcmludGYoIkNvdWxkbid0IHJlYWQgZnJhbWUgZm9y bWF0XG4iKTsKKwkJcmV0dXJuKEVJTyk7CisJfQorCURQUklOVEZOKDIsKCJCSVRTIGlzIDB4JTAy eFxuIiwgZGF0KSk7CisKKwlkYXQgJj0gfkJJVFNfU1RPUF9NQVNLOwkKKwlpZiAoSVNTRVQodC0+ Y19jZmxhZywgQ1NUT1BCKSkKKwkJZGF0IHw9IEJJVFNfU1RPUF8yOworCWVsc2UJCisJCWRhdCB8 PSBCSVRTX1NUT1BfMTsKKwkJIAorCWRhdCAmPSB+QklUU19QQVJJVFlfTUFTSzsKKwlpZiAoSVNT RVQodC0+Y19jZmxhZywgUEFSRU5CKSkgeworCQlpZiAoSVNTRVQodC0+Y19jZmxhZywgUEFST0RE KSkKKwkJCWRhdCB8PSBCSVRTX1BBUklUWV9PREQ7CisJCWVsc2UKKwkJCWRhdCB8PSBCSVRTX1BB UklUWV9FVkVOOworCX0KKwkKKwlkYXQgJj0gfkJJVFNfREFUQV9NQVNLOworCXN3aXRjaCAoSVNT RVQodC0+Y19jZmxhZywgQ1NJWkUpKSB7CisJY2FzZSBDUzU6CisJCWRhdCB8PSBCSVRTX0RBVEFf NTsKKwkJYnJlYWs7CisJY2FzZSBDUzY6CisJCWRhdCB8PSBCSVRTX0RBVEFfNjsKKwkJYnJlYWs7 CisJY2FzZSBDUzc6CisJCWRhdCB8PSBCSVRTX0RBVEFfNzsKKwkJYnJlYWs7CisJY2FzZSBDUzg6 CisJCWRhdCB8PSBCSVRTX0RBVEFfODsKKwkJYnJlYWs7CisJfQorCisJRFBSSU5URk4oMiwoIlNl dHRpbmdzIEJJVFMgdG8gMHglMDJ4XG4iLCBkYXQpKTsKKwlpZiAodWNwX2dldF9jb25maWcodWNv bSwgQ1AyMTAxX0JJVFMsICZkYXQpICE9IDApIHsKKwkJcHJpbnRmKCJDb3VsZG4ndCBzZXQgZnJh bWUgZm9ybWF0XG4iKTsKKwl9CisKKyNpZiAxCisJcmVxLmJtUmVxdWVzdFR5cGUgPSBVVF9SRUFE X1ZFTkRPUl9JTlRFUkZBQ0U7CisJcmVxLmJSZXF1ZXN0ID0gQ1AyMTAxX01PREVNQ1RMICsgMTsK KwlVU0VUVyhyZXEud0luZGV4LCAwKTsKKwlVU0VUVyhyZXEud1ZhbHVlLCAwKTsKKwlVU0VUVyhy ZXEud0xlbmd0aCwgMTYpOworCisJcmVzdWx0ID0gdXNiZF9kb19yZXF1ZXN0KHVjb20tPnNjX3Vk ZXYsICZyZXEsIG1vZGVtX2N0bCk7CisKKwlpZiAocmVzdWx0ICE9IFVTQkRfTk9STUFMX0NPTVBM RVRJT04pIHsKKwkJcHJpbnRmKCJmYWlsZWQgdG8gZ2V0IG1vZGVtIGNvbnRyb2wgcmVnaXN0ZXJz IC0gJWRcbiIsIHJlc3VsdCk7CisJCXJldHVybihFSU8pOworCX0KKyNlbmRpZgorCWZvciAoaSA9 IDA7IGkgPCA0OyBpKyspCisJCW1vZGVtX2N0bFtpXSA9IGxlMzJ0b2gobW9kZW1fY3RsW2ldKTsK KworCURQUklOVEZOKDIsICgibW9kZW1fY3RsWzMuLjBdID0+IDB4JTA4eCAweCUwOHggMHglMDh4 IDB4JTA4eFxuIiwKKwkJICAgIG1vZGVtX2N0bFszXSwgbW9kZW1fY3RsWzJdLCBtb2RlbV9jdGxb MV0sIG1vZGVtX2N0bFswXSkpOworCQorCWlmIChJU1NFVCh0LT5jX2NmbGFnLCBDUlRTQ1RTKSkg eworCQlEUFJJTlRGTigyLCAoIlNldHRpbmcgZm9yIFJUUy9DVFNcbiIpKTsKKwkJbW9kZW1fY3Rs WzBdICY9IH4weDdCOworCQltb2RlbV9jdGxbMF0gfD0gMHgwOTsKKwkJbW9kZW1fY3RsWzFdID0g MHg4MDsKKwl9IGVsc2UgaWYgKElTU0VUKHQtPmNfaWZsYWcsIElYT058SVhPRkYpKSB7CQorCQlE UFJJTlRGTigyLCAoIlNldHRpbmcgZm9yIFhPTi9YT0ZGXG4iKSk7CisJCS8qIFhYWDogd2hhdCBk byBJIGRvIGhlcmU/IER1cGxpY2F0aW5nICdub25lJyBmb3Igbm93ICovCisJCW1vZGVtX2N0bFsw XSAmPSB+MHg3QjsKKwkJbW9kZW1fY3RsWzBdIHw9IDB4MDE7CisJCW1vZGVtX2N0bFsxXSB8PSAw eDQwOworCX0gZWxzZSB7CisJCURQUklOVEZOKDIsICgiU2V0dGluZyBmb3Igbm9uZVxuIikpOwor CQltb2RlbV9jdGxbMF0gJj0gfjB4N0I7CisJCW1vZGVtX2N0bFswXSB8PSAweDAxOworCQltb2Rl bV9jdGxbMV0gfD0gMHg0MDsKKwl9CisJRFBSSU5URk4oMiwgKCJtb2RlbV9jdGxbMy4uMF0gPD0g MHglMDh4IDB4JTA4eCAweCUwOHggMHglMDh4XG4iLAorCQkgICAgbW9kZW1fY3RsWzNdLCBtb2Rl bV9jdGxbMl0sIG1vZGVtX2N0bFsxXSwgbW9kZW1fY3RsWzBdKSk7CisKKwlmb3IgKGkgPSAwOyBp IDwgNDsgaSsrKQorCQltb2RlbV9jdGxbaV0gPSBodG9sZTMyKG1vZGVtX2N0bFtpXSk7CisjaWYg MQorCXJlcS5ibVJlcXVlc3RUeXBlID0gVVRfV1JJVEVfVkVORE9SX0lOVEVSRkFDRTsKKwlyZXEu YlJlcXVlc3QgPSBDUDIxMDFfTU9ERU1DVEw7CisJVVNFVFcocmVxLndJbmRleCwgMCk7CisJVVNF VFcocmVxLndWYWx1ZSwgMCk7CisJVVNFVFcocmVxLndMZW5ndGgsIDE2KTsKKworCXJlc3VsdCA9 IHVzYmRfZG9fcmVxdWVzdCh1Y29tLT5zY191ZGV2LCAmcmVxLCBtb2RlbV9jdGwpOworCisJaWYg KHJlc3VsdCAhPSBVU0JEX05PUk1BTF9DT01QTEVUSU9OKSB7CisJCXByaW50ZigiZmFpbGVkIHRv IGdldCBtb2RlbSBjb250cm9sIHJlZ2lzdGVycyAtICVkXG4iLCByZXN1bHQpOworCQlyZXR1cm4o RUlPKTsKKwl9CisjZW5kaWYKKwlyZXR1cm4gKDApOworfQorCit2b2lkCit1Y3BfZ2V0X3N0YXR1 cyh2b2lkICp2c2MsIGludCBwb3J0bm8sIHVfY2hhciAqbHNyLCB1X2NoYXIgKm1zcikgeworCXN0 cnVjdCB1Y3Bfc29mdGMgKglzYyA9IHZzYzsKKwlzdHJ1Y3QgdWNvbV9zb2Z0YyAqCXVjb20gPSAm c2MtPnNjX3Vjb207CisJdWludDE2X3QJCWRhdDsKKwkKKwlpZiAodWNwX2dldF9jb25maWcodWNv bSwgQ1AyMTAxX0NPTlRST0wsICZkYXQpICE9IDApIHsKKwkJcHJpbnRmKCJDb3VsZG4ndCBnZXQg Y29udHJvbCBpbmZvcm1hdGlvblxuIik7CisJfQorCQorCS8qIGxzciBhcHBlYXJzIHRvIGJlIHVu dXNlZCBpbiB1Y29tICovCisJKmxzciA9IDA7CisJKm1zciA9ICgoZGF0ICYgQ09OVFJPTF9EQ0Qp ID8gU0VSX0RDRCA6IDApIHwKKwkoKGRhdCAmIENPTlRST0xfQ1RTKSA/IFNFUl9DVFMgOiAwKSB8 CisJKChkYXQgJiBDT05UUk9MX1JJTkcpID8gU0VSX1JJIDogMCkgfAorCSgoZGF0ICYgQ09OVFJP TF9EU1IpID8gU0VSX0RTUiA6IDApOworCQorCQorCURQUklOVEYoKCJ1Y3Bfc3RhdHVzOiBtc3I9 MHglMDJ4IGxzcj0weCUwMnhcbiIsCisJCSAqbXNyLCAqbHNyKSk7Cit9CisKKy8qCisgKiB1Y3Bf YnJlYWsKKyAqIFNldC9jbGVhciB0aGUgYnJlYWsgY29uZGl0aW9uCisgKi8KK3ZvaWQKK3VjcF9i cmVhayh2b2lkICp2c2MsIGludCBwb3J0bm8sIGludCBvbm9mZikgeworCXN0cnVjdCB1Y3Bfc29m dGMgKglzYyA9IHZzYzsKKwlzdHJ1Y3QgdWNvbV9zb2Z0YyAqCXVjb20gPSAmc2MtPnNjX3Vjb207 CisKKwlEUFJJTlRGKCgidWNwX2JyZWFrOiBwb3J0PSVkIG9ub2ZmPSVkXG4iLCBwb3J0bm8sIG9u b2ZmKSk7CisJCisJaWYgKHVjcF9zZXRfY29uZmlnKHVjb20sIENQMjEwMV9CUkVBSywgb25vZmYg PyBCUkVBS19PTiA6IEJSRUFLX09GRikpCisJCXByaW50ZigiVW5hYmxlIHRvIGNoYW5nZSBCUkVB SyBzdGF0dXNcbiIpOworfQorCisvKgorICogdWNwX3NldF9jb25maWcKKyAqIFdyaXRlcyB0byB0 aGUgQ1AyMTAxIGNvbmZpZ3VyYXRpb24gcmVnaXN0ZXJzCisgKi8KK1N0YXRpYyBpbnQKK3VjcF9z ZXRfY29uZmlnKHN0cnVjdCB1Y29tX3NvZnRjICp1Y29tLCB1aW50OF90IHJlcXVlc3QsIHVpbnQx Nl90IGRhdGEpIHsKKwl1c2JfZGV2aWNlX3JlcXVlc3RfdCAJcmVxOworCXVzYmRfc3RhdHVzCQly ZXN1bHQ7CisKKwlEUFJJTlRGTigyLCgidWNwX3NldDogcmVxdWVzdCA9IDB4JTA0eCA8PSAweCUw NHhcbiIsIHJlcS5iUmVxdWVzdCwgZGF0YSkpOworCisJcmVxLmJtUmVxdWVzdFR5cGUgPSBVVF9X UklURV9WRU5ET1JfSU5URVJGQUNFOworCXJlcS5iUmVxdWVzdCA9IHJlcXVlc3Q7CisJVVNFVFco cmVxLndJbmRleCwgMCk7CisJVVNFVFcocmVxLndWYWx1ZSwgZGF0YSk7CisJVVNFVFcocmVxLndM ZW5ndGgsIDApOworCWlmICgocmVzdWx0ID0gdXNiZF9kb19yZXF1ZXN0KHVjb20tPnNjX3VkZXYs ICZyZXEsIE5VTEwpKSAhPSBVU0JEX05PUk1BTF9DT01QTEVUSU9OKSB7CisJCXByaW50ZigiZmFp bGVkIHRvIHNldCBjb25maWcgcGFydCBhIC0gJWRcbiIsIHJlc3VsdCk7CisJCXJldHVybihFSU8p OworCX0KKworCWlmICgocmVzdWx0ID0gdXNiZF9kb19yZXF1ZXN0KHVjb20tPnNjX3VkZXYsICZy ZXEsIE5VTEwpKSAhPSBVU0JEX05PUk1BTF9DT01QTEVUSU9OKSB7CisJCXByaW50ZigiZmFpbGVk IHRvIHNldCBjb25maWcgcGFydCBiIC0gJWRcbiIsIHJlc3VsdCk7CisJCXJldHVybihFSU8pOwor CX0KKwkKKwlyZXR1cm4gMDsKK30KKworLyoKKyAqIHVjcF9nZXRfY29uZmlnCisgKiBSZWFkcyBm cm9tIHRoZSBDUDIxMDEgY29uZmlndXJhdGlvbiByZWdpc3RlcnMKKyAqLworU3RhdGljIGludAor dWNwX2dldF9jb25maWcoc3RydWN0IHVjb21fc29mdGMgKnVjb20sIHVpbnQ4X3QgcmVxdWVzdCwg dWludDE2X3QgKmRhdGEpIHsKKwl1c2JfZGV2aWNlX3JlcXVlc3RfdCAJcmVxOworCXVzYmRfc3Rh dHVzCQlyZXN1bHQ7CisJCisJcmVxLmJtUmVxdWVzdFR5cGUgPSBVVF9SRUFEX1ZFTkRPUl9JTlRF UkZBQ0U7CisJcmVxLmJSZXF1ZXN0ID0gcmVxdWVzdCArIDE7CisJVVNFVFcocmVxLndJbmRleCwg MCk7CisJVVNFVFcocmVxLndWYWx1ZSwgMCk7CisJVVNFVFcocmVxLndMZW5ndGgsIDIpOworCisJ aWYgKChyZXN1bHQgPSB1c2JkX2RvX3JlcXVlc3QodWNvbS0+c2NfdWRldiwgJnJlcSwgZGF0YSkp ICE9IFVTQkRfTk9STUFMX0NPTVBMRVRJT04pIHsKKwkJcHJpbnRmKCJmYWlsZWQgdG8gZ2V0IGNv bmZpZyAtICVkXG4iLCByZXN1bHQpOworCQlyZXR1cm4oRUlPKTsKKwl9CisJKmRhdGEgPSBsZTE2 dG9oKCpkYXRhKTsKKwkKKwlEUFJJTlRGTigyLCgidWNwX2dldDogcmVxdWVzdCA9IDB4JTA0eCA9 PiAweCUwNHhcbiIsIHJlcS5iUmVxdWVzdCwgKmRhdGEpKTsKKwkKKwlyZXR1cm4gMDsKK30KKwor U3RhdGljIGRldmljZV9tZXRob2RfdCB1Y3BfbWV0aG9kc1tdID0geworCS8qIERldmljZSBpbnRl cmZhY2UgKi8KKwlERVZNRVRIT0QoZGV2aWNlX3Byb2JlLCB1Y3BfbWF0Y2gpLAorCURFVk1FVEhP RChkZXZpY2VfYXR0YWNoLCB1Y3BfYXR0YWNoKSwKKwlERVZNRVRIT0QoZGV2aWNlX2RldGFjaCwg dWNwX2RldGFjaCksCisKKwl7IDAsIDAgfQorfTsKKworU3RhdGljIGRyaXZlcl90IHVjcF9kcml2 ZXIgPSB7CisJInVjb20iLAorCXVjcF9tZXRob2RzLAorCXNpemVvZiAoc3RydWN0IHVjcF9zb2Z0 YykKK307CisKK0RSSVZFUl9NT0RVTEUodWNwLCB1aHViLCB1Y3BfZHJpdmVyLCB1Y29tX2RldmNs YXNzLCB1c2JkX2RyaXZlcl9sb2FkLCAwKTsKK01PRFVMRV9ERVBFTkQodWNwLCB1c2IsIDEsIDEs IDEpOworTU9EVUxFX0RFUEVORCh1Y3AsIHVjb20sVUNPTV9NSU5WRVIsIFVDT01fUFJFRlZFUiwg VUNPTV9NQVhWRVIpOworCisvKgorICogTG9jYWwgdmFyaWFibGVzOgorICogYy1iYXNpYy1vZmZz ZXQ6IDgKKyAqIEVuZDoKKyAqLwpJbmRleDogZGV2L3VzYi91Y3ByZWcuaAo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJD UyBmaWxlOiBkZXYvdXNiL3VjcHJlZy5oCmRpZmYgLU4gZGV2L3VzYi91Y3ByZWcuaAotLS0gL2Rl di9udWxsCTEgSmFuIDE5NzAgMDA6MDA6MDAgLTAwMDAKKysrIGRldi91c2IvdWNwcmVnLmgJOSBN YXkgMjAwNiAwMDozNTozMiAtMDAwMApAQCAtMCwwICsxLDYxIEBACisvKgkkRnJlZUJTRCQgKi8K KworLyoKKyAqIERlZmluaXRpb25zIGZvciB0aGUgU0kgTGFicyBDUCAyMTAxLzIxMDIKKyAqLwor CisvKiBDb25maWcgU0VUIHJlcXVlc3RzLiBUbyBHRVQsIGFkZCAxIHRvIHRoZSByZXF1ZXN0IG51 bWJlciAqLworI2RlZmluZSBDUDIxMDFfVUFSVCAJCTB4MDAJLyogRW5hYmxlIC8gRGlzYWJsZSAq LworI2RlZmluZSBDUDIxMDFfQkFVRFJBVEUJCTB4MDEJLyogKEJBVURfUkFURV9HRU5fRlJFUSAv IGJhdWRyYXRlKSAqLworI2RlZmluZSBDUDIxMDFfQklUUwkJMHgwMwkvKiAweCgwKShkYXRhYml0 cykocGFyaXR5KShzdG9wYml0cykgKi8KKyNkZWZpbmUgQ1AyMTAxX0JSRUFLCQkweDA1CS8qIE9u IC8gT2ZmICovCisjZGVmaW5lIENQMjEwMV9DT05UUk9MCQkweDA3CS8qIEZsb3cgY29udHJvbCBs aW5lIHN0YXRlcyAqLworI2RlZmluZSBDUDIxMDFfTU9ERU1DVEwJCTB4MTMJLyogTW9kZW0gY29u dHJvbHMgKi8KKyNkZWZpbmUgQ1AyMTAxX0NPTkZJR182CQkweDE5CS8qIDYgYnl0ZXMgb2YgY29u ZmlnIGRhdGEgPz8/ICovCisKKy8qIENQMjEwMV9VQVJUICovCisjZGVmaW5lIFVBUlRfRU5BQkxF CQkweDAwMDEKKyNkZWZpbmUgVUFSVF9ESVNBQkxFCQkweDAwMDAKKworLyogQ1AyMTAxX0JBVURS QVRFICovCisjZGVmaW5lIEJBVURfUkFURV9HRU5fRlJFUQkweDM4NDAwMAorCisvKiBDUDIxMDFf QklUUyAqLworI2RlZmluZSBCSVRTX0RBVEFfTUFTSwkJMFgwZjAwCisjZGVmaW5lIEJJVFNfREFU QV81CQkwWDA1MDAKKyNkZWZpbmUgQklUU19EQVRBXzYJCTBYMDYwMAorI2RlZmluZSBCSVRTX0RB VEFfNwkJMFgwNzAwCisjZGVmaW5lIEJJVFNfREFUQV84CQkwWDA4MDAKKyNkZWZpbmUgQklUU19E QVRBXzkJCTBYMDkwMAorCisjZGVmaW5lIEJJVFNfUEFSSVRZX01BU0sJMHgwMGYwCisjZGVmaW5l IEJJVFNfUEFSSVRZX05PTkUJMHgwMDAwCisjZGVmaW5lIEJJVFNfUEFSSVRZX09ERAkJMHgwMDEw CisjZGVmaW5lIEJJVFNfUEFSSVRZX0VWRU4JMHgwMDIwCisjZGVmaW5lIEJJVFNfUEFSSVRZX01B UksJMHgwMDMwCisjZGVmaW5lIEJJVFNfUEFSSVRZX1NQQUNFCTB4MDA0MAorCisjZGVmaW5lIEJJ VFNfU1RPUF9NQVNLCQkweDAwMGYKKyNkZWZpbmUgQklUU19TVE9QXzEJCTB4MDAwMAorI2RlZmlu ZSBCSVRTX1NUT1BfMV81CQkweDAwMDEKKyNkZWZpbmUgQklUU19TVE9QXzIJCTB4MDAwMgorCisv KiBDUDIxMDFfQlJFQUsgKi8KKyNkZWZpbmUgQlJFQUtfT04JCTB4MDAwMAorI2RlZmluZSBCUkVB S19PRkYJCTB4MDAwMQorCisvKiBDUDIxMDFfQ09OVFJPTCAqLworI2RlZmluZSBDT05UUk9MX0RU UgkJMHgwMDAxCisjZGVmaW5lIENPTlRST0xfUlRTCQkweDAwMDIKKyNkZWZpbmUgQ09OVFJPTF9D VFMJCTB4MDAxMAorI2RlZmluZSBDT05UUk9MX0RTUgkJMHgwMDIwCisjZGVmaW5lIENPTlRST0xf UklORwkJMHgwMDQwCisjZGVmaW5lIENPTlRST0xfRENECQkweDAwODAKKyNkZWZpbmUgQ09OVFJP TF9XUklURV9EVFIJMHgwMTAwCisjZGVmaW5lIENPTlRST0xfV1JJVEVfUlRTCTB4MDIwMAorCisv KgorICogTG9jYWwgdmFyaWFibGVzOgorICogYy1iYXNpYy1vZmZzZXQ6IDgKKyAqIEVuZDoKKyAq LwpJbmRleDogZGV2L3VzYi91c2JkZXZzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC91c3IvQ1ZTLVJl cG9zaXRvcnkvc3JjL3N5cy9kZXYvdXNiL3VzYmRldnMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEu MjU1CmRpZmYgLXUgLXIxLjI1NSB1c2JkZXZzCi0tLSBkZXYvdXNiL3VzYmRldnMJMjcgRmViIDIw MDYgMDE6MDE6MjcgLTAwMDAJMS4yNTUKKysrIGRldi91c2IvdXNiZGV2cwk5IE1heSAyMDA2IDAw OjQ0OjI3IC0wMDAwCkBAIC0xODYxLDUgKzE4NjEsNiBAQAogIC8qIFBMWCBwcm9kdWN0cyAqLwog cHJvZHVjdCBQTFggVEVTVEJPQVJECQkweDkwNjAJdGVzdCBib2FyZAorcHJvZHVjdCBQTFggTk9L SUFfQ0E0MgkJMHhhYzcwCU5va2lhIENBLTQyIFVTQgogCiAvKiBQTlkgcHJvZHVjdHMgKi8KIHBy b2R1Y3QgUE5ZIEFUVEFDSEUyCQkweDAwMTAJVVNCIDIuMCBGbGFzaCBEcml2ZQpAQCAtMjAzMyw2 ICsyMDMzLDE0IEBACiBwcm9kdWN0IFNJSUcyIFVTQlRPRVRIRVIJMHgwMTA5CVVTQiBUTyBFdGhl cm5ldAogcHJvZHVjdCBTSUlHMiBVUzIzMDgJCTB4MDQyMQlTZXJpYWwKIAorIC8qIFNJIExhYnMg Ki8KKyBwcm9kdWN0IFNJTEFCUwlDUlVNQjEyOAkweDgwN2EJQ3J1bWIxMjggYm9hcmQKKyBwcm9k dWN0IFNJTEFCUwlERUdSRUUJCTB4ODBjYQlEZWdyZWUgQ29udHJvbHMgSW5jCisgcHJvZHVjdCBT SUxBQlMJU1VVTlRPCQkweDgwZjYJU3V1bnRvIFNwb3J0cyBJbnN0cnVtZW50CisgcHJvZHVjdCBT SUxBQlMJQlVSTlNJREUJMHg4MTNkCUJ1cm5zaWRlIFRlbGVjb24gRGVza21vYmlsZQorIHByb2R1 Y3QgU0lMQUJTCUhFTElDT00JCTB4ODE1ZQlIZWxpY29tbSBJUC1MaW5rIDEyMjAtRFZNCisgcHJv ZHVjdCBTSUxBQlMJQ1AyMTB4CQkweGVhNjAJU0lMQUJTIFVTQiBVQVJUCisKIC8qIFNpbGljb20g cHJvZHVjdHMgKi8KIHByb2R1Y3QgU0lMSUNPTSBVMkUJCTB4MDAwMQlVMkUKIHByb2R1Y3QgU0lM SUNPTSBHUEUJCTB4MDAwMglQc2lvbiBHb2xkIFBvcnQgRXRoZXJuZXQ= ------=_Part_24136_14330792.1204762474199-- >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: State-Changed-From-To: open->closed State-Changed-By: gavin State-Changed-When: Thu Mar 6 03:38:38 UTC 2008 State-Changed-Why: Misfiled followup to usb/119002, content migrated Responsible-Changed-From-To: gnats-admin->gavin Responsible-Changed-By: gavin Responsible-Changed-When: Thu Mar 6 03:38:38 UTC 2008 Responsible-Changed-Why: http://www.freebsd.org/cgi/query-pr.cgi?pr=121415 >Unformatted: