From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sonika Jindal Subject: [PATCH] drm/i915: Add hot_plug hook for hdmi encoder Date: Thu, 10 Dec 2015 10:15:41 +0530 Message-ID: <1449722741-24763-1-git-send-email-sonika.jindal@intel.com> References: <1449721825-24651-1-git-send-email-sonika.jindal@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 7983E6E1F8 for ; Wed, 9 Dec 2015 20:58:44 -0800 (PST) In-Reply-To: <1449721825-24651-1-git-send-email-sonika.jindal@intel.com> 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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogU2hhc2hhbmsgU2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgoKVGhpcyBw YXRjaCBhZGRzIGEgc2VwYXJhdGUgcHJvYmUgZnVuY3Rpb24gZm9yIEhETUkKRURJRCByZWFkIG92 ZXIgRERDIGNoYW5uZWwuIFRoaXMgZnVuY3Rpb24gaGFzIGJlZW4KcmVnaXN0ZXJlZCBhcyBhIC5o b3RfcGx1ZyBoYW5kbGVyIGZvciBIRE1JIGVuY29kZXIuCgpUaGUgY3VycmVudCBpbXBsZW1lbnRh dGlvbiBvZiBoZG1pX2RldGVjdCgpCmZ1bmN0aW9uIHJlLXNldHMgdGhlIGNhY2hlZCBIRE1JIGVk aWQgKGluIGNvbm5lY3Rvci0+ZGV0ZWN0X2VkaWQpIGluCmV2ZXJ5IGRldGVjdCBjYWxsLlRoaXMg ZnVuY3Rpb24gZ2V0cyBjYWxsZWQgbWFueSB0aW1lcywgc29tZXRpbWVzCmRpcmVjdGx5IGZyb20g dXNlcnNwYWNlIHByb2JlcywgZm9yY2luZyBkcml2ZXJzIHRvIHJlYWQgRURJRCBldmVyeQpkZXRl Y3QgZnVuY3Rpb24gY2FsbC5UaGlzIGNhdXNlcyBzZXZlcmFsIHByb2JsZW1zIGxpa2U6CgoxLiBS YWNlIGNvbmRpdGlvbnMgaW4gbXVsdGlwbGUgaG90X3BsdWcgLyB1bnBsdWcgY2FzZXMsIGJldHdl ZW4KICAgaW50ZXJydXB0cyBib3R0b20gaGFsdmVzIGFuZCB1c2Vyc3BhY2UgZGV0ZWN0aW9ucy4K Mi4gTWFueSBVbi1uZWNlc3NhcnkgRURJRCByZWFkcyBmb3Igc2luZ2xlIGhvdHBsdWcvdW5wbHVn CjMuIEhETUkgY29tcGxhaW5jZSBmYWlsdXJlcyB3aGljaCBleHBlY3RzIG9ubHkgb25lIEVESUQg cmVhZCBwZXIgaG90cGx1ZwoKVGhpcyBmdW5jdGlvbiB3aWxsIGJlIHNlcnZpbmcgdGhlIHB1cnBv c2Ugb2YgcmVhbGx5IHJlYWRpbmcgdGhlIEVESUQKYnkgcmVhbGx5IHByb2JpbmcgdGhlIEREQyBj aGFubmVsLCBhbmQgdXBkYXRpbmcgdGhlIGNhY2hlZCBFRElELgoKVGhlIHBsYW4gaXMgdG86CjEu IGk5MTUgSVJRIGhhbmRsZXIgYm90dG9tIGhhbGYgZnVuY3Rpb24gYWxyZWFkeSBjYWxscwogICBp bnRlbF9lbmNvZGVyLT5ob3RwbHVnKCkgZnVuY3Rpb24uIEFkZGluZyBUaGlzIHByb2JlIGZ1bmN0 aW9uIHdoaWNoCiAgIHdpbGwgcmVhZCB0aGUgRURJRCBvbmx5IGluIGNhc2Ugb2YgYSBob3RwbHVn IC8gdW5wbHVnLgoyLiBEdXJpbmcgaW5pdF9jb25uZWN0b3IgdGhpcyBwcm9iZSB3aWxsIGJlIGNh bGxlZCB0byByZWFkIHRoZSBlZGlkCjMuIFJldXNlIHRoZSBjYWNoZWQgRURJRCBpbiBoZG1pX2Rl dGVjdCgpIGZ1bmN0aW9uLgoKVGhlICI8IGdlbjciIGNoZWNrIGlzIHRoZXJlIGJlY2F1c2UgdGhp cyB3YXMgdGVzdGVkIG9ubHkgZm9yID49Z2VuNwpwbGF0Zm9ybXMuIEZvciBvbGRlciBwbGF0Zm9y bXMgdGhlIGhvdHBsdWcvcmVhZGluZyBlZGlkIHBhdGggcmVtYWlucyBzYW1lLgoKdjI6IENhbGxp bmcgc2V0X2VkaWQgaW5zdGVhZCBvZiBoZG1pX3Byb2JlIGR1cmluZyBpbml0LgpBbHNvLCBmb3Ig cGxhdGZvcm1zIGhhdmluZyBEREksIGludGVsX2VuY29kZXIgZm9yIERQIGFuZCBIRE1JIGlzIHNh bWUKKHRha2VuIGZyb20gaW50ZWxfZGlnX3BvcnQpLCBzbyBmb3IgRFAgYWxzbywgaG90X3BsdWcg ZnVuY3Rpb24gZ2V0cyBjYWxsZWQKd2hpY2ggaXMgbm90IGludGVuZGVkIGhlcmUuIFNvLCBjaGVj ayBmb3IgSERNSSBpbiBpbnRlbF9oZG1pX3Byb2JlClJlbHkgb24gSFBEIGZvciB1cGRhdGluZyBl ZGlkIG9ubHkgZm9yIHBsYXRmb3JtcyBnZW4gPiA4IGFuZCBhbHNvIGZvciBWTFYuCgp2MzogRHJv cHBpbmcgdGhlIGdlbiA8IDggfHwgIVZMViAgY2hlY2suIE5vdyBhbGwgcGxhdGZvcm1zIHNob3Vs ZCByZWx5IG9uCmhvdHBsdWcgb3IgaW5pdCBmb3IgdXBkYXRpbmcgdGhlIGVkaWQuKERhbmllbCkK QWxzbywgY2FsbGluZyBoZG1pX3Byb2JlIGluIGluaXQgaW5zdGVhZCBvZiBzZXRfZWRpZAoKdjQ6 IFJlbmFtaW5nIGludGVsX2hkbWlfcHJvYmUgdG8gaW50ZWxfaGRtaV9ob3RfcGx1Zy4KQWxzbyBj YWxsaW5nIHRoaXMgaG90cGx1ZyBoYW5kbGVyIGZyb20gaW50ZWxfaHBkX2luaXQgdG8gdGFrZSBj YXJlIG9mIGluaXQKcmVzdW1lIHNjZW5hcmlvcy4KCnY1OiBNb3ZlZCB0aGUgY2FsbCB0byBlbmNv ZGVyIGhvdHBsdWcgZHVyaW5nIGluaXQgdG8gc2VwYXJhdGUgcGF0Y2goRGFuaWVsKQp2NjogUmVi YXNlZCBhbmQgbWFpbnRhaW5pbmcgYXV0aG9yc2hpcC4KClNpZ25lZC1vZmYtYnk6IFNoYXNoYW5r IFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogU29uaWth IEppbmRhbCA8c29uaWthLmppbmRhbEBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfaGRtaS5jIHwgNTggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0t LS0tCiAxIGZpbGUgY2hhbmdlZCwgNDUgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jCmluZGV4IGJkZDQ2MmUuLjE2ZGQyYTcgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9oZG1pLmMKQEAgLTEzODEsMTggKzEzODEsMTYgQEAgaW50ZWxfaGRtaV9z ZXRfZWRpZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBib29sIGZvcmNlKQogCXJl dHVybiBjb25uZWN0ZWQ7CiB9CiAKLXN0YXRpYyBlbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVzCi1p bnRlbF9oZG1pX2RldGVjdChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBib29sIGZv cmNlKQordm9pZCBpbnRlbF9oZG1pX2hvdF9wbHVnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRl bF9lbmNvZGVyKQogewotCWVudW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMgc3RhdHVzOwotCXN0cnVj dCBpbnRlbF9oZG1pICppbnRlbF9oZG1pID0gaW50ZWxfYXR0YWNoZWRfaGRtaShjb25uZWN0b3Ip OwotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY29ubmVjdG9y LT5kZXYpOworCXN0cnVjdCBpbnRlbF9oZG1pICppbnRlbF9oZG1pID0KKwkJCWVuY190b19pbnRl bF9oZG1pKCZpbnRlbF9lbmNvZGVyLT5iYXNlKTsKKwlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpp bnRlbF9jb25uZWN0b3IgPQorCQkJCWludGVsX2hkbWktPmF0dGFjaGVkX2Nvbm5lY3RvcjsKKwlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGludGVsX2VuY29kZXIt PmJhc2UuZGV2KTsKIAlib29sIGxpdmVfc3RhdHVzID0gZmFsc2U7CiAJdW5zaWduZWQgaW50IHJl dHJ5ID0gMzsKIAotCURSTV9ERUJVR19LTVMoIltDT05ORUNUT1I6JWQ6JXNdXG4iLAotCQkgICAg ICBjb25uZWN0b3ItPmJhc2UuaWQsIGNvbm5lY3Rvci0+bmFtZSk7Ci0KIAlpbnRlbF9kaXNwbGF5 X3Bvd2VyX2dldChkZXZfcHJpdiwgUE9XRVJfRE9NQUlOX0dNQlVTKTsKIAogCXdoaWxlICghbGl2 ZV9zdGF0dXMgJiYgLS1yZXRyeSkgewpAQCAtMTQwMCwyMSArMTM5OCw1MyBAQCBpbnRlbF9oZG1p X2RldGVjdChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBib29sIGZvcmNlKQogCQkJ CWhkbWlfdG9fZGlnX3BvcnQoaW50ZWxfaGRtaSkpOwogCQltZGVsYXkoMTApOwogCX0KKwlpbnRl bF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwgUE9XRVJfRE9NQUlOX0dNQlVTKTsKIAogCWlm ICghbGl2ZV9zdGF0dXMpCiAJCURSTV9ERUJVR19LTVMoIkxpdmUgc3RhdHVzIG5vdCB1cCEiKTsK IAotCWludGVsX2hkbWlfdW5zZXRfZWRpZChjb25uZWN0b3IpOworCS8qCisJICogV2UgYXJlIGhl cmUsIG1lYW5zIHRoZXJlIGlzIGEgaG90cGx1ZyBvciBhIGZvcmNlCisJICogZGV0ZWN0aW9uLiBD bGVhciB0aGUgY2FjaGVkIEVESUQgYW5kIHByb2JlIHRoZQorCSAqIEREQyBidXMgdG8gY2hlY2sg dGhlIGN1cnJlbnQgc3RhdHVzIG9mIEhETUkuCisJICovCisJaW50ZWxfaGRtaV91bnNldF9lZGlk KCZpbnRlbF9jb25uZWN0b3ItPmJhc2UpOworCWlmIChpbnRlbF9oZG1pX3NldF9lZGlkKCZpbnRl bF9jb25uZWN0b3ItPmJhc2UsIGxpdmVfc3RhdHVzKSkKKwkJRFJNX0RFQlVHX0RSSVZFUigiRERD IHByb2JlOiBnb3QgRURJRFxuIik7CisJZWxzZQorCQlEUk1fREVCVUdfRFJJVkVSKCJEREMgcHJv YmU6IG5vIEVESURcbiIpOworfQorCitzdGF0aWMgZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cwor aW50ZWxfaGRtaV9kZXRlY3Qoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgYm9vbCBm b3JjZSkKK3sKKwllbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVzIHN0YXR1czsKKwlzdHJ1Y3QgaW50 ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IgPQorCQkJCXRvX2ludGVsX2Nvbm5lY3Rvcihj b25uZWN0b3IpOwogCi0JaWYgKGludGVsX2hkbWlfc2V0X2VkaWQoY29ubmVjdG9yLCBsaXZlX3N0 YXR1cykpIHsKKwlEUk1fREVCVUdfS01TKCJbQ09OTkVDVE9SOiVkOiVzXVxuIiwKKwkJICAgICAg Y29ubmVjdG9yLT5iYXNlLmlkLCBjb25uZWN0b3ItPm5hbWUpOworCisJLyoKKwkgKiBUaGVyZSBh cmUgbWFueSB1c2Vyc3BhY2UgY2FsbHMgd2hpY2ggcHJvYmUgRURJRCBmcm9tCisJICogZGV0ZWN0 IHBhdGguIEluIGNhc2Ugb2YgbXVsdGlwbGUgaG90cGx1Zy91bnBsdWcsIHRoZXNlCisJICogY2Fu IGNhdXNlIHJhY2UgY29uZGl0aW9ucyB3aGlsZSBwcm9iaW5nIEVESUQuIEFsc28gaXRzCisJICog d2FzdGUgb2YgQ1BVIGN5Y2xlcyB0byByZWFkIHRoZSBFRElEIGFnYWluIGFuZCBhZ2FpbgorCSAq IHVubGVzcyB0aGVyZSBpcyBhIHJlYWwgaG90cGx1Zy4KKwkgKiBTbywgcmVseSBvbiBob3RwbHVn cyBhbmQgaW5pdCB0byByZWFkIGVkaWQuCisJICogQ2hlY2sgY29ubmVjdG9yIHN0YXR1cyBiYXNl ZCBvbiBhdmFpbGFiaWxpdHkgb2YgY2FjaGVkIEVESUQuCisJICovCisKKwlpZiAoaW50ZWxfY29u bmVjdG9yLT5kZXRlY3RfZWRpZCkgewogCQlzdHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9 IGludGVsX2F0dGFjaGVkX2hkbWkoY29ubmVjdG9yKTsKIAogCQloZG1pX3RvX2RpZ19wb3J0KGlu dGVsX2hkbWkpLT5iYXNlLnR5cGUgPSBJTlRFTF9PVVRQVVRfSERNSTsKIAkJc3RhdHVzID0gY29u bmVjdG9yX3N0YXR1c19jb25uZWN0ZWQ7Ci0JfSBlbHNlCisJCURSTV9ERUJVR19EUklWRVIoImhk bWkgc3RhdHVzID0gY29ubmVjdGVkXG4iKTsKKwl9IGVsc2UgewogCQlzdGF0dXMgPSBjb25uZWN0 b3Jfc3RhdHVzX2Rpc2Nvbm5lY3RlZDsKLQotCWludGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9w cml2LCBQT1dFUl9ET01BSU5fR01CVVMpOworCQlEUk1fREVCVUdfRFJJVkVSKCJoZG1pIHN0YXR1 cyA9IGRpc2Nvbm5lY3RlZFxuIik7CisJfQogCiAJcmV0dXJuIHN0YXR1czsKIH0KQEAgLTIxMzEs NiArMjE2MSw4IEBAIHZvaWQgaW50ZWxfaGRtaV9pbml0X2Nvbm5lY3RvcihzdHJ1Y3QgaW50ZWxf ZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCwKIAogCWludGVsX2hkbWlfYWRkX3Byb3BlcnRp ZXMoaW50ZWxfaGRtaSwgY29ubmVjdG9yKTsKIAorCWludGVsX2VuY29kZXItPmhvdF9wbHVnID0g aW50ZWxfaGRtaV9ob3RfcGx1ZzsKKwogCWludGVsX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rlcihp bnRlbF9jb25uZWN0b3IsIGludGVsX2VuY29kZXIpOwogCWRybV9jb25uZWN0b3JfcmVnaXN0ZXIo Y29ubmVjdG9yKTsKIAlpbnRlbF9oZG1pLT5hdHRhY2hlZF9jb25uZWN0b3IgPSBpbnRlbF9jb25u ZWN0b3I7Ci0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZngK