From owner-freebsd-wireless@FreeBSD.ORG Tue May 8 17:11:42 2012 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 88E9F1065674 for ; Tue, 8 May 2012 17:11:42 +0000 (UTC) (envelope-from bschmidt@techwires.net) Received: from mail-lb0-f182.google.com (mail-lb0-f182.google.com [209.85.217.182]) by mx1.freebsd.org (Postfix) with ESMTP id DA3558FC17 for ; Tue, 8 May 2012 17:11:41 +0000 (UTC) Received: by lbon10 with SMTP id n10so6042793lbo.13 for ; Tue, 08 May 2012 10:11:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:x-originating-ip:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :x-gm-message-state; bh=ElTywq9TKAnwSpuGfw2foqTa7nGVCf+Lb44LGfrFG84=; b=OO+4uYe+nw6efPrxqSlwg+lA/heAmxyQ0XXoSinIt0AyuQDMXuETPeXORT0VDH2G8+ q0jt5BZ1BupROE5Sq6Bhb2zomWAUssR6XRBZHAP/s2rthEE4y4fLKvvcJ9gRUmLzE8bP aFv+Nl3lxMa8h5VoW6pAnj6FsSzOyWgePZffJDRAhcXSoW8jVNnzNtkWshKCqN5UEEGY PtUipkcDDmskz+DTtBX5qy1g1761GQszoPDTJ88iyCaWAadmsXpkmHWxHBT92RbjS0Ek ld6L5+VUTVc3B9fxSmpCK2E+2HqLY94JaLldAT5B//lesWUMqwVXWxvInb0tDbTKNjIz QSWQ== MIME-Version: 1.0 Received: by 10.112.46.9 with SMTP id r9mr9089062lbm.81.1336497100434; Tue, 08 May 2012 10:11:40 -0700 (PDT) Sender: bschmidt@techwires.net Received: by 10.152.122.145 with HTTP; Tue, 8 May 2012 10:11:40 -0700 (PDT) X-Originating-IP: [88.65.57.209] In-Reply-To: <201205051251.10431.bschmidt@freebsd.org> References: <201205031853.53102.bschmidt@freebsd.org> <20120505105258.28e28803@laptop> <201205051251.10431.bschmidt@freebsd.org> Date: Tue, 8 May 2012 19:11:40 +0200 X-Google-Sender-Auth: cs7aqnpdX0GArL0V6Xppb3TqSO8 Message-ID: From: Bernhard Schmidt To: freebsd-wireless@freebsd.org Content-Type: multipart/mixed; boundary=f46d0401236fea2fa804bf897ab6 X-Gm-Message-State: ALoCoQmZolPyggwOTeQP8NNR9oa/FQowvE2J0MGrlKZfwI3v1akIXHb63HUJx7S7G7uD9tpf7CYr Cc: freebsd-net@freebsd.org, freebsd-current@freebsd.org Subject: Re: [CFT] Ralink RT2860, RT2870, RT3060, RT3090 support X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 May 2012 17:11:42 -0000 --f46d0401236fea2fa804bf897ab6 Content-Type: text/plain; charset=ISO-8859-1 On Sat, May 5, 2012 at 12:51 PM, Bernhard Schmidt wrote: > Please apply attached patch (also here [1]) on top of the first one, > it fixes channel switching for >= 3070 (called the wrong function, > doh..) as well as a bgscan issue. > > [1] http://techwires.net/~bschmidt/rt2860_1.diff And another update [1] on top of the other 2 patches. * fix TX DMA, a wrong dmat has been used * add some more PCI IDs * disable debugging output by default * disable bgscan until it's sorted out * a printf is now hidden behind bootverbose So far it looks quite good, no open issues at the moment, keep on testing! ;) If nothing new comes up within the next few days I intend to commit this by the end of the week or something. [1] http://techwires.net/~bschmidt/rt2860_2.diff -- Bernhard --f46d0401236fea2fa804bf897ab6 Content-Type: application/octet-stream; name="rt2860_2.diff" Content-Disposition: attachment; filename="rt2860_2.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h1z7t8xa1 ZGlmZiAtLWdpdCBzeXMvZGV2L3JhbC9pZl9yYWxfcGNpLmMgc3lzL2Rldi9yYWwvaWZfcmFsX3Bj aS5jCmluZGV4IDE1YzExYmQuLmMzNDM4YTMgMTAwNjQ0Ci0tLSBzeXMvZGV2L3JhbC9pZl9yYWxf cGNpLmMKKysrIHN5cy9kZXYvcmFsL2lmX3JhbF9wY2kuYwpAQCAtNzEsMTcgKzcxLDM3IEBAIHN0 cnVjdCByYWxfcGNpX2lkZW50IHsKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcmFsX3BjaV9p ZGVudCByYWxfcGNpX2lkc1tdID0geworCXsgMHgxNDMyLCAweDc3MDgsICJFZGltYXggUlQyODYw IiB9LAorCXsgMHgxNDMyLCAweDc3MTEsICJFZGltYXggUlQzNTkxIiB9LAorCXsgMHgxNDMyLCAw eDc3MjIsICJFZGltYXggUlQzNTkxIiB9LAorCXsgMHgxNDMyLCAweDc3MjcsICJFZGltYXggUlQy ODYwIiB9LAorCXsgMHgxNDMyLCAweDc3MjgsICJFZGltYXggUlQyODYwIiB9LAorCXsgMHgxNDMy LCAweDc3MzgsICJFZGltYXggUlQyODYwIiB9LAorCXsgMHgxNDMyLCAweDc3NDgsICJFZGltYXgg UlQyODYwIiB9LAorCXsgMHgxNDMyLCAweDc3NTgsICJFZGltYXggUlQyODYwIiB9LAorCXsgMHgx NDMyLCAweDc3NjgsICJFZGltYXggUlQyODYwIiB9LAorCXsgMHgxNDYyLCAweDg5MWEsICJNU0kg UlQzMDkwIiB9LAogCXsgMHgxODE0LCAweDAyMDEsICJSYWxpbmsgVGVjaG5vbG9neSBSVDI1NjAi IH0sCiAJeyAweDE4MTQsIDB4MDMwMSwgIlJhbGluayBUZWNobm9sb2d5IFJUMjU2MVMiIH0sCiAJ eyAweDE4MTQsIDB4MDMwMiwgIlJhbGluayBUZWNobm9sb2d5IFJUMjU2MSIgfSwKIAl7IDB4MTgx NCwgMHgwNDAxLCAiUmFsaW5rIFRlY2hub2xvZ3kgUlQyNjYxIiB9LAotCXsgMHgxODE0LCAweDA2 MDEsICJSYWxpbmsgVGVjaG5vbG9neSBSVDI4NjAgUENJIiB9LAotCXsgMHgxODE0LCAweDA2ODEs ICJSYWxpbmsgVGVjaG5vbG9neSBSVDI4NjAgUENJZSIgfSwKLQl7IDB4MTgxNCwgMHgwNzAxLCAi UmFsaW5rIFRlY2hub2xvZ3kgUlQyODcwIFBDSSIgfSwKLQl7IDB4MTgxNCwgMHgwNzgxLCAiUmFs aW5rIFRlY2hub2xvZ3kgUlQyODcwIFBDSWUiIH0sCi0JeyAweDE4MTQsIDB4MzA2MCwgIlJhbGlu ayBUZWNobm9sb2d5IFJUMzA2MCBQQ0kiIH0sCi0JeyAweDE4MTQsIDB4MzA5MCwgIlJhbGluayBU ZWNobm9sb2d5IFJUMzA5MCBQQ0llIiB9LAotCisJeyAweDE4MTQsIDB4MDYwMSwgIlJhbGluayBU ZWNobm9sb2d5IFJUMjg2MCIgfSwKKwl7IDB4MTgxNCwgMHgwNjgxLCAiUmFsaW5rIFRlY2hub2xv Z3kgUlQyODkwIiB9LAorCXsgMHgxODE0LCAweDA3MDEsICJSYWxpbmsgVGVjaG5vbG9neSBSVDI3 NjAiIH0sCisJeyAweDE4MTQsIDB4MDc4MSwgIlJhbGluayBUZWNobm9sb2d5IFJUMjc5MCIgfSwK Kwl7IDB4MTgxNCwgMHgzMDYwLCAiUmFsaW5rIFRlY2hub2xvZ3kgUlQzMDYwIiB9LAorCXsgMHgx ODE0LCAweDMwNjIsICJSYWxpbmsgVGVjaG5vbG9neSBSVDMwNjIiIH0sCisJeyAweDE4MTQsIDB4 MzA5MCwgIlJhbGluayBUZWNobm9sb2d5IFJUMzA5MCIgfSwKKwl7IDB4MTgxNCwgMHgzMDkxLCAi UmFsaW5rIFRlY2hub2xvZ3kgUlQzMDkxIiB9LAorCXsgMHgxODE0LCAweDMwOTIsICJSYWxpbmsg VGVjaG5vbG9neSBSVDMwOTIiIH0sCisJeyAweDE4MTQsIDB4MzM5MCwgIlJhbGluayBUZWNobm9s b2d5IFJUMzM5MCIgfSwKKwl7IDB4MTgxNCwgMHgzNTYyLCAiUmFsaW5rIFRlY2hub2xvZ3kgUlQz NTYyIiB9LAorCXsgMHgxODE0LCAweDM1OTIsICJSYWxpbmsgVGVjaG5vbG9neSBSVDM1OTIiIH0s CisJeyAweDE4MTQsIDB4MzU5MywgIlJhbGluayBUZWNobm9sb2d5IFJUMzU5MyIgfSwKKwl7IDB4 MTgxNCwgMHg1MzkwLCAiUmFsaW5rIFRlY2hub2xvZ3kgUlQ1MzkwIiB9LAorCXsgMHgxODE0LCAw eDUzOWEsICJSYWxpbmsgVGVjaG5vbG9neSBSVDUzOTAiIH0sCisJeyAweDE4MTQsIDB4NTM5Ziwg IlJhbGluayBUZWNobm9sb2d5IFJUNTM5MCIgfSwKKwl7IDB4MWEzYiwgMHgxMDU5LCAiQVdUIFJU Mjg5MCIgfSwKIAl7IDAsIDAsIE5VTEwgfQogfTsKIApAQCAtMjA0LDE4ICsyMjQsOSBAQCByYWxf cGNpX2F0dGFjaChkZXZpY2VfdCBkZXYpCiAJY2FzZSAweDA0MDE6CiAJCXBzYy0+c2Nfb3BucyA9 ICZyYWxfcnQyNjYxX29wbnM7CiAJCWJyZWFrOwotCWNhc2UgMHgwNjAxOgotCWNhc2UgMHgwNjgx OgotCWNhc2UgMHgwNzAxOgotCWNhc2UgMHgwNzgxOgotCWNhc2UgMHgzMDYwOgotCWNhc2UgMHgz MDkwOgorCWRlZmF1bHQ6CiAJCXBzYy0+c2Nfb3BucyA9ICZyYWxfcnQyODYwX29wbnM7CiAJCWJy ZWFrOwotCWRlZmF1bHQ6Ci0JCWRldmljZV9wcmludGYoZGV2LCAiRVJST1I6IFVua25vd24gY2Fy ZCAweCUwNHhcbiIsCi0JCSAgICBwY2lfZ2V0X2RldmljZShkZXYpKTsKLQkJcmV0dXJuIChFTlhJ Tyk7CiAJfQogCiAJcHNjLT5tZW1fcmlkID0gUkFMX1BDSV9CQVIwOwpkaWZmIC0tZ2l0IHN5cy9k ZXYvcmFsL3J0Mjg2MC5jIHN5cy9kZXYvcmFsL3J0Mjg2MC5jCmluZGV4IGNhYTE1ODYuLjk3ZGU5 NTAgMTAwNjQ0Ci0tLSBzeXMvZGV2L3JhbC9ydDI4NjAuYworKysgc3lzL2Rldi9yYWwvcnQyODYw LmMKQEAgLTcxLDcgKzcxLDYgQEAgX19GQlNESUQoIiRGcmVlQlNEJCIpOwogI2lmZGVmIFJBTF9E RUJVRwogI2RlZmluZSBEUFJJTlRGKHgpCWRvIHsgaWYgKHNjLT5zY19kZWJ1ZyA+IDApIHByaW50 ZiB4OyB9IHdoaWxlICgwKQogI2RlZmluZSBEUFJJTlRGTihuLCB4KQlkbyB7IGlmIChzYy0+c2Nf ZGVidWcgPj0gKG4pKSBwcmludGYgeDsgfSB3aGlsZSAoMCkKLWludCBydDI4NjBfZGVidWcgPSAw OwogI2Vsc2UKICNkZWZpbmUgRFBSSU5URih4KQogI2RlZmluZSBEUFJJTlRGTihuLCB4KQpAQCAt MjI5LDYgKzIyOCw3IEBAIHJ0Mjg2MF9hdHRhY2goZGV2aWNlX3QgZGV2LCBpbnQgaWQpCiAJdWlu dDhfdCBtYWNhZGRyW0lFRUU4MDIxMV9BRERSX0xFTl07CiAKIAlzYy0+c2NfZGV2ID0gZGV2Owor CXNjLT5zY19kZWJ1ZyA9IDA7CiAKIAlpZnAgPSBzYy0+c2NfaWZwID0gaWZfYWxsb2MoSUZUX0lF RUU4MDIxMSk7CiAJaWYgKGlmcCA9PSBOVUxMKSB7CkBAIC0yNjQsMTAgKzI2NCwxMiBAQCBydDI4 NjBfYXR0YWNoKGRldmljZV90IGRldiwgaW50IGlkKQogCiAJLyogcmV0cmlldmUgUkYgcmV2LiBu byBhbmQgdmFyaW91cyBvdGhlciB0aGluZ3MgZnJvbSBFRVBST00gKi8KIAlydDI4NjBfcmVhZF9l ZXByb20oc2MsIG1hY2FkZHIpOwotCWRldmljZV9wcmludGYoc2MtPnNjX2RldiwKLQkgICAgIk1B Qy9CQlAgUlQlWCAocmV2IDB4JTA0WCksIFJGICVzIChNSU1PICVkVCVkUilcbiIsCi0JICAgIHNj LT5tYWNfdmVyLCBzYy0+bWFjX3JldiwgcnQyODYwX2dldF9yZihzYy0+cmZfcmV2KSwKLQkgICAg c2MtPm50eGNoYWlucywgc2MtPm5yeGNoYWlucyk7CisJaWYgKGJvb3R2ZXJib3NlKSB7CisJCWRl dmljZV9wcmludGYoc2MtPnNjX2RldiwgIk1BQy9CQlAgUlQlWCAocmV2IDB4JTA0WCksICIKKwkJ ICAgICJSRiAlcyAoTUlNTyAlZFQlZFIpLCBhZGRyZXNzICU2RFxuIiwKKwkJICAgIHNjLT5tYWNf dmVyLCBzYy0+bWFjX3JldiwgcnQyODYwX2dldF9yZihzYy0+cmZfcmV2KSwKKwkJICAgIHNjLT5u dHhjaGFpbnMsIHNjLT5ucnhjaGFpbnMsIG1hY2FkZHIsICI6Iik7CisJfQogCiAJLyoKIAkgKiBB bGxvY2F0ZSBUeCAoNCBFRENBcyArIEhDQ0EgKyBNZ3QpIGFuZCBSeCByaW5ncy4KQEAgLTMyMCw3 ICszMjIsOSBAQCBydDI4NjBfYXR0YWNoKGRldmljZV90IGRldiwgaW50IGlkKQogCQl8IElFRUU4 MDIxMV9DX1NIUFJFQU1CTEUJLyogc2hvcnQgcHJlYW1ibGUgc3VwcG9ydGVkICovCiAJCXwgSUVF RTgwMjExX0NfU0hTTE9UCQkvKiBzaG9ydCBzbG90IHRpbWUgc3VwcG9ydGVkICovCiAJCXwgSUVF RTgwMjExX0NfV1BBCQkvKiBjYXBhYmxlIG9mIFdQQTErV1BBMiAqLworI2lmIDAKIAkJfCBJRUVF ODAyMTFfQ19CR1NDQU4JCS8qIGNhcGFibGUgb2YgYmcgc2Nhbm5pbmcgKi8KKyNlbmRpZgogCQl8 IElFRUU4MDIxMV9DX1dNRQkJLyogODAyLjExZSAqLwogCQk7CiAKQEAgLTU0MiwxNCArNTQ2LDYg QEAgcnQyODYwX2FsbG9jX3R4X3Jpbmcoc3RydWN0IHJ0Mjg2MF9zb2Z0YyAqc2MsIHN0cnVjdCBy dDI4NjBfdHhfcmluZyAqcmluZykKIAogCWJ1c19kbWFtYXBfc3luYyhyaW5nLT5kZXNjX2RtYXQs IHJpbmctPmRlc2NfbWFwLCBCVVNfRE1BU1lOQ19QUkVXUklURSk7CiAKLQllcnJvciA9IGJ1c19k bWFfdGFnX2NyZWF0ZShidXNfZ2V0X2RtYV90YWcoc2MtPnNjX2RldiksIDEsIDAsCi0JICAgIEJV U19TUEFDRV9NQVhBRERSXzMyQklULCBCVVNfU1BBQ0VfTUFYQUREUiwgTlVMTCwgTlVMTCwgTUNM QllURVMsCi0JICAgIFJUMjg2MF9NQVhfU0NBVFRFUiwgTUNMQllURVMsIDAsIE5VTEwsIE5VTEws ICZyaW5nLT5kYXRhX2RtYXQpOwotCWlmIChlcnJvciAhPSAwKSB7Ci0JCWRldmljZV9wcmludGYo c2MtPnNjX2RldiwgImNvdWxkIG5vdCBjcmVhdGUgZGF0YSBETUEgdGFnXG4iKTsKLQkJZ290byBm YWlsOwotCX0KLQogCXJldHVybiAwOwogCiBmYWlsOglydDI4NjBfZnJlZV90eF9yaW5nKHNjLCBy aW5nKTsKQEAgLTU2Nyw5ICs1NjMsOSBAQCBydDI4NjBfcmVzZXRfdHhfcmluZyhzdHJ1Y3QgcnQy ODYwX3NvZnRjICpzYywgc3RydWN0IHJ0Mjg2MF90eF9yaW5nICpyaW5nKQogCQkJY29udGludWU7 CS8qIG5vdGhpbmcgbWFwcGVkIGluIHRoaXMgc2xvdCAqLwogCiAJCWlmIChkYXRhLT5tICE9IE5V TEwpIHsKLQkJCWJ1c19kbWFtYXBfc3luYyhyaW5nLT5kYXRhX2RtYXQsIGRhdGEtPm1hcCwKKwkJ CWJ1c19kbWFtYXBfc3luYyhzYy0+dHh3aV9kbWF0LCBkYXRhLT5tYXAsCiAJCQkgICAgQlVTX0RN QVNZTkNfUE9TVFdSSVRFKTsKLQkJCWJ1c19kbWFtYXBfdW5sb2FkKHJpbmctPmRhdGFfZG1hdCwg ZGF0YS0+bWFwKTsKKwkJCWJ1c19kbWFtYXBfdW5sb2FkKHNjLT50eHdpX2RtYXQsIGRhdGEtPm1h cCk7CiAJCQltX2ZyZWVtKGRhdGEtPm0pOwogCQkJZGF0YS0+bSA9IE5VTEw7CiAJCX0KQEAgLTYw Niw5ICs2MDIsOSBAQCBydDI4NjBfZnJlZV90eF9yaW5nKHN0cnVjdCBydDI4NjBfc29mdGMgKnNj LCBzdHJ1Y3QgcnQyODYwX3R4X3JpbmcgKnJpbmcpCiAJCQljb250aW51ZTsJLyogbm90aGluZyBt YXBwZWQgaW4gdGhpcyBzbG90ICovCiAKIAkJaWYgKGRhdGEtPm0gIT0gTlVMTCkgewotCQkJYnVz X2RtYW1hcF9zeW5jKHJpbmctPmRhdGFfZG1hdCwgZGF0YS0+bWFwLAorCQkJYnVzX2RtYW1hcF9z eW5jKHNjLT50eHdpX2RtYXQsIGRhdGEtPm1hcCwKIAkJCSAgICBCVVNfRE1BU1lOQ19QT1NUV1JJ VEUpOwotCQkJYnVzX2RtYW1hcF91bmxvYWQocmluZy0+ZGF0YV9kbWF0LCBkYXRhLT5tYXApOwor CQkJYnVzX2RtYW1hcF91bmxvYWQoc2MtPnR4d2lfZG1hdCwgZGF0YS0+bWFwKTsKIAkJCW1fZnJl ZW0oZGF0YS0+bSk7CiAJCX0KIAkJaWYgKGRhdGEtPm5pICE9IE5VTEwpCkBAIC0xMTUwLDkgKzEx NDYsOSBAQCBydDI4NjBfdHhfaW50cihzdHJ1Y3QgcnQyODYwX3NvZnRjICpzYywgaW50IHFpZCkK IAkJc3RydWN0IHJ0Mjg2MF90eF9kYXRhICpkYXRhID0gcmluZy0+ZGF0YVtyaW5nLT5uZXh0XTsK IAogCQlpZiAoZGF0YSAhPSBOVUxMKSB7Ci0JCQlidXNfZG1hbWFwX3N5bmMocmluZy0+ZGF0YV9k bWF0LCBkYXRhLT5tYXAsCisJCQlidXNfZG1hbWFwX3N5bmMoc2MtPnR4d2lfZG1hdCwgZGF0YS0+ bWFwLAogCQkJICAgIEJVU19ETUFTWU5DX1BPU1RXUklURSk7Ci0JCQlidXNfZG1hbWFwX3VubG9h ZChyaW5nLT5kYXRhX2RtYXQsIGRhdGEtPm1hcCk7CisJCQlidXNfZG1hbWFwX3VubG9hZChzYy0+ dHh3aV9kbWF0LCBkYXRhLT5tYXApOwogCQkJaWYgKGRhdGEtPm0tPm1fZmxhZ3MgJiBNX1RYQ0Ip IHsKIAkJCQlpZWVlODAyMTFfcHJvY2Vzc19jYWxsYmFjayhkYXRhLT5uaSwgZGF0YS0+bSwKIAkJ CQkgICAgMCk7CkBAIC0xNjExLDcgKzE2MDcsNyBAQCBydDI4NjBfdHgoc3RydWN0IHJ0Mjg2MF9z b2Z0YyAqc2MsIHN0cnVjdCBtYnVmICptLCBzdHJ1Y3QgaWVlZTgwMjExX25vZGUgKm5pKQogCW1l bWNweSh0eHdpICsgMSwgd2gsIGhkcmxlbik7CiAJbV9hZGoobSwgaGRybGVuKTsKIAotCWVycm9y ID0gYnVzX2RtYW1hcF9sb2FkX21idWZfc2cocmluZy0+ZGF0YV9kbWF0LCBkYXRhLT5tYXAsIG0s IHNlZ3MsCisJZXJyb3IgPSBidXNfZG1hbWFwX2xvYWRfbWJ1Zl9zZyhzYy0+dHh3aV9kbWF0LCBk YXRhLT5tYXAsIG0sIHNlZ3MsCiAJICAgICZuc2VncywgMCk7CiAJaWYgKF9fcHJlZGljdF9mYWxz ZShlcnJvciAhPSAwICYmIGVycm9yICE9IEVGQklHKSkgewogCQlkZXZpY2VfcHJpbnRmKHNjLT5z Y19kZXYsICJjYW4ndCBtYXAgbWJ1ZiAoZXJyb3IgJWQpXG4iLApAQCAtMTYyNSw3ICsxNjIxLDcg QEAgcnQyODYwX3R4KHN0cnVjdCBydDI4NjBfc29mdGMgKnNjLCBzdHJ1Y3QgbWJ1ZiAqbSwgc3Ry dWN0IGllZWU4MDIxMV9ub2RlICpuaSkKIAogCQlpZiAocmluZy0+cXVldWVkICsgbnR4ZHMgPj0g UlQyODYwX1RYX1JJTkdfQ09VTlQpIHsKIAkJCS8qIG5vdCBlbm91Z2ggZnJlZSBUWERzLCBmb3Jj ZSBtYnVmIGRlZnJhZyAqLwotCQkJYnVzX2RtYW1hcF91bmxvYWQocmluZy0+ZGF0YV9kbWF0LCBk YXRhLT5tYXApOworCQkJYnVzX2RtYW1hcF91bmxvYWQoc2MtPnR4d2lfZG1hdCwgZGF0YS0+bWFw KTsKIAkJCWVycm9yID0gRUZCSUc7CiAJCX0KIAl9CkBAIC0xNjM5LDcgKzE2MzUsNyBAQCBydDI4 NjBfdHgoc3RydWN0IHJ0Mjg2MF9zb2Z0YyAqc2MsIHN0cnVjdCBtYnVmICptLCBzdHJ1Y3QgaWVl ZTgwMjExX25vZGUgKm5pKQogCQl9CiAJCW0gPSBtMTsKIAotCQllcnJvciA9IGJ1c19kbWFtYXBf bG9hZF9tYnVmX3NnKHJpbmctPmRhdGFfZG1hdCwgZGF0YS0+bWFwLCBtLAorCQllcnJvciA9IGJ1 c19kbWFtYXBfbG9hZF9tYnVmX3NnKHNjLT50eHdpX2RtYXQsIGRhdGEtPm1hcCwgbSwKIAkJICAg IHNlZ3MsICZuc2VncywgMCk7CiAJCWlmIChfX3ByZWRpY3RfZmFsc2UoZXJyb3IgIT0gMCkpIHsK IAkJCWRldmljZV9wcmludGYoc2MtPnNjX2RldiwgImNhbid0IG1hcCBtYnVmIChlcnJvciAlZClc biIsCkBAIC0xNjUzLDcgKzE2NDksNyBAQCBydDI4NjBfdHgoc3RydWN0IHJ0Mjg2MF9zb2Z0YyAq c2MsIHN0cnVjdCBtYnVmICptLCBzdHJ1Y3QgaWVlZTgwMjExX25vZGUgKm5pKQogCiAJCWlmIChy aW5nLT5xdWV1ZWQgKyBudHhkcyA+PSBSVDI4NjBfVFhfUklOR19DT1VOVCkgewogCQkJLyogdGhp cyBpcyBhIGhvcGVsZXNzIGNhc2UsIGRyb3AgdGhlIG1idWYhICovCi0JCQlidXNfZG1hbWFwX3Vu bG9hZChyaW5nLT5kYXRhX2RtYXQsIGRhdGEtPm1hcCk7CisJCQlidXNfZG1hbWFwX3VubG9hZChz Yy0+dHh3aV9kbWF0LCBkYXRhLT5tYXApOwogCQkJbV9mcmVlbShtKTsKIAkJCXJldHVybiBFTk9C VUZTOwogCQl9CkBAIC0xNjk3LDcgKzE2OTMsNyBAQCBydDI4NjBfdHgoc3RydWN0IHJ0Mjg2MF9z b2Z0YyAqc2MsIHN0cnVjdCBtYnVmICptLCBzdHJ1Y3QgaWVlZTgwMjExX25vZGUgKm5pKQogCXJp bmctPmRhdGFbcmluZy0+Y3VyXSA9IGRhdGE7CiAKIAlidXNfZG1hbWFwX3N5bmMoc2MtPnR4d2lf ZG1hdCwgc2MtPnR4d2lfbWFwLCBCVVNfRE1BU1lOQ19QUkVXUklURSk7Ci0JYnVzX2RtYW1hcF9z eW5jKHJpbmctPmRhdGFfZG1hdCwgZGF0YS0+bWFwLCBCVVNfRE1BU1lOQ19QUkVXUklURSk7CisJ YnVzX2RtYW1hcF9zeW5jKHNjLT50eHdpX2RtYXQsIGRhdGEtPm1hcCwgQlVTX0RNQVNZTkNfUFJF V1JJVEUpOwogCWJ1c19kbWFtYXBfc3luYyhyaW5nLT5kZXNjX2RtYXQsIHJpbmctPmRlc2NfbWFw LCBCVVNfRE1BU1lOQ19QUkVXUklURSk7CiAKIAlEUFJJTlRGTig0LCAoInNlbmRpbmcgZnJhbWUg cWlkPSVkIHdjaWQ9JWQgbnNlZ3M9JWQgcmlkeD0lZFxuIiwKQEAgLTE4NjMsNyArMTg1OSw3IEBA IHJ0Mjg2MF90eF9yYXcoc3RydWN0IHJ0Mjg2MF9zb2Z0YyAqc2MsIHN0cnVjdCBtYnVmICptLAog CW1lbWNweSh0eHdpICsgMSwgd2gsIGhkcmxlbik7CiAJbV9hZGoobSwgaGRybGVuKTsKIAotCWVy cm9yID0gYnVzX2RtYW1hcF9sb2FkX21idWZfc2cocmluZy0+ZGF0YV9kbWF0LCBkYXRhLT5tYXAs IG0sIHNlZ3MsCisJZXJyb3IgPSBidXNfZG1hbWFwX2xvYWRfbWJ1Zl9zZyhzYy0+dHh3aV9kbWF0 LCBkYXRhLT5tYXAsIG0sIHNlZ3MsCiAJICAgICZuc2VncywgMCk7CiAJaWYgKF9fcHJlZGljdF9m YWxzZShlcnJvciAhPSAwICYmIGVycm9yICE9IEVGQklHKSkgewogCQlkZXZpY2VfcHJpbnRmKHNj LT5zY19kZXYsICJjYW4ndCBtYXAgbWJ1ZiAoZXJyb3IgJWQpXG4iLApAQCAtMTg3Nyw3ICsxODcz LDcgQEAgcnQyODYwX3R4X3JhdyhzdHJ1Y3QgcnQyODYwX3NvZnRjICpzYywgc3RydWN0IG1idWYg Km0sCiAKIAkJaWYgKHJpbmctPnF1ZXVlZCArIG50eGRzID49IFJUMjg2MF9UWF9SSU5HX0NPVU5U KSB7CiAJCQkvKiBub3QgZW5vdWdoIGZyZWUgVFhEcywgZm9yY2UgbWJ1ZiBkZWZyYWcgKi8KLQkJ CWJ1c19kbWFtYXBfdW5sb2FkKHJpbmctPmRhdGFfZG1hdCwgZGF0YS0+bWFwKTsKKwkJCWJ1c19k bWFtYXBfdW5sb2FkKHNjLT50eHdpX2RtYXQsIGRhdGEtPm1hcCk7CiAJCQllcnJvciA9IEVGQklH OwogCQl9CiAJfQpAQCAtMTg5MSw3ICsxODg3LDcgQEAgcnQyODYwX3R4X3JhdyhzdHJ1Y3QgcnQy ODYwX3NvZnRjICpzYywgc3RydWN0IG1idWYgKm0sCiAJCX0KIAkJbSA9IG0xOwogCi0JCWVycm9y ID0gYnVzX2RtYW1hcF9sb2FkX21idWZfc2cocmluZy0+ZGF0YV9kbWF0LCBkYXRhLT5tYXAsIG0s CisJCWVycm9yID0gYnVzX2RtYW1hcF9sb2FkX21idWZfc2coc2MtPnR4d2lfZG1hdCwgZGF0YS0+ bWFwLCBtLAogCQkgICAgc2VncywgJm5zZWdzLCAwKTsKIAkJaWYgKF9fcHJlZGljdF9mYWxzZShl cnJvciAhPSAwKSkgewogCQkJZGV2aWNlX3ByaW50ZihzYy0+c2NfZGV2LCAiY2FuJ3QgbWFwIG1i dWYgKGVycm9yICVkKVxuIiwKQEAgLTE5MDUsNyArMTkwMSw3IEBAIHJ0Mjg2MF90eF9yYXcoc3Ry dWN0IHJ0Mjg2MF9zb2Z0YyAqc2MsIHN0cnVjdCBtYnVmICptLAogCiAJCWlmIChyaW5nLT5xdWV1 ZWQgKyBudHhkcyA+PSBSVDI4NjBfVFhfUklOR19DT1VOVCkgewogCQkJLyogdGhpcyBpcyBhIGhv cGVsZXNzIGNhc2UsIGRyb3AgdGhlIG1idWYhICovCi0JCQlidXNfZG1hbWFwX3VubG9hZChyaW5n LT5kYXRhX2RtYXQsIGRhdGEtPm1hcCk7CisJCQlidXNfZG1hbWFwX3VubG9hZChzYy0+dHh3aV9k bWF0LCBkYXRhLT5tYXApOwogCQkJbV9mcmVlbShtKTsKIAkJCXJldHVybiBFTk9CVUZTOwogCQl9 CkBAIC0xOTQ5LDcgKzE5NDUsNyBAQCBydDI4NjBfdHhfcmF3KHN0cnVjdCBydDI4NjBfc29mdGMg KnNjLCBzdHJ1Y3QgbWJ1ZiAqbSwKIAlyaW5nLT5kYXRhW3JpbmctPmN1cl0gPSBkYXRhOwogCiAJ YnVzX2RtYW1hcF9zeW5jKHNjLT50eHdpX2RtYXQsIHNjLT50eHdpX21hcCwgQlVTX0RNQVNZTkNf UFJFV1JJVEUpOwotCWJ1c19kbWFtYXBfc3luYyhyaW5nLT5kYXRhX2RtYXQsIGRhdGEtPm1hcCwg QlVTX0RNQVNZTkNfUFJFV1JJVEUpOworCWJ1c19kbWFtYXBfc3luYyhzYy0+dHh3aV9kbWF0LCBk YXRhLT5tYXAsIEJVU19ETUFTWU5DX1BSRVdSSVRFKTsKIAlidXNfZG1hbWFwX3N5bmMocmluZy0+ ZGVzY19kbWF0LCByaW5nLT5kZXNjX21hcCwgQlVTX0RNQVNZTkNfUFJFV1JJVEUpOwogCiAJRFBS SU5URk4oNCwgKCJzZW5kaW5nIGZyYW1lIHFpZD0lZCB3Y2lkPSVkIG5zZWdzPSVkIHJpZHg9JWRc biIsCmRpZmYgLS1naXQgc3lzL2Rldi9yYWwvcnQyODYwdmFyLmggc3lzL2Rldi9yYWwvcnQyODYw dmFyLmgKaW5kZXggZmZkMWExYS4uMDZiOTVlNSAxMDA2NDQKLS0tIHN5cy9kZXYvcmFsL3J0Mjg2 MHZhci5oCisrKyBzeXMvZGV2L3JhbC9ydDI4NjB2YXIuaApAQCAtNzUsNyArNzUsNiBAQCBzdHJ1 Y3QgcnQyODYwX3R4X3JpbmcgewogCWJ1c19hZGRyX3QJCXBhZGRyOwogCWJ1c19kbWFfdGFnX3QJ CWRlc2NfZG1hdDsKIAlidXNfZG1hbWFwX3QJCWRlc2NfbWFwOwotCWJ1c19kbWFfdGFnX3QJCWRh dGFfZG1hdDsKIAlidXNfZG1hX3NlZ21lbnRfdAlzZWc7CiAJc3RydWN0IHJ0Mjg2MF90eF9kYXRh CSpkYXRhW1JUMjg2MF9UWF9SSU5HX0NPVU5UXTsKIAlpbnQJCQljdXI7Cg== --f46d0401236fea2fa804bf897ab6--