From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v6 11/12] drm/i915: Handle force_audio correctly in intel_sdvo Date: Mon, 1 May 2017 15:38:03 +0200 Message-ID: <20170501133804.8116-12-maarten.lankhorst@linux.intel.com> References: <20170501133804.8116-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170501133804.8116-1-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: intel-gfx@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RG8gdGhlIHNhbWUgYXMgb3RoZXIgY29ubmVjdG9ycywgYXR0ZW1wdCB0byBkZXRlY3QgaGRtaSBh dWRpbyBpbgp0aGUgZGV0ZWN0KCkgY2FsbGJhY2ssIGFuZCBvbmx5IHVzZSB0aGUgZm9yY2VfYXVk aW8gcHJvcGVydHkgYXMKb3ZlcnJpZGUuIENvbXB1dGUgaGFzX2F1ZGlvIGluIHBpcGVfY29uZmln LCBhbmQgdXNlIHRoYXQgdmFsdWUKaW5zdGVhZCBvZiB0aGUgcHJvYmVkIHZhbHVlIGRpcmVjdGx5 LgoKU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxp bnV4LmludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJA ZmZ3bGwuY2g+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5jIHwgNTEgKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTgg aW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfc2R2by5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2by5j CmluZGV4IGVmNmZhODdiMmY4YS4uNGJlOGJlMTYyMDU4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9zZHZvLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf c2R2by5jCkBAIC0xMTIyLDYgKzExMjIsOCBAQCBzdGF0aWMgYm9vbCBpbnRlbF9zZHZvX2NvbXB1 dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAogCQkJCSAgICAgIHN0cnVj dCBkcm1fY29ubmVjdG9yX3N0YXRlICpjb25uX3N0YXRlKQogewogCXN0cnVjdCBpbnRlbF9zZHZv ICppbnRlbF9zZHZvID0gdG9fc2R2byhlbmNvZGVyKTsKKwlzdHJ1Y3QgaW50ZWxfc2R2b19jb25u ZWN0b3IgKmludGVsX3Nkdm9fY29ubmVjdG9yID0KKwkJdG9faW50ZWxfc2R2b19jb25uZWN0b3Io Y29ubl9zdGF0ZS0+Y29ubmVjdG9yKTsKIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0 ZWRfbW9kZSA9ICZwaXBlX2NvbmZpZy0+YmFzZS5hZGp1c3RlZF9tb2RlOwogCXN0cnVjdCBkcm1f ZGlzcGxheV9tb2RlICptb2RlID0gJnBpcGVfY29uZmlnLT5iYXNlLm1vZGU7CiAKQEAgLTExNjAs NyArMTE2MiwxMiBAQCBzdGF0aWMgYm9vbCBpbnRlbF9zZHZvX2NvbXB1dGVfY29uZmlnKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAogCXBpcGVfY29uZmlnLT5waXhlbF9tdWx0aXBsaWVy ID0KIAkJaW50ZWxfc2R2b19nZXRfcGl4ZWxfbXVsdGlwbGllcihhZGp1c3RlZF9tb2RlKTsKIAot CXBpcGVfY29uZmlnLT5oYXNfaGRtaV9zaW5rID0gaW50ZWxfc2R2by0+aGFzX2hkbWlfbW9uaXRv cjsKKwlpZiAoaW50ZWxfc2R2b19jb25uZWN0b3ItPmZvcmNlX2F1ZGlvICE9IEhETUlfQVVESU9f T0ZGX0RWSSkKKwkJcGlwZV9jb25maWctPmhhc19oZG1pX3NpbmsgPSBpbnRlbF9zZHZvLT5oYXNf aGRtaV9tb25pdG9yOworCisJaWYgKGludGVsX3Nkdm9fY29ubmVjdG9yLT5mb3JjZV9hdWRpbyA9 PSBIRE1JX0FVRElPX09OIHx8CisJICAgIChpbnRlbF9zZHZvX2Nvbm5lY3Rvci0+Zm9yY2VfYXVk aW8gPT0gSERNSV9BVURJT19BVVRPICYmIGludGVsX3Nkdm8tPmhhc19oZG1pX2F1ZGlvKSkKKwkJ cGlwZV9jb25maWctPmhhc19hdWRpbyA9IHRydWU7CiAKIAlpZiAoaW50ZWxfc2R2by0+Y29sb3Jf cmFuZ2VfYXV0bykgewogCQkvKiBTZWUgQ0VBLTg2MS1FIC0gNS4xIERlZmF1bHQgRW5jb2Rpbmcg UGFyYW1ldGVycyAqLwpAQCAtMTI4NSw3ICsxMjkyLDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfc2R2 b19wcmVfZW5hYmxlKHN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9lbmNvZGVyLAogCWVsc2UK IAkJc2R2b3ggfD0gU0RWT19QSVBFX1NFTChjcnRjLT5waXBlKTsKIAotCWlmIChpbnRlbF9zZHZv LT5oYXNfaGRtaV9hdWRpbykKKwlpZiAoY3J0Y19zdGF0ZS0+aGFzX2F1ZGlvKQogCQlzZHZveCB8 PSBTRFZPX0FVRElPX0VOQUJMRTsKIAogCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDQpIHsK QEAgLTE2OTQsMTIgKzE3MDEsNiBAQCBpbnRlbF9zZHZvX3RtZHNfc2lua19kZXRlY3Qoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAkJa2ZyZWUoZWRpZCk7CiAJfQogCi0JaWYgKHN0 YXR1cyA9PSBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZCkgewotCQlzdHJ1Y3QgaW50ZWxfc2R2 b19jb25uZWN0b3IgKmludGVsX3Nkdm9fY29ubmVjdG9yID0gdG9faW50ZWxfc2R2b19jb25uZWN0 b3IoY29ubmVjdG9yKTsKLQkJaWYgKGludGVsX3Nkdm9fY29ubmVjdG9yLT5mb3JjZV9hdWRpbyAh PSBIRE1JX0FVRElPX0FVVE8pCi0JCQlpbnRlbF9zZHZvLT5oYXNfaGRtaV9hdWRpbyA9IChpbnRl bF9zZHZvX2Nvbm5lY3Rvci0+Zm9yY2VfYXVkaW8gPT0gSERNSV9BVURJT19PTik7Ci0JfQotCiAJ cmV0dXJuIHN0YXR1czsKIH0KIApAQCAtMTk3OCwyMyArMTk3OSw2IEBAIHN0YXRpYyB2b2lkIGlu dGVsX3Nkdm9fZGVzdHJveShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCWtmcmVl KGludGVsX3Nkdm9fY29ubmVjdG9yKTsKIH0KIAotc3RhdGljIGJvb2wgaW50ZWxfc2R2b19kZXRl Y3RfaGRtaV9hdWRpbyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQotewotCXN0cnVj dCBpbnRlbF9zZHZvICppbnRlbF9zZHZvID0gaW50ZWxfYXR0YWNoZWRfc2R2byhjb25uZWN0b3Ip OwotCXN0cnVjdCBlZGlkICplZGlkOwotCWJvb2wgaGFzX2F1ZGlvID0gZmFsc2U7Ci0KLQlpZiAo IWludGVsX3Nkdm8tPmlzX2hkbWkpCi0JCXJldHVybiBmYWxzZTsKLQotCWVkaWQgPSBpbnRlbF9z ZHZvX2dldF9lZGlkKGNvbm5lY3Rvcik7Ci0JaWYgKGVkaWQgIT0gTlVMTCAmJiBlZGlkLT5pbnB1 dCAmIERSTV9FRElEX0lOUFVUX0RJR0lUQUwpCi0JCWhhc19hdWRpbyA9IGRybV9kZXRlY3RfbW9u aXRvcl9hdWRpbyhlZGlkKTsKLQlrZnJlZShlZGlkKTsKLQotCXJldHVybiBoYXNfYXVkaW87Ci19 Ci0KIHN0YXRpYyBpbnQKIGludGVsX3Nkdm9fc2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IsCiAJCQlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wZXJ0eSwKQEAgLTIw MTMsMjIgKzE5OTcsMjMgQEAgaW50ZWxfc2R2b19zZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25u ZWN0b3IgKmNvbm5lY3RvciwKIAogCWlmIChwcm9wZXJ0eSA9PSBkZXZfcHJpdi0+Zm9yY2VfYXVk aW9fcHJvcGVydHkpIHsKIAkJaW50IGkgPSB2YWw7Ci0JCWJvb2wgaGFzX2F1ZGlvOwotCi0JCWlm IChpID09IGludGVsX3Nkdm9fY29ubmVjdG9yLT5mb3JjZV9hdWRpbykKLQkJCXJldHVybiAwOwor CQlib29sIGhhc19hdWRpbywgb2xkX2F1ZGlvOwogCi0JCWludGVsX3Nkdm9fY29ubmVjdG9yLT5m b3JjZV9hdWRpbyA9IGk7CisJCWlmIChpbnRlbF9zZHZvX2Nvbm5lY3Rvci0+Zm9yY2VfYXVkaW8g PT0gSERNSV9BVURJT19BVVRPKQorCQkJb2xkX2F1ZGlvID0gaW50ZWxfc2R2by0+aGFzX2hkbWlf YXVkaW87CisJCWVsc2UKKwkJCW9sZF9hdWRpbyA9IGludGVsX3Nkdm9fY29ubmVjdG9yLT5mb3Jj ZV9hdWRpbyA9PSBIRE1JX0FVRElPX09OOwogCiAJCWlmIChpID09IEhETUlfQVVESU9fQVVUTykK LQkJCWhhc19hdWRpbyA9IGludGVsX3Nkdm9fZGV0ZWN0X2hkbWlfYXVkaW8oY29ubmVjdG9yKTsK KwkJCWhhc19hdWRpbyA9IGludGVsX3Nkdm8tPmhhc19oZG1pX2F1ZGlvOwogCQllbHNlCiAJCQlo YXNfYXVkaW8gPSAoaSA9PSBIRE1JX0FVRElPX09OKTsKIAotCQlpZiAoaGFzX2F1ZGlvID09IGlu dGVsX3Nkdm8tPmhhc19oZG1pX2F1ZGlvKQorCQlpbnRlbF9zZHZvX2Nvbm5lY3Rvci0+Zm9yY2Vf YXVkaW8gPSBpOworCisJCWlmIChoYXNfYXVkaW8gPT0gb2xkX2F1ZGlvKQogCQkJcmV0dXJuIDA7 CiAKLQkJaW50ZWxfc2R2by0+aGFzX2hkbWlfYXVkaW8gPSBoYXNfYXVkaW87CiAJCWdvdG8gZG9u ZTsKIAl9CiAKLS0gCjIuOS4zCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK