From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: [PATCH 1/2] drm/radeon: Add HD-audio component notifier support Date: Mon, 22 Jul 2019 16:38:14 +0200 Message-ID: <20190722143815.7339-2-tiwai@suse.de> References: <20190722143815.7339-1-tiwai@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id A34278980C for ; Mon, 22 Jul 2019 14:38:26 +0000 (UTC) In-Reply-To: <20190722143815.7339-1-tiwai@suse.de> 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: Maxime Ripard , Ben Skeggs , Alex Deucher , Sean Paul , =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org VGhpcyBwYXRjaCBhZGRzIHRoZSBzdXBwb3J0IGZvciB0aGUgbm90aWZpY2F0aW9uIG9mIEhELWF1 ZGlvIGhvdHBsdWcKdmlhIHRoZSBhbHJlYWR5IGV4aXN0aW5nIGRybV9hdWRpb19jb21wb25lbnQg ZnJhbWV3b3JrIHRvIHJhZGVvbgpkcml2ZXIuICBUaGlzIGFsbG93cyB1cyBtb3JlIHJlbGlhYmxl IGhvdHBsdWcgbm90aWZpY2F0aW9uIGFuZCBFTEQKdHJhbnNmZXIgd2l0aG91dCBhY2Nlc3Npbmcg SEQtYXVkaW8gYnVzOyBpdCdzIG1vcmUgZWZmaWNpZW50LCBhbmQgbW9yZQppbXBvcnRhbnRseSwg aXQgd29ya3Mgd2l0aG91dCB3YWtpbmcgdXAgdGhlIHJ1bnRpbWUgUE0uCgpUaGUgaW1wbGVtZW50 YXRpb24gaXMgcmF0aGVyIHNpbXBsaXN0aWM6IHJhZGVvbiBkcml2ZXIgcHJvdmlkZXMgdGhlCmdl dF9lbGQgb3BzIGZvciBIRC1hdWRpbywgYW5kIGl0IG5vdGlmaWVzIHRoZSBhdWRpbyBob3RwbHVn IHZpYQpwaW5fZWxkX25vdGlmeSBjYWxsYmFjayB1cG9uIGVhY2ggcmFkZW9uX2F1ZGlvX2VuYWJs ZSgpIGNhbGwuClRoZSBwaW4tPmlkIGlzIHJlZmVycmVkIGFzIHRoZSBwb3J0IG51bWJlciBwYXNz ZWQgdG8gdGhlIG5vdGlmaWVyCmNhbGxiYWNrLCBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgY29ubmVj dG9yIGlzIGxvb2tlZCB0aHJvdWdoIHRoZQplbmNvZGVyIGxpc3QgaW4gdGhlIGdldF9lbGQgY2Fs bGJhY2sgaW4gdHVybi4KClRoZSBiaW5kIGFuZCB1bmJpbmQgY2FsbGJhY2tzIGhhbmRsZSB0aGUg ZGV2aWNlLWxpbmsgc28gdGhhdCBpdAphc3N1cmVzIHRoZSBQTSBjYWxsIG9yZGVyLgoKQWNrZWQt Ynk6IEppbSBRdSA8SmltLlF1QGFtZC5jb20+ClNpZ25lZC1vZmYtYnk6IFRha2FzaGkgSXdhaSA8 dGl3YWlAc3VzZS5kZT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vS2NvbmZpZyAgICAgICAgICAgICAg IHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaCAgICAgICB8ICAzICsrCiBk cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5jIHwgOTIgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgOTYgaW5zZXJ0aW9ucygrKQoK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9LY29uZmlnIGIvZHJpdmVycy9ncHUvZHJtL0tj b25maWcKaW5kZXggMWQ4MDIyMjU4N2FkLi44YjQ0Y2M0NTg4MzAgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9LY29uZmlnCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9LY29uZmlnCkBAIC0yMDks NiArMjA5LDcgQEAgY29uZmlnIERSTV9SQURFT04KIAlzZWxlY3QgSFdNT04KIAlzZWxlY3QgQkFD S0xJR0hUX0NMQVNTX0RFVklDRQogCXNlbGVjdCBJTlRFUlZBTF9UUkVFCisJc2VsZWN0IFNORF9I REFfQ09NUE9ORU5UIGlmIFNORF9IREFfQ09SRQogCWhlbHAKIAkgIENob29zZSB0aGlzIG9wdGlv biBpZiB5b3UgaGF2ZSBhbiBBVEkgUmFkZW9uIGdyYXBoaWNzIGNhcmQuICBUaGVyZQogCSAgYXJl IGJvdGggUENJIGFuZCBBR1AgdmVyc2lvbnMuICBZb3UgZG9uJ3QgbmVlZCB0byBjaG9vc2UgdGhp cyB0bwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaCBiL2RyaXZl cnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmgKaW5kZXggMzI4MDhlNTBiZTEyLi4yOTczMjg0Yjc5 NjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmgKKysrIGIvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaApAQCAtNzUsNiArNzUsNyBAQAogI2luY2x1ZGUg PGRybS90dG0vdHRtX2V4ZWNidWZfdXRpbC5oPgogCiAjaW5jbHVkZSA8ZHJtL2RybV9nZW0uaD4K KyNpbmNsdWRlIDxkcm0vZHJtX2F1ZGlvX2NvbXBvbmVudC5oPgogCiAjaW5jbHVkZSAicmFkZW9u X2ZhbWlseS5oIgogI2luY2x1ZGUgInJhZGVvbl9tb2RlLmgiCkBAIC0xNzYxLDYgKzE3NjIsOCBA QCBzdHJ1Y3QgcjYwMF9hdWRpbyB7CiAJc3RydWN0IHJhZGVvbl9hdWRpb19mdW5jcyAqaGRtaV9m dW5jczsKIAlzdHJ1Y3QgcmFkZW9uX2F1ZGlvX2Z1bmNzICpkcF9mdW5jczsKIAlzdHJ1Y3QgcmFk ZW9uX2F1ZGlvX2Jhc2ljX2Z1bmNzICpmdW5jczsKKwlzdHJ1Y3QgZHJtX2F1ZGlvX2NvbXBvbmVu dCAqY29tcG9uZW50OworCWJvb2wgY29tcG9uZW50X3JlZ2lzdGVyZWQ7CiB9OwogCiAvKgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fYXVkaW8uYyBiL2RyaXZlcnMv Z3B1L2RybS9yYWRlb24vcmFkZW9uX2F1ZGlvLmMKaW5kZXggYjlhZWE1Nzc2ZDNkLi45NzY1MDJl MzFjNDMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2F1ZGlvLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fYXVkaW8uYwpAQCAtMjMsNiArMjMs NyBAQAogICovCiAKICNpbmNsdWRlIDxsaW51eC9nY2QuaD4KKyNpbmNsdWRlIDxsaW51eC9jb21w b25lbnQuaD4KIAogI2luY2x1ZGUgPGRybS9kcm1fY3J0Yy5oPgogI2luY2x1ZGUgInJhZGVvbi5o IgpAQCAtMjQyLDYgKzI0MywxNCBAQCBzdGF0aWMgc3RydWN0IHJhZGVvbl9hdWRpb19mdW5jcyBk Y2U2X2RwX2Z1bmNzID0gewogCS5kcG1zID0gZXZlcmdyZWVuX2RwX2VuYWJsZSwKIH07CiAKK3N0 YXRpYyB2b2lkIHJhZGVvbl9hdWRpb19jb21wb25lbnRfbm90aWZ5KHN0cnVjdCBkcm1fYXVkaW9f Y29tcG9uZW50ICphY29tcCwKKwkJCQkJICBpbnQgcG9ydCkKK3sKKwlpZiAoYWNvbXAgJiYgYWNv bXAtPmF1ZGlvX29wcyAmJiBhY29tcC0+YXVkaW9fb3BzLT5waW5fZWxkX25vdGlmeSkKKwkJYWNv bXAtPmF1ZGlvX29wcy0+cGluX2VsZF9ub3RpZnkoYWNvbXAtPmF1ZGlvX29wcy0+YXVkaW9fcHRy LAorCQkJCQkJIHBvcnQsIC0xKTsKK30KKwogc3RhdGljIHZvaWQgcmFkZW9uX2F1ZGlvX2VuYWJs ZShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwKIAkJCQlzdHJ1Y3QgcjYwMF9hdWRpb19waW4g KnBpbiwgdTggZW5hYmxlX21hc2spCiB7CkBAIC0yNjksNiArMjc4LDggQEAgc3RhdGljIHZvaWQg cmFkZW9uX2F1ZGlvX2VuYWJsZShzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiwKIAogCWlmIChy ZGV2LT5hdWRpby5mdW5jcy0+ZW5hYmxlKQogCQlyZGV2LT5hdWRpby5mdW5jcy0+ZW5hYmxlKHJk ZXYsIHBpbiwgZW5hYmxlX21hc2spOworCisJcmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9ub3RpZnko cmRldi0+YXVkaW8uY29tcG9uZW50LCBwaW4tPmlkKTsKIH0KIAogc3RhdGljIHZvaWQgcmFkZW9u X2F1ZGlvX2ludGVyZmFjZV9pbml0KHN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2KQpAQCAtMjky LDYgKzMwMyw3OSBAQCBzdGF0aWMgdm9pZCByYWRlb25fYXVkaW9faW50ZXJmYWNlX2luaXQoc3Ry dWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYpCiAJfQogfQogCitzdGF0aWMgaW50IHJhZGVvbl9hdWRp b19jb21wb25lbnRfZ2V0X2VsZChzdHJ1Y3QgZGV2aWNlICprZGV2LCBpbnQgcG9ydCwKKwkJCQkJ ICBpbnQgcGlwZSwgYm9vbCAqZW5hYmxlZCwKKwkJCQkJICB1bnNpZ25lZCBjaGFyICpidWYsIGlu dCBtYXhfYnl0ZXMpCit7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGRldl9nZXRfZHJ2ZGF0 YShrZGV2KTsKKwlzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXI7CisJc3RydWN0IHJhZGVvbl9l bmNvZGVyICpyYWRlb25fZW5jb2RlcjsKKwlzdHJ1Y3QgcmFkZW9uX2VuY29kZXJfYXRvbV9kaWcg KmRpZzsKKwlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOworCWludCByZXQgPSAwOwor CisJKmVuYWJsZWQgPSBmYWxzZTsKKwlsaXN0X2Zvcl9lYWNoX2VudHJ5KGVuY29kZXIsICZkZXYt Pm1vZGVfY29uZmlnLmVuY29kZXJfbGlzdCwgaGVhZCkgeworCQlpZiAoIXJhZGVvbl9lbmNvZGVy X2lzX2RpZ2l0YWwoZW5jb2RlcikpCisJCQljb250aW51ZTsKKwkJcmFkZW9uX2VuY29kZXIgPSB0 b19yYWRlb25fZW5jb2RlcihlbmNvZGVyKTsKKwkJZGlnID0gcmFkZW9uX2VuY29kZXItPmVuY19w cml2OworCQlpZiAoIWRpZy0+cGluIHx8IGRpZy0+cGluLT5pZCAhPSBwb3J0KQorCQkJY29udGlu dWU7CisJCWNvbm5lY3RvciA9IHJhZGVvbl9nZXRfY29ubmVjdG9yX2Zvcl9lbmNvZGVyKGVuY29k ZXIpOworCQlpZiAoY29ubmVjdG9yKSB7CisJCQkqZW5hYmxlZCA9IHRydWU7CisJCQlyZXQgPSBk cm1fZWxkX3NpemUoY29ubmVjdG9yLT5lbGQpOworCQkJbWVtY3B5KGJ1ZiwgY29ubmVjdG9yLT5l bGQsIG1pbihtYXhfYnl0ZXMsIHJldCkpOworCQkJYnJlYWs7CisJCX0KKwl9CisKKwlyZXR1cm4g cmV0OworfQorCitzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9hdWRpb19jb21wb25lbnRfb3BzIHJh ZGVvbl9hdWRpb19jb21wb25lbnRfb3BzID0geworCS5nZXRfZWxkID0gcmFkZW9uX2F1ZGlvX2Nv bXBvbmVudF9nZXRfZWxkLAorfTsKKworc3RhdGljIGludCByYWRlb25fYXVkaW9fY29tcG9uZW50 X2JpbmQoc3RydWN0IGRldmljZSAqa2RldiwKKwkJCQkgICAgICAgc3RydWN0IGRldmljZSAqaGRh X2tkZXYsIHZvaWQgKmRhdGEpCit7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGRldl9nZXRf ZHJ2ZGF0YShrZGV2KTsKKwlzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiA9IGRldi0+ZGV2X3By aXZhdGU7CisJc3RydWN0IGRybV9hdWRpb19jb21wb25lbnQgKmFjb21wID0gZGF0YTsKKworCWlm IChXQVJOX09OKCFkZXZpY2VfbGlua19hZGQoaGRhX2tkZXYsIGtkZXYsIERMX0ZMQUdfU1RBVEVM RVNTKSkpCisJCXJldHVybiAtRU5PTUVNOworCisJZHJtX21vZGVzZXRfbG9ja19hbGwoZGV2KTsK KwlhY29tcC0+b3BzID0gJnJhZGVvbl9hdWRpb19jb21wb25lbnRfb3BzOworCWFjb21wLT5kZXYg PSBrZGV2OworCXJkZXYtPmF1ZGlvLmNvbXBvbmVudCA9IGFjb21wOworCWRybV9tb2Rlc2V0X3Vu bG9ja19hbGwoZGV2KTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCByYWRlb25fYXVk aW9fY29tcG9uZW50X3VuYmluZChzdHJ1Y3QgZGV2aWNlICprZGV2LAorCQkJCQkgIHN0cnVjdCBk ZXZpY2UgKmhkYV9rZGV2LCB2b2lkICpkYXRhKQoreworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBkZXZfZ2V0X2RydmRhdGEoa2Rldik7CisJc3RydWN0IHJhZGVvbl9kZXZpY2UgKnJkZXYgPSBk ZXYtPmRldl9wcml2YXRlOworCXN0cnVjdCBkcm1fYXVkaW9fY29tcG9uZW50ICphY29tcCA9IGRh dGE7CisKKwlkcm1fbW9kZXNldF9sb2NrX2FsbChkZXYpOworCXJkZXYtPmF1ZGlvLmNvbXBvbmVu dCA9IE5VTEw7CisJYWNvbXAtPm9wcyA9IE5VTEw7CisJYWNvbXAtPmRldiA9IE5VTEw7CisJZHJt X21vZGVzZXRfdW5sb2NrX2FsbChkZXYpOworfQorCitzdGF0aWMgY29uc3Qgc3RydWN0IGNvbXBv bmVudF9vcHMgcmFkZW9uX2F1ZGlvX2NvbXBvbmVudF9iaW5kX29wcyA9IHsKKwkuYmluZAk9IHJh ZGVvbl9hdWRpb19jb21wb25lbnRfYmluZCwKKwkudW5iaW5kCT0gcmFkZW9uX2F1ZGlvX2NvbXBv bmVudF91bmJpbmQsCit9OworCiBzdGF0aWMgaW50IHJhZGVvbl9hdWRpb19jaGlwc2V0X3N1cHBv cnRlZChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKIHsKIAlyZXR1cm4gQVNJQ19JU19EQ0Uy KHJkZXYpICYmICFBU0lDX0lTX05PRENFKHJkZXYpOwpAQCAtMzM4LDYgKzQyMiw5IEBAIGludCBy YWRlb25fYXVkaW9faW5pdChzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldikKIAlmb3IgKGkgPSAw OyBpIDwgcmRldi0+YXVkaW8ubnVtX3BpbnM7IGkrKykKIAkJcmFkZW9uX2F1ZGlvX2VuYWJsZShy ZGV2LCAmcmRldi0+YXVkaW8ucGluW2ldLCAwKTsKIAorCWlmICghY29tcG9uZW50X2FkZChyZGV2 LT5kZXYsICZyYWRlb25fYXVkaW9fY29tcG9uZW50X2JpbmRfb3BzKSkKKwkJcmRldi0+YXVkaW8u Y29tcG9uZW50X3JlZ2lzdGVyZWQgPSB0cnVlOworCiAJcmV0dXJuIDA7CiB9CiAKQEAgLTQ5MCw2 ICs1NzcsMTEgQEAgdm9pZCByYWRlb25fYXVkaW9fZmluaShzdHJ1Y3QgcmFkZW9uX2RldmljZSAq cmRldikKIAkJcmFkZW9uX2F1ZGlvX2VuYWJsZShyZGV2LCAmcmRldi0+YXVkaW8ucGluW2ldLCAw KTsKIAogCXJkZXYtPmF1ZGlvLmVuYWJsZWQgPSBmYWxzZTsKKworCWlmIChyZGV2LT5hdWRpby5j b21wb25lbnRfcmVnaXN0ZXJlZCkgeworCQljb21wb25lbnRfZGVsKHJkZXYtPmRldiwgJnJhZGVv bl9hdWRpb19jb21wb25lbnRfYmluZF9vcHMpOworCQlyZGV2LT5hdWRpby5jb21wb25lbnRfcmVn aXN0ZXJlZCA9IGZhbHNlOworCX0KIH0KIAogc3RhdGljIHZvaWQgcmFkZW9uX2F1ZGlvX3NldF9k dG8oc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLCB1bnNpZ25lZCBpbnQgY2xvY2spCi0tIAoy LjE2LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRy aS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==