From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: [PATCH 4/7] ALSA: hda - Split ELD update code from hdmi_present_sense() Date: Mon, 30 Nov 2015 14:37:48 +0100 Message-ID: <1448890671-2983-5-git-send-email-tiwai@suse.de> References: <1448890671-2983-1-git-send-email-tiwai@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8C7AE89D2F for ; Mon, 30 Nov 2015 05:38:05 -0800 (PST) In-Reply-To: <1448890671-2983-1-git-send-email-tiwai@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org, alsa-devel@alsa-project.org Cc: Mengdong Lin , Vinod Koul , Daniel Vetter , David Henningsson List-Id: intel-gfx@lists.freedesktop.org VGhpcyBpcyBhIHByZWxpbWluYXJ5IHBhdGNoIGZvciB0aGUgbGF0ZXIgY2hhbmdlIHRvIHN1cHBv cnQgRUxEL2phY2sKaGFuZGxpbmcgd2l0aCBpOTE1IGF1ZGlvIGNvbXBvbmVudC4gIFRoaXMgc3Bs aXRzIHRoZSBFTEQgdXBkYXRlIGNvZGUKZnJvbSBoZG1pX3ByZXNlbnRfc2Vuc2UoKSBzbyB0aGF0 IGl0IGNhbiBiZSBjYWxsZWQgZnJvbSBvdGhlciBwbGFjZXMuCgpKdXN0IGEgY29kZSByZWZhY3Rv cmluZywgbm8gZnVuY3Rpb25hbCBjaGFuZ2UuCgpTaWduZWQtb2ZmLWJ5OiBUYWthc2hpIEl3YWkg PHRpd2FpQHN1c2UuZGU+Ci0tLQogc291bmQvcGNpL2hkYS9wYXRjaF9oZG1pLmMgfCAxMDggKysr KysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdl ZCwgNTQgaW5zZXJ0aW9ucygrKSwgNTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc291bmQv cGNpL2hkYS9wYXRjaF9oZG1pLmMgYi9zb3VuZC9wY2kvaGRhL3BhdGNoX2hkbWkuYwppbmRleCA0 YjZmYjY2OGM5MWMuLjI4Njg0YWE4NjQwOCAxMDA2NDQKLS0tIGEvc291bmQvcGNpL2hkYS9wYXRj aF9oZG1pLmMKKysrIGIvc291bmQvcGNpL2hkYS9wYXRjaF9oZG1pLmMKQEAgLTE1MzAsNiArMTUz MCw1NiBAQCBzdGF0aWMgaW50IGhkbWlfcmVhZF9waW5fY29ubihzdHJ1Y3QgaGRhX2NvZGVjICpj b2RlYywgaW50IHBpbl9pZHgpCiAJcmV0dXJuIDA7CiB9CiAKKy8qIHVwZGF0ZSBwZXJfcGluIEVM RCBmcm9tIHRoZSBnaXZlbiBuZXcgRUxEOworICogc2V0dXAgaW5mbyBmcmFtZSBhbmQgbm90aWZp Y2F0aW9uIGFjY29yZGluZ2x5CisgKi8KK3N0YXRpYyB2b2lkIHVwZGF0ZV9lbGQoc3RydWN0IGhk YV9jb2RlYyAqY29kZWMsCisJCSAgICAgICBzdHJ1Y3QgaGRtaV9zcGVjX3Blcl9waW4gKnBlcl9w aW4sCisJCSAgICAgICBzdHJ1Y3QgaGRtaV9lbGQgKmVsZCkKK3sKKwlzdHJ1Y3QgaGRtaV9lbGQg KnBpbl9lbGQgPSAmcGVyX3Bpbi0+c2lua19lbGQ7CisJYm9vbCBvbGRfZWxkX3ZhbGlkID0gcGlu X2VsZC0+ZWxkX3ZhbGlkOworCWJvb2wgZWxkX2NoYW5nZWQ7CisKKwlpZiAoZWxkLT5lbGRfdmFs aWQpCisJCXNuZF9oZG1pX3Nob3dfZWxkKGNvZGVjLCAmZWxkLT5pbmZvKTsKKworCWVsZF9jaGFu Z2VkID0gKHBpbl9lbGQtPmVsZF92YWxpZCAhPSBlbGQtPmVsZF92YWxpZCk7CisJaWYgKGVsZC0+ ZWxkX3ZhbGlkICYmIHBpbl9lbGQtPmVsZF92YWxpZCkKKwkJaWYgKHBpbl9lbGQtPmVsZF9zaXpl ICE9IGVsZC0+ZWxkX3NpemUgfHwKKwkJICAgIG1lbWNtcChwaW5fZWxkLT5lbGRfYnVmZmVyLCBl bGQtPmVsZF9idWZmZXIsCisJCQkgICBlbGQtPmVsZF9zaXplKSAhPSAwKQorCQkJZWxkX2NoYW5n ZWQgPSB0cnVlOworCisJcGluX2VsZC0+ZWxkX3ZhbGlkID0gZWxkLT5lbGRfdmFsaWQ7CisJcGlu X2VsZC0+ZWxkX3NpemUgPSBlbGQtPmVsZF9zaXplOworCWlmIChlbGQtPmVsZF92YWxpZCkKKwkJ bWVtY3B5KHBpbl9lbGQtPmVsZF9idWZmZXIsIGVsZC0+ZWxkX2J1ZmZlciwgZWxkLT5lbGRfc2l6 ZSk7CisJcGluX2VsZC0+aW5mbyA9IGVsZC0+aW5mbzsKKworCS8qCisJICogUmUtc2V0dXAgcGlu IGFuZCBpbmZvZnJhbWUuIFRoaXMgaXMgbmVlZGVkIGUuZy4gd2hlbgorCSAqIC0gc2luayBpcyBm aXJzdCBwbHVnZ2VkLWluCisJICogLSB0cmFuc2NvZGVyIGNhbiBjaGFuZ2UgZHVyaW5nIHN0cmVh bSBwbGF5YmFjayBvbiBIYXN3ZWxsCisJICogICBhbmQgdGhpcyBjYW4gbWFrZSBIVyByZXNldCBj b252ZXJ0ZXIgc2VsZWN0aW9uIG9uIGEgcGluLgorCSAqLworCWlmIChlbGQtPmVsZF92YWxpZCAm JiAhb2xkX2VsZF92YWxpZCAmJiBwZXJfcGluLT5zZXR1cCkgeworCQlpZiAoaXNfaGFzd2VsbF9w bHVzKGNvZGVjKSB8fCBpc192YWxsZXl2aWV3X3BsdXMoY29kZWMpKSB7CisJCQlpbnRlbF92ZXJp ZnlfcGluX2N2dF9jb25uZWN0KGNvZGVjLCBwZXJfcGluKTsKKwkJCWludGVsX25vdF9zaGFyZV9h c3NpZ25lZF9jdnQoY29kZWMsIHBlcl9waW4tPnBpbl9uaWQsCisJCQkJCQkgICAgIHBlcl9waW4t Pm11eF9pZHgpOworCQl9CisKKwkJaGRtaV9zZXR1cF9hdWRpb19pbmZvZnJhbWUoY29kZWMsIHBl cl9waW4sIHBlcl9waW4tPm5vbl9wY20pOworCX0KKworCWlmIChlbGRfY2hhbmdlZCkKKwkJc25k X2N0bF9ub3RpZnkoY29kZWMtPmNhcmQsCisJCQkgICAgICAgU05EUlZfQ1RMX0VWRU5UX01BU0tf VkFMVUUgfAorCQkJICAgICAgIFNORFJWX0NUTF9FVkVOVF9NQVNLX0lORk8sCisJCQkgICAgICAg JnBlcl9waW4tPmVsZF9jdGwtPmlkKTsKK30KKwogc3RhdGljIGJvb2wgaGRtaV9wcmVzZW50X3Nl bnNlKHN0cnVjdCBoZG1pX3NwZWNfcGVyX3BpbiAqcGVyX3BpbiwgaW50IHJlcG9sbCkKIHsKIAlz dHJ1Y3QgaGRhX2phY2tfdGJsICpqYWNrOwpAQCAtMTU0Nyw4ICsxNTk3LDYgQEAgc3RhdGljIGJv b2wgaGRtaV9wcmVzZW50X3NlbnNlKHN0cnVjdCBoZG1pX3NwZWNfcGVyX3BpbiAqcGVyX3Bpbiwg aW50IHJlcG9sbCkKIAkgKiB0aGUgdW5zb2xpY2l0ZWQgcmVzcG9uc2UgdG8gYXZvaWQgY3VzdG9t IFdBUnMuCiAJICovCiAJaW50IHByZXNlbnQ7Ci0JYm9vbCB1cGRhdGVfZWxkID0gZmFsc2U7Ci0J Ym9vbCBlbGRfY2hhbmdlZCA9IGZhbHNlOwogCWJvb2wgcmV0OwogCiAJc25kX2hkYV9wb3dlcl91 cF9wbShjb2RlYyk7CkBAIC0xNTc1LDYxICsxNjIzLDEzIEBAIHN0YXRpYyBib29sIGhkbWlfcHJl c2VudF9zZW5zZShzdHJ1Y3QgaGRtaV9zcGVjX3Blcl9waW4gKnBlcl9waW4sIGludCByZXBvbGwp CiAJCQkJCQkgICAgZWxkLT5lbGRfc2l6ZSkgPCAwKQogCQkJCWVsZC0+ZWxkX3ZhbGlkID0gZmFs c2U7CiAJCX0KLQotCQlpZiAoZWxkLT5lbGRfdmFsaWQpIHsKLQkJCXNuZF9oZG1pX3Nob3dfZWxk KGNvZGVjLCAmZWxkLT5pbmZvKTsKLQkJCXVwZGF0ZV9lbGQgPSB0cnVlOwotCQl9Ci0JCWVsc2Ug aWYgKHJlcG9sbCkgewotCQkJc2NoZWR1bGVfZGVsYXllZF93b3JrKCZwZXJfcGluLT53b3JrLAot CQkJCQkgICAgICBtc2Vjc190b19qaWZmaWVzKDMwMCkpOwotCQkJZ290byB1bmxvY2s7Ci0JCX0K IAl9CiAKLQlpZiAocGluX2VsZC0+ZWxkX3ZhbGlkICE9IGVsZC0+ZWxkX3ZhbGlkKQotCQllbGRf Y2hhbmdlZCA9IHRydWU7Ci0KLQlpZiAocGluX2VsZC0+ZWxkX3ZhbGlkICYmICFlbGQtPmVsZF92 YWxpZCkKLQkJdXBkYXRlX2VsZCA9IHRydWU7Ci0KLQlpZiAodXBkYXRlX2VsZCkgewotCQlib29s IG9sZF9lbGRfdmFsaWQgPSBwaW5fZWxkLT5lbGRfdmFsaWQ7Ci0JCXBpbl9lbGQtPmVsZF92YWxp ZCA9IGVsZC0+ZWxkX3ZhbGlkOwotCQlpZiAocGluX2VsZC0+ZWxkX3NpemUgIT0gZWxkLT5lbGRf c2l6ZSB8fAotCQkJICAgICAgbWVtY21wKHBpbl9lbGQtPmVsZF9idWZmZXIsIGVsZC0+ZWxkX2J1 ZmZlciwKLQkJCQkgICAgIGVsZC0+ZWxkX3NpemUpICE9IDApIHsKLQkJCW1lbWNweShwaW5fZWxk LT5lbGRfYnVmZmVyLCBlbGQtPmVsZF9idWZmZXIsCi0JCQkgICAgICAgZWxkLT5lbGRfc2l6ZSk7 Ci0JCQllbGRfY2hhbmdlZCA9IHRydWU7Ci0JCX0KLQkJcGluX2VsZC0+ZWxkX3NpemUgPSBlbGQt PmVsZF9zaXplOwotCQlwaW5fZWxkLT5pbmZvID0gZWxkLT5pbmZvOwotCi0JCS8qCi0JCSAqIFJl LXNldHVwIHBpbiBhbmQgaW5mb2ZyYW1lLiBUaGlzIGlzIG5lZWRlZCBlLmcuIHdoZW4KLQkJICog LSBzaW5rIGlzIGZpcnN0IHBsdWdnZWQtaW4gKGluZm9mcmFtZSBpcyBub3Qgc2V0IHVwIGlmICFt b25pdG9yX3ByZXNlbnQpCi0JCSAqIC0gdHJhbnNjb2RlciBjYW4gY2hhbmdlIGR1cmluZyBzdHJl YW0gcGxheWJhY2sgb24gSGFzd2VsbAotCQkgKiAgIGFuZCB0aGlzIGNhbiBtYWtlIEhXIHJlc2V0 IGNvbnZlcnRlciBzZWxlY3Rpb24gb24gYSBwaW4uCi0JCSAqLwotCQlpZiAoZWxkLT5lbGRfdmFs aWQgJiYgIW9sZF9lbGRfdmFsaWQgJiYgcGVyX3Bpbi0+c2V0dXApIHsKLQkJCWlmIChpc19oYXN3 ZWxsX3BsdXMoY29kZWMpIHx8Ci0JCQkJaXNfdmFsbGV5dmlld19wbHVzKGNvZGVjKSkgewotCQkJ CWludGVsX3ZlcmlmeV9waW5fY3Z0X2Nvbm5lY3QoY29kZWMsIHBlcl9waW4pOwotCQkJCWludGVs X25vdF9zaGFyZV9hc3NpZ25lZF9jdnQoY29kZWMsIHBpbl9uaWQsCi0JCQkJCQkJcGVyX3Bpbi0+ bXV4X2lkeCk7Ci0JCQl9Ci0KLQkJCWhkbWlfc2V0dXBfYXVkaW9faW5mb2ZyYW1lKGNvZGVjLCBw ZXJfcGluLAotCQkJCQkJICAgcGVyX3Bpbi0+bm9uX3BjbSk7Ci0JCX0KLQl9CisJaWYgKCFlbGQt PmVsZF92YWxpZCAmJiByZXBvbGwpCisJCXNjaGVkdWxlX2RlbGF5ZWRfd29yaygmcGVyX3Bpbi0+ d29yaywgbXNlY3NfdG9famlmZmllcygzMDApKTsKKwllbHNlCisJCXVwZGF0ZV9lbGQoY29kZWMs IHBlcl9waW4sIGVsZCk7CiAKLQlpZiAoZWxkX2NoYW5nZWQpCi0JCXNuZF9jdGxfbm90aWZ5KGNv ZGVjLT5jYXJkLAotCQkJICAgICAgIFNORFJWX0NUTF9FVkVOVF9NQVNLX1ZBTFVFIHwgU05EUlZf Q1RMX0VWRU5UX01BU0tfSU5GTywKLQkJCSAgICAgICAmcGVyX3Bpbi0+ZWxkX2N0bC0+aWQpOwot IHVubG9jazoKIAlyZXQgPSAhcmVwb2xsIHx8ICFwaW5fZWxkLT5tb25pdG9yX3ByZXNlbnQgfHwg cGluX2VsZC0+ZWxkX3ZhbGlkOwogCiAJamFjayA9IHNuZF9oZGFfamFja190YmxfZ2V0KGNvZGVj LCBwaW5fbmlkKTsKLS0gCjIuNi4zCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=