From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sonika Jindal Subject: [PATCH 2/2] drm/i915: Add hot_plug hook for hdmi encoder Date: Mon, 5 Oct 2015 16:43:15 +0530 Message-ID: <1444043595-26502-2-git-send-email-sonika.jindal@intel.com> References: <20150928133411.GI3383@phenom.ffwll.local> <1444043595-26502-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 mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 453C36E9AF for ; Mon, 5 Oct 2015 04:25:17 -0700 (PDT) In-Reply-To: <1444043595-26502-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 VGhpcyBwYXRjaCBhZGRzIGEgc2VwYXJhdGUgcHJvYmUgZnVuY3Rpb24gZm9yIEhETUkKRURJRCBy ZWFkIG92ZXIgRERDIGNoYW5uZWwuIFRoaXMgZnVuY3Rpb24gaGFzIGJlZW4KcmVnaXN0ZXJlZCBh cyBhIC5ob3RfcGx1ZyBoYW5kbGVyIGZvciBIRE1JIGVuY29kZXIuCgpUaGUgY3VycmVudCBpbXBs ZW1lbnRhdGlvbiBvZiBoZG1pX2RldGVjdCgpCmZ1bmN0aW9uIHJlLXNldHMgdGhlIGNhY2hlZCBI RE1JIGVkaWQgKGluIGNvbm5lY3Rvci0+ZGV0ZWN0X2VkaWQpIGluCmV2ZXJ5IGRldGVjdCBjYWxs LlRoaXMgZnVuY3Rpb24gZ2V0cyBjYWxsZWQgbWFueSB0aW1lcywgc29tZXRpbWVzCmRpcmVjdGx5 IGZyb20gdXNlcnNwYWNlIHByb2JlcywgZm9yY2luZyBkcml2ZXJzIHRvIHJlYWQgRURJRCBldmVy eQpkZXRlY3QgZnVuY3Rpb24gY2FsbC5UaGlzIGNhdXNlcyBzZXZlcmFsIHByb2JsZW1zIGxpa2U6 CgoxLiBSYWNlIGNvbmRpdGlvbnMgaW4gbXVsdGlwbGUgaG90X3BsdWcgLyB1bnBsdWcgY2FzZXMs IGJldHdlZW4KICAgaW50ZXJydXB0cyBib3R0b20gaGFsdmVzIGFuZCB1c2Vyc3BhY2UgZGV0ZWN0 aW9ucy4KMi4gTWFueSBVbi1uZWNlc3NhcnkgRURJRCByZWFkcyBmb3Igc2luZ2xlIGhvdHBsdWcv dW5wbHVnCjMuIEhETUkgY29tcGxhaW5jZSBmYWlsdXJlcyB3aGljaCBleHBlY3RzIG9ubHkgb25l IEVESUQgcmVhZCBwZXIgaG90cGx1ZwoKVGhpcyBmdW5jdGlvbiB3aWxsIGJlIHNlcnZpbmcgdGhl IHB1cnBvc2Ugb2YgcmVhbGx5IHJlYWRpbmcgdGhlIEVESUQKYnkgcmVhbGx5IHByb2JpbmcgdGhl IEREQyBjaGFubmVsLCBhbmQgdXBkYXRpbmcgdGhlIGNhY2hlZCBFRElELgoKVGhlIHBsYW4gaXMg dG86CjEuIGk5MTUgSVJRIGhhbmRsZXIgYm90dG9tIGhhbGYgZnVuY3Rpb24gYWxyZWFkeSBjYWxs cwogICBpbnRlbF9lbmNvZGVyLT5ob3RwbHVnKCkgZnVuY3Rpb24uIEFkZGluZyBUaGlzIHByb2Jl IGZ1bmN0aW9uIHdoaWNoCiAgIHdpbGwgcmVhZCB0aGUgRURJRCBvbmx5IGluIGNhc2Ugb2YgYSBo b3RwbHVnIC8gdW5wbHVnLgoyLiBEdXJpbmcgaW5pdF9jb25uZWN0b3IgdGhpcyBwcm9iZSB3aWxs IGJlIGNhbGxlZCB0byByZWFkIHRoZSBlZGlkCjMuIFJldXNlIHRoZSBjYWNoZWQgRURJRCBpbiBo ZG1pX2RldGVjdCgpIGZ1bmN0aW9uLgoKVGhlICI8IGdlbjciIGNoZWNrIGlzIHRoZXJlIGJlY2F1 c2UgdGhpcyB3YXMgdGVzdGVkIG9ubHkgZm9yID49Z2VuNwpwbGF0Zm9ybXMuIEZvciBvbGRlciBw bGF0Zm9ybXMgdGhlIGhvdHBsdWcvcmVhZGluZyBlZGlkIHBhdGggcmVtYWlucyBzYW1lLgoKdjI6 IENhbGxpbmcgc2V0X2VkaWQgaW5zdGVhZCBvZiBoZG1pX3Byb2JlIGR1cmluZyBpbml0LgpBbHNv LCBmb3IgcGxhdGZvcm1zIGhhdmluZyBEREksIGludGVsX2VuY29kZXIgZm9yIERQIGFuZCBIRE1J IGlzIHNhbWUKKHRha2VuIGZyb20gaW50ZWxfZGlnX3BvcnQpLCBzbyBmb3IgRFAgYWxzbywgaG90 X3BsdWcgZnVuY3Rpb24gZ2V0cyBjYWxsZWQKd2hpY2ggaXMgbm90IGludGVuZGVkIGhlcmUuIFNv LCBjaGVjayBmb3IgSERNSSBpbiBpbnRlbF9oZG1pX3Byb2JlClJlbHkgb24gSFBEIGZvciB1cGRh dGluZyBlZGlkIG9ubHkgZm9yIHBsYXRmb3JtcyBnZW4gPiA4IGFuZCBhbHNvIGZvciBWTFYuCgp2 MzogRHJvcHBpbmcgdGhlIGdlbiA8IDggfHwgIVZMViAgY2hlY2suIE5vdyBhbGwgcGxhdGZvcm1z IHNob3VsZCByZWx5IG9uCmhvdHBsdWcgb3IgaW5pdCBmb3IgdXBkYXRpbmcgdGhlIGVkaWQuKERh bmllbCkKQWxzbywgY2FsbGluZyBoZG1pX3Byb2JlIGluIGluaXQgaW5zdGVhZCBvZiBzZXRfZWRp ZAoKdjQ6IFJlbmFtaW5nIGludGVsX2hkbWlfcHJvYmUgdG8gaW50ZWxfaGRtaV9ob3RfcGx1Zy4K QWxzbyBjYWxsaW5nIHRoaXMgaG90cGx1ZyBoYW5kbGVyIGZyb20gaW50ZWxfaHBkX2luaXQgdG8g dGFrZSBjYXJlIG9mIGluaXQKcmVzdW1lIHNjZW5hcmlvcy4KCnY1OiBNb3ZlZCB0aGUgY2FsbCB0 byBlbmNvZGVyIGhvdHBsdWcgZHVyaW5nIGluaXQgdG8gc2VwYXJhdGUgcGF0Y2goRGFuaWVsKQoK U2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29t PgpTaWduZWQtb2ZmLWJ5OiBTb25pa2EgSmluZGFsIDxzb25pa2EuamluZGFsQGludGVsLmNvbT4K LS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMgfCAgIDU0ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0MyBpbnNlcnRpb25z KCspLCAxMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKaW5kZXggYmIz M2M2Ni4uOWMxYTMwOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRt aS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwpAQCAtMTM2OSwxOCAr MTM2OSwxNiBAQCBpbnRlbF9oZG1pX3NldF9lZGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IsIGJvb2wgZm9yY2UpCiAJcmV0dXJuIGNvbm5lY3RlZDsKIH0KIAotc3RhdGljIGVudW0g ZHJtX2Nvbm5lY3Rvcl9zdGF0dXMKLWludGVsX2hkbWlfZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVj dG9yICpjb25uZWN0b3IsIGJvb2wgZm9yY2UpCit2b2lkIGludGVsX2hkbWlfaG90X3BsdWcoc3Ry dWN0IGludGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIpCiB7Ci0JZW51bSBkcm1fY29ubmVjdG9y X3N0YXR1cyBzdGF0dXM7Ci0Jc3RydWN0IGludGVsX2hkbWkgKmludGVsX2hkbWkgPSBpbnRlbF9h dHRhY2hlZF9oZG1pKGNvbm5lY3Rvcik7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShjb25uZWN0b3ItPmRldik7CisJc3RydWN0IGludGVsX2hkbWkgKmludGVs X2hkbWkgPQorCQkJZW5jX3RvX2ludGVsX2hkbWkoJmludGVsX2VuY29kZXItPmJhc2UpOworCXN0 cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9CisJCQkJaW50ZWxfaGRtaS0+ YXR0YWNoZWRfY29ubmVjdG9yOworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IHRvX2k5MTUoaW50ZWxfZW5jb2Rlci0+YmFzZS5kZXYpOwogCWJvb2wgbGl2ZV9zdGF0dXMgPSBm YWxzZTsKIAl1bnNpZ25lZCBpbnQgcmV0cnkgPSAzOwogCi0JRFJNX0RFQlVHX0tNUygiW0NPTk5F Q1RPUjolZDolc11cbiIsCi0JCSAgICAgIGNvbm5lY3Rvci0+YmFzZS5pZCwgY29ubmVjdG9yLT5u YW1lKTsKLQogCXdoaWxlICghbGl2ZV9zdGF0dXMgJiYgLS1yZXRyeSkgewogCQlsaXZlX3N0YXR1 cyA9IGludGVsX2RpZ2l0YWxfcG9ydF9jb25uZWN0ZWQoZGV2X3ByaXYsCiAJCQkJaGRtaV90b19k aWdfcG9ydChpbnRlbF9oZG1pKSk7CkBAIC0xMzkwLDE1ICsxMzg4LDQ4IEBAIGludGVsX2hkbWlf ZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIGJvb2wgZm9yY2UpCiAJaWYg KCFsaXZlX3N0YXR1cykKIAkJRFJNX0RFQlVHX0tNUygiTGl2ZSBzdGF0dXMgbm90IHVwISIpOwog Ci0JaW50ZWxfaGRtaV91bnNldF9lZGlkKGNvbm5lY3Rvcik7CisJLyoKKwkgKiBXZSBhcmUgaGVy ZSwgbWVhbnMgdGhlcmUgaXMgYSBob3RwbHVnIG9yIGEgZm9yY2UKKwkgKiBkZXRlY3Rpb24uIENs ZWFyIHRoZSBjYWNoZWQgRURJRCBhbmQgcHJvYmUgdGhlCisJICogRERDIGJ1cyB0byBjaGVjayB0 aGUgY3VycmVudCBzdGF0dXMgb2YgSERNSS4KKwkgKi8KKwlpbnRlbF9oZG1pX3Vuc2V0X2VkaWQo JmludGVsX2Nvbm5lY3Rvci0+YmFzZSk7CisJaWYgKGludGVsX2hkbWlfc2V0X2VkaWQoJmludGVs X2Nvbm5lY3Rvci0+YmFzZSwgbGl2ZV9zdGF0dXMpKQorCQlEUk1fREVCVUdfRFJJVkVSKCJEREMg cHJvYmU6IGdvdCBFRElEXG4iKTsKKwllbHNlCisJCURSTV9ERUJVR19EUklWRVIoIkREQyBwcm9i ZTogbm8gRURJRFxuIik7Cit9CiAKLQlpZiAoaW50ZWxfaGRtaV9zZXRfZWRpZChjb25uZWN0b3Is IGxpdmVfc3RhdHVzKSkgeworc3RhdGljIGVudW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMKK2ludGVs X2hkbWlfZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsIGJvb2wgZm9yY2Up Cit7CisJZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBzdGF0dXM7CisJc3RydWN0IGludGVsX2Nv bm5lY3RvciAqaW50ZWxfY29ubmVjdG9yID0KKwkJCQl0b19pbnRlbF9jb25uZWN0b3IoY29ubmVj dG9yKTsKKworCURSTV9ERUJVR19LTVMoIltDT05ORUNUT1I6JWQ6JXNdXG4iLAorCQkgICAgICBj b25uZWN0b3ItPmJhc2UuaWQsIGNvbm5lY3Rvci0+bmFtZSk7CisKKwkvKgorCSAqIFRoZXJlIGFy ZSBtYW55IHVzZXJzcGFjZSBjYWxscyB3aGljaCBwcm9iZSBFRElEIGZyb20KKwkgKiBkZXRlY3Qg cGF0aC4gSW4gY2FzZSBvZiBtdWx0aXBsZSBob3RwbHVnL3VucGx1ZywgdGhlc2UKKwkgKiBjYW4g Y2F1c2UgcmFjZSBjb25kaXRpb25zIHdoaWxlIHByb2JpbmcgRURJRC4gQWxzbyBpdHMKKwkgKiB3 YXN0ZSBvZiBDUFUgY3ljbGVzIHRvIHJlYWQgdGhlIEVESUQgYWdhaW4gYW5kIGFnYWluCisJICog dW5sZXNzIHRoZXJlIGlzIGEgcmVhbCBob3RwbHVnLgorCSAqIFNvLCByZWx5IG9uIGhvdHBsdWdz IGFuZCBpbml0IHRvIHJlYWQgZWRpZC4KKwkgKiBDaGVjayBjb25uZWN0b3Igc3RhdHVzIGJhc2Vk IG9uIGF2YWlsYWJpbGl0eSBvZiBjYWNoZWQgRURJRC4KKwkgKi8KKworCWlmIChpbnRlbF9jb25u ZWN0b3ItPmRldGVjdF9lZGlkKSB7CiAJCXN0cnVjdCBpbnRlbF9oZG1pICppbnRlbF9oZG1pID0g aW50ZWxfYXR0YWNoZWRfaGRtaShjb25uZWN0b3IpOwogCiAJCWhkbWlfdG9fZGlnX3BvcnQoaW50 ZWxfaGRtaSktPmJhc2UudHlwZSA9IElOVEVMX09VVFBVVF9IRE1JOwogCQlzdGF0dXMgPSBjb25u ZWN0b3Jfc3RhdHVzX2Nvbm5lY3RlZDsKLQl9IGVsc2UKKwkJRFJNX0RFQlVHX0RSSVZFUigiaGRt aSBzdGF0dXMgPSBjb25uZWN0ZWRcbiIpOworCX0gZWxzZSB7CiAJCXN0YXR1cyA9IGNvbm5lY3Rv cl9zdGF0dXNfZGlzY29ubmVjdGVkOworCQlEUk1fREVCVUdfRFJJVkVSKCJoZG1pIHN0YXR1cyA9 IGRpc2Nvbm5lY3RlZFxuIik7CisJfQogCiAJcmV0dXJuIHN0YXR1czsKIH0KQEAgLTIxMzEsNiAr MjE2Miw3IEBAIHZvaWQgaW50ZWxfaGRtaV9pbml0X2Nvbm5lY3RvcihzdHJ1Y3QgaW50ZWxfZGln aXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCwKIAlpbnRlbF9jb25uZWN0b3ItPnVucmVnaXN0ZXIg PSBpbnRlbF9jb25uZWN0b3JfdW5yZWdpc3RlcjsKIAogCWludGVsX2hkbWlfYWRkX3Byb3BlcnRp ZXMoaW50ZWxfaGRtaSwgY29ubmVjdG9yKTsKKwlpbnRlbF9lbmNvZGVyLT5ob3RfcGx1ZyA9IGlu dGVsX2hkbWlfaG90X3BsdWc7CiAKIAlpbnRlbF9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoaW50 ZWxfY29ubmVjdG9yLCBpbnRlbF9lbmNvZGVyKTsKIAlkcm1fY29ubmVjdG9yX3JlZ2lzdGVyKGNv bm5lY3Rvcik7Ci0tIAoxLjcuMTAuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK