From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Deucher Subject: [PATCH 02/24] radeon/audio: defined initial audio interface that gets initialized via detect() call Date: Tue, 13 Jan 2015 12:46:31 -0500 Message-ID: <1421171213-23977-3-git-send-email-alexander.deucher@amd.com> References: <1421171213-23977-1-git-send-email-alexander.deucher@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-qc0-f182.google.com (mail-qc0-f182.google.com [209.85.216.182]) by gabe.freedesktop.org (Postfix) with ESMTP id 79E8C6E646 for ; Tue, 13 Jan 2015 09:47:04 -0800 (PST) Received: by mail-qc0-f182.google.com with SMTP id r5so3375893qcx.13 for ; Tue, 13 Jan 2015 09:47:02 -0800 (PST) In-Reply-To: <1421171213-23977-1-git-send-email-alexander.deucher@amd.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Alex Deucher , slava.grigorev@amd.com List-Id: dri-devel@lists.freedesktop.org RnJvbTogU2xhdmEgR3JpZ29yZXYgPHNsYXZhLmdyaWdvcmV2QGFtZC5jb20+CgpTaWduZWQtb2Zm LWJ5OiBTbGF2YSBHcmlnb3JldiA8c2xhdmEuZ3JpZ29yZXZAYW1kLmNvbT4KU2lnbmVkLW9mZi1i eTogQWxleCBEZXVjaGVyIDxhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9yYWRlb24vZGNlNl9hZm10LmMgICAgICAgICB8ICA5ICstLQogZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yYWRlb24uaCAgICAgICAgICAgIHwgIDMgKwogZHJpdmVycy9ncHUvZHJtL3Jh ZGVvbi9yYWRlb25fYXVkaW8uYyAgICAgIHwgOTYgKysrKysrKysrKysrKysrKysrKysrKysrKysr KystCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5oICAgICAgfCAyNiArKysr KysrKwogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fY29ubmVjdG9ycy5jIHwgIDggKysr CiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9tb2RlLmggICAgICAgfCAgMSArCiA2IGZp bGVzIGNoYW5nZWQsIDEzNiBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vZGNlNl9hZm10LmMgYi9kcml2ZXJzL2dwdS9kcm0v cmFkZW9uL2RjZTZfYWZtdC5jCmluZGV4IGE5N2ZiMjIuLjgyMWY1M2MgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9yYWRlb24vZGNlNl9hZm10LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Jh ZGVvbi9kY2U2X2FmbXQuYwpAQCAtMjMsOSArMjMsMTAgQEAKICNpbmNsdWRlIDxsaW51eC9oZG1p Lmg+CiAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KICNpbmNsdWRlICJyYWRlb24uaCIKKyNpbmNsdWRl ICJyYWRlb25fYXVkaW8uaCIKICNpbmNsdWRlICJzaWQuaCIKIAotc3RhdGljIHUzMiBkY2U2X2Vu ZHBvaW50X3JyZWcoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsCit1MzIgZGNlNl9lbmRwb2lu dF9ycmVnKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAogCQkJICAgICAgdTMyIGJsb2NrX29m ZnNldCwgdTMyIHJlZykKIHsKIAl1bnNpZ25lZCBsb25nIGZsYWdzOwpAQCAtMzksNyArNDAsNyBA QCBzdGF0aWMgdTMyIGRjZTZfZW5kcG9pbnRfcnJlZyhzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRl diwKIAlyZXR1cm4gcjsKIH0KIAotc3RhdGljIHZvaWQgZGNlNl9lbmRwb2ludF93cmVnKHN0cnVj dCByYWRlb25fZGV2aWNlICpyZGV2LAordm9pZCBkY2U2X2VuZHBvaW50X3dyZWcoc3RydWN0IHJh ZGVvbl9kZXZpY2UgKnJkZXYsCiAJCQkgICAgICAgdTMyIGJsb2NrX29mZnNldCwgdTMyIHJlZywg dTMyIHYpCiB7CiAJdW5zaWduZWQgbG9uZyBmbGFnczsKQEAgLTU0LDEwICs1NSw2IEBAIHN0YXRp YyB2b2lkIGRjZTZfZW5kcG9pbnRfd3JlZyhzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwKIAlz cGluX3VubG9ja19pcnFyZXN0b3JlKCZyZGV2LT5lbmRfaWR4X2xvY2ssIGZsYWdzKTsKIH0KIAot I2RlZmluZSBSUkVHMzJfRU5EUE9JTlQoYmxvY2ssIHJlZykgZGNlNl9lbmRwb2ludF9ycmVnKHJk ZXYsIChibG9jayksIChyZWcpKQotI2RlZmluZSBXUkVHMzJfRU5EUE9JTlQoYmxvY2ssIHJlZywg dikgZGNlNl9lbmRwb2ludF93cmVnKHJkZXYsIChibG9jayksIChyZWcpLCAodikpCi0KLQogc3Rh dGljIHZvaWQgZGNlNl9hZm10X2dldF9jb25uZWN0ZWRfcGlucyhzdHJ1Y3QgcmFkZW9uX2Rldmlj ZSAqcmRldikKIHsKIAlpbnQgaTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24v cmFkZW9uLmggYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oCmluZGV4IDQxOTVlNmMu LmQxNWUzYzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmgKKysr IGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaApAQCAtMTc1Nyw2ICsxNzU3LDkgQEAg c3RydWN0IHI2MDBfYXVkaW8gewogCWJvb2wgZW5hYmxlZDsKIAlzdHJ1Y3QgcjYwMF9hdWRpb19w aW4gcGluW1JBREVPTl9NQVhfQUZNVF9CTE9DS1NdOwogCWludCBudW1fcGluczsKKwlzdHJ1Y3Qg cmFkZW9uX2F1ZGlvX2Z1bmNzICpoZG1pX2Z1bmNzOworCXN0cnVjdCByYWRlb25fYXVkaW9fZnVu Y3MgKmRwX2Z1bmNzOworCXN0cnVjdCByYWRlb25fYXVkaW9fYmFzaWNfZnVuY3MgKmZ1bmNzOwog fTsKIAogLyoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2F1ZGlv LmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5jCmluZGV4IGNjODM1ZTIu LjM2MTc0YjYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2F1ZGlv LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fYXVkaW8uYwpAQCAtMjMsMTIg KzIzLDE4IEBACiAgKi8KIAogI2luY2x1ZGUgPGRybS9kcm1QLmg+CisjaW5jbHVkZSA8ZHJtL2Ry bV9jcnRjLmg+CiAjaW5jbHVkZSAicmFkZW9uLmgiCisjaW5jbHVkZSAiYXRvbS5oIgorI2luY2x1 ZGUgInJhZGVvbl9hdWRpby5oIgogCiB2b2lkIHI2MDBfYXVkaW9fZW5hYmxlKHN0cnVjdCByYWRl b25fZGV2aWNlICpyZGV2LCBzdHJ1Y3QgcjYwMF9hdWRpb19waW4gKnBpbiwKIAkJdTggZW5hYmxl X21hc2spOwogdm9pZCBkY2U2X2F1ZGlvX2VuYWJsZShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRl diwgc3RydWN0IHI2MDBfYXVkaW9fcGluICpwaW4sCiAJCXU4IGVuYWJsZV9tYXNrKTsKK3UzMiBk Y2U2X2VuZHBvaW50X3JyZWcoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsIHUzMiBvZmZzZXQs IHUzMiByZWcpOwordm9pZCBkY2U2X2VuZHBvaW50X3dyZWcoc3RydWN0IHJhZGVvbl9kZXZpY2Ug KnJkZXYsCisJCXUzMiBvZmZzZXQsIHUzMiByZWcsIHUzMiB2KTsKIAogc3RhdGljIGNvbnN0IHUz MiBwaW5fb2Zmc2V0c1s3XSA9CiB7CkBAIC00MSw2ICs0Nyw0MyBAQCBzdGF0aWMgY29uc3QgdTMy IHBpbl9vZmZzZXRzWzddID0KIAkoMHg1ZTkwIC0gMHg1ZTAwKSwKIH07CiAKK3N0YXRpYyB1MzIg cmFkZW9uX2F1ZGlvX3JyZWcoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYsIHUzMiBvZmZzZXQs IHUzMiByZWcpCit7CisJcmV0dXJuIFJSRUczMihyZWcpOworfQorCitzdGF0aWMgdm9pZCByYWRl b25fYXVkaW9fd3JlZyhzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwgdTMyIG9mZnNldCwKKwkJ dTMyIHJlZywgdTMyIHYpCit7CisJV1JFRzMyKHJlZywgdik7Cit9CisKK3N0YXRpYyBzdHJ1Y3Qg cmFkZW9uX2F1ZGlvX2Jhc2ljX2Z1bmNzIGRjZTMyX2Z1bmNzID0geworCS5lbmRwb2ludF9ycmVn ID0gcmFkZW9uX2F1ZGlvX3JyZWcsCisJLmVuZHBvaW50X3dyZWcgPSByYWRlb25fYXVkaW9fd3Jl ZywKK307CisKK3N0YXRpYyBzdHJ1Y3QgcmFkZW9uX2F1ZGlvX2Jhc2ljX2Z1bmNzIGRjZTRfZnVu Y3MgPSB7CisJLmVuZHBvaW50X3JyZWcgPSByYWRlb25fYXVkaW9fcnJlZywKKwkuZW5kcG9pbnRf d3JlZyA9IHJhZGVvbl9hdWRpb193cmVnLAorfTsKKworc3RhdGljIHN0cnVjdCByYWRlb25fYXVk aW9fYmFzaWNfZnVuY3MgZGNlNl9mdW5jcyA9IHsKKwkuZW5kcG9pbnRfcnJlZyA9IGRjZTZfZW5k cG9pbnRfcnJlZywKKwkuZW5kcG9pbnRfd3JlZyA9IGRjZTZfZW5kcG9pbnRfd3JlZywKK307CisK K3N0YXRpYyB2b2lkIHJhZGVvbl9hdWRpb19pbnRlcmZhY2VfaW5pdChzdHJ1Y3QgcmFkZW9uX2Rl dmljZSAqcmRldikKK3sKKwlpZiAoQVNJQ19JU19EQ0U2KHJkZXYpKSB7CisJCXJkZXYtPmF1ZGlv LmZ1bmNzID0gJmRjZTZfZnVuY3M7CisJfSBlbHNlIGlmIChBU0lDX0lTX0RDRTQocmRldikpIHsK KwkJcmRldi0+YXVkaW8uZnVuY3MgPSAmZGNlNF9mdW5jczsKKwl9IGVsc2UgeworCQlyZGV2LT5h dWRpby5mdW5jcyA9ICZkY2UzMl9mdW5jczsKKwl9Cit9CisKIHN0YXRpYyBpbnQgcmFkZW9uX2F1 ZGlvX2NoaXBzZXRfc3VwcG9ydGVkKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQogewogCXJl dHVybiBBU0lDX0lTX0RDRTIocmRldikgJiYgIUFTSUNfSVNfTk9EQ0UocmRldik7CkBAIC03OSwx MiArMTIyLDYzIEBAIGludCByYWRlb25fYXVkaW9faW5pdChzdHJ1Y3QgcmFkZW9uX2RldmljZSAq cmRldikKIAkJcmRldi0+YXVkaW8ucGluW2ldLmNvbm5lY3RlZCA9IGZhbHNlOwogCQlyZGV2LT5h dWRpby5waW5baV0ub2Zmc2V0ID0gcGluX29mZnNldHNbaV07CiAJCXJkZXYtPmF1ZGlvLnBpbltp XS5pZCA9IGk7Ci0JCS8qIGRpc2FibGUgYXVkaW8uICBpdCB3aWxsIGJlIHNldCB1cCBsYXRlciAq LworCX0KKworCXJhZGVvbl9hdWRpb19pbnRlcmZhY2VfaW5pdChyZGV2KTsKKworCS8qIGRpc2Fi bGUgYXVkaW8uICBpdCB3aWxsIGJlIHNldCB1cCBsYXRlciAqLworCWZvciAoaSA9IDA7IGkgPCBy ZGV2LT5hdWRpby5udW1fcGluczsgaSsrKQogCQlpZiAoQVNJQ19JU19EQ0U2KHJkZXYpKQogCQkJ ZGNlNl9hdWRpb19lbmFibGUocmRldiwgJnJkZXYtPmF1ZGlvLnBpbltpXSwgZmFsc2UpOwogCQll bHNlCiAJCQlyNjAwX2F1ZGlvX2VuYWJsZShyZGV2LCAmcmRldi0+YXVkaW8ucGluW2ldLCBmYWxz ZSk7CisKKwlyZXR1cm4gMDsKK30KKwordm9pZCByYWRlb25fYXVkaW9fZGV0ZWN0KHN0cnVjdCBk cm1fY29ubmVjdG9yICpjb25uZWN0b3IsCisJZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBzdGF0 dXMpCit7CisJaWYgKCFjb25uZWN0b3IgfHwgIWNvbm5lY3Rvci0+ZW5jb2RlcikKKwkJcmV0dXJu OworCisJaWYgKHN0YXR1cyA9PSBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZCkgeworCQlpbnQg c2lua190eXBlOworCQlzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiA9IGNvbm5lY3Rvci0+ZW5j b2Rlci0+ZGV2LT5kZXZfcHJpdmF0ZTsKKwkJc3RydWN0IHJhZGVvbl9jb25uZWN0b3IgKnJhZGVv bl9jb25uZWN0b3I7CisJCXN0cnVjdCByYWRlb25fZW5jb2RlciAqcmFkZW9uX2VuY29kZXIgPQor CQkJdG9fcmFkZW9uX2VuY29kZXIoY29ubmVjdG9yLT5lbmNvZGVyKTsKKworCQlpZiAoIWRybV9k ZXRlY3RfbW9uaXRvcl9hdWRpbyhyYWRlb25fY29ubmVjdG9yX2VkaWQoY29ubmVjdG9yKSkpIHsK KwkJCXJhZGVvbl9lbmNvZGVyLT5hdWRpbyA9IDA7CisJCQlyZXR1cm47CisJCX0KKworCQlyYWRl b25fY29ubmVjdG9yID0gdG9fcmFkZW9uX2Nvbm5lY3Rvcihjb25uZWN0b3IpOworCQlzaW5rX3R5 cGUgPSByYWRlb25fZHBfZ2V0c2lua3R5cGUocmFkZW9uX2Nvbm5lY3Rvcik7CisKKwkJaWYgKGNv bm5lY3Rvci0+Y29ubmVjdG9yX3R5cGUgPT0gRFJNX01PREVfQ09OTkVDVE9SX0Rpc3BsYXlQb3J0 ICYmCisJCQlzaW5rX3R5cGUgPT0gQ09OTkVDVE9SX09CSkVDVF9JRF9ESVNQTEFZUE9SVCkKKwkJ CXJhZGVvbl9lbmNvZGVyLT5hdWRpbyA9IHJkZXYtPmF1ZGlvLmRwX2Z1bmNzOworCQllbHNlCisJ CQlyYWRlb25fZW5jb2Rlci0+YXVkaW8gPSByZGV2LT5hdWRpby5oZG1pX2Z1bmNzOworCQkvKiBU T0RPOiBzZXQgdXAgdGhlIHNhZHMsIGV0Yy4gYW5kIHNldCB0aGUgYXVkaW8gZW5hYmxlX21hc2sg Ki8KKwl9IGVsc2UgeworCQkvKiBUT0RPOiByZXNldCB0aGUgYXVkaW8gZW5hYmxlX21hc2sgKi8K IAl9Cit9CisKK3UzMiByYWRlb25fYXVkaW9fZW5kcG9pbnRfcnJlZyhzdHJ1Y3QgcmFkZW9uX2Rl dmljZSAqcmRldiwgdTMyIG9mZnNldCwgdTMyIHJlZykKK3sKKwlpZiAocmRldi0+YXVkaW8uZnVu Y3MtPmVuZHBvaW50X3JyZWcpCisJCXJldHVybiByZGV2LT5hdWRpby5mdW5jcy0+ZW5kcG9pbnRf cnJlZyhyZGV2LCBvZmZzZXQsIHJlZyk7CiAKIAlyZXR1cm4gMDsKIH0KKwordm9pZCByYWRlb25f YXVkaW9fZW5kcG9pbnRfd3JlZyhzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwgdTMyIG9mZnNl dCwKKwl1MzIgcmVnLCB1MzIgdikKK3sKKwlpZiAocmRldi0+YXVkaW8uZnVuY3MtPmVuZHBvaW50 X3dyZWcpCisJCXJkZXYtPmF1ZGlvLmZ1bmNzLT5lbmRwb2ludF93cmVnKHJkZXYsIG9mZnNldCwg cmVnLCB2KTsKK30KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2F1 ZGlvLmggYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5oCmluZGV4IDg0NTVm YmQuLmU0YjBiNjQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2F1 ZGlvLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fYXVkaW8uaApAQCAtMjEs OSArMjEsMzUgQEAKICAqCiAgKiBBdXRob3JzOiBTbGF2YSBHcmlnb3JldiA8c2xhdmEuZ3JpZ29y ZXZAYW1kLmNvbT4KICAqLworCiAjaWZuZGVmIF9fUkFERU9OX0FVRElPX0hfXwogI2RlZmluZSBf X1JBREVPTl9BVURJT19IX18KIAorI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CisKKyNkZWZpbmUg UlJFRzMyX0VORFBPSU5UKGJsb2NrLCByZWcpCQlcCisJcmFkZW9uX2F1ZGlvX2VuZHBvaW50X3Jy ZWcocmRldiwgKGJsb2NrKSwgKHJlZykpCisjZGVmaW5lIFdSRUczMl9FTkRQT0lOVChibG9jaywg cmVnLCB2KQlcCisJcmFkZW9uX2F1ZGlvX2VuZHBvaW50X3dyZWcocmRldiwgKGJsb2NrKSwgKHJl ZyksICh2KSkKKworc3RydWN0IHJhZGVvbl9hdWRpb19iYXNpY19mdW5jcworeworCXUzMiAgKCpl bmRwb2ludF9ycmVnKShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwgdTMyIG9mZnNldCwgdTMy IHJlZyk7CisJdm9pZCAoKmVuZHBvaW50X3dyZWcpKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2 LAorCQl1MzIgb2Zmc2V0LCB1MzIgcmVnLCB1MzIgdik7Cit9OworCitzdHJ1Y3QgcmFkZW9uX2F1 ZGlvX2Z1bmNzCit7CisJLyogVE9ETzogYWRkIG1vZGUgZGVwZW5kZWQgYXVkaW8gaW50ZXJmYWNl ICovCit9OworCiBpbnQgcmFkZW9uX2F1ZGlvX2luaXQoc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJk ZXYpOwordm9pZCByYWRlb25fYXVkaW9fZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IsCisJZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBzdGF0dXMpOwordTMyIHJhZGVvbl9h dWRpb19lbmRwb2ludF9ycmVnKHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2LAorCXUzMiBvZmZz ZXQsIHUzMiByZWcpOwordm9pZCByYWRlb25fYXVkaW9fZW5kcG9pbnRfd3JlZyhzdHJ1Y3QgcmFk ZW9uX2RldmljZSAqcmRldiwKKwl1MzIgb2Zmc2V0LAl1MzIgcmVnLCB1MzIgdik7CiAKICNlbmRp ZgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fY29ubmVjdG9ycy5j IGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fY29ubmVjdG9ycy5jCmluZGV4IDI2YmFh OWMuLjI3ZGVmNjcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2Nv bm5lY3RvcnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9jb25uZWN0b3Jz LmMKQEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlIDxkcm0vZHJtX2ZiX2hlbHBlci5oPgogI2lu Y2x1ZGUgPGRybS9yYWRlb25fZHJtLmg+CiAjaW5jbHVkZSAicmFkZW9uLmgiCisjaW5jbHVkZSAi cmFkZW9uX2F1ZGlvLmgiCiAjaW5jbHVkZSAiYXRvbS5oIgogCiAjaW5jbHVkZSA8bGludXgvcG1f cnVudGltZS5oPgpAQCAtMTMzMiw2ICsxMzMzLDkgQEAgb3V0OgogCS8qIHVwZGF0ZWQgaW4gZ2V0 IG1vZGVzIGFzIHdlbGwgc2luY2Ugd2UgbmVlZCB0byBrbm93IGlmIGl0J3MgYW5hbG9nIG9yIGRp Z2l0YWwgKi8KIAlyYWRlb25fY29ubmVjdG9yX3VwZGF0ZV9zY3JhdGNoX3JlZ3MoY29ubmVjdG9y LCByZXQpOwogCisJaWYgKHJhZGVvbl9hdWRpbyAhPSAwKQorCQlyYWRlb25fYXVkaW9fZGV0ZWN0 KGNvbm5lY3RvciwgcmV0KTsKKwogZXhpdDoKIAlwbV9ydW50aW1lX21hcmtfbGFzdF9idXN5KGNv bm5lY3Rvci0+ZGV2LT5kZXYpOwogCXBtX3J1bnRpbWVfcHV0X2F1dG9zdXNwZW5kKGNvbm5lY3Rv ci0+ZGV2LT5kZXYpOwpAQCAtMTY1NCw2ICsxNjU4LDEwIEBAIHJhZGVvbl9kcF9kZXRlY3Qoc3Ry dWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgYm9vbCBmb3JjZSkKIAl9CiAKIAlyYWRlb25f Y29ubmVjdG9yX3VwZGF0ZV9zY3JhdGNoX3JlZ3MoY29ubmVjdG9yLCByZXQpOworCisJaWYgKHJh ZGVvbl9hdWRpbyAhPSAwKQorCQlyYWRlb25fYXVkaW9fZGV0ZWN0KGNvbm5lY3RvciwgcmV0KTsK Kwogb3V0OgogCXBtX3J1bnRpbWVfbWFya19sYXN0X2J1c3koY29ubmVjdG9yLT5kZXYtPmRldik7 CiAJcG1fcnVudGltZV9wdXRfYXV0b3N1c3BlbmQoY29ubmVjdG9yLT5kZXYtPmRldik7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9tb2RlLmggYi9kcml2ZXJzL2dw dS9kcm0vcmFkZW9uL3JhZGVvbl9tb2RlLmgKaW5kZXggMzkwZGI4OS4uYzBkZWFlYyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbW9kZS5oCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9yYWRlb24vcmFkZW9uX21vZGUuaApAQCAtNDQ5LDYgKzQ0OSw3IEBAIHN0cnVjdCBy YWRlb25fZW5jb2RlciB7CiAJaW50IGF1ZGlvX3BvbGxpbmdfYWN0aXZlOwogCWJvb2wgaXNfZXh0 X2VuY29kZXI7CiAJdTE2IGNhcHM7CisJc3RydWN0IHJhZGVvbl9hdWRpb19mdW5jcyAqYXVkaW87 CiB9OwogCiBzdHJ1Y3QgcmFkZW9uX2Nvbm5lY3Rvcl9hdG9tX2RpZyB7Ci0tIAoxLjguMy4xCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwg bWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=