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: Thu, 10 Dec 2015 10:00:25 +0530 Message-ID: <1449721825-24651-1-git-send-email-sonika.jindal@intel.com> References: <20151006082821.GR3383@phenom.ffwll.local> 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 866876E36B for ; Wed, 9 Dec 2015 20:43:27 -0800 (PST) In-Reply-To: <20151006082821.GR3383@phenom.ffwll.local> 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 byBlbmNvZGVyIGhvdHBsdWcgZHVyaW5nIGluaXQgdG8gc2VwYXJhdGUgcGF0Y2goRGFuaWVsKQp2 NjogUmViYXNlZC4KClNpZ25lZC1vZmYtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hh cm1hQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogU29uaWthIEppbmRhbCA8c29uaWthLmppbmRh bEBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jIHwgNTgg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg NDUgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfaGRt aS5jCmluZGV4IGJkZDQ2MmUuLjE2ZGQyYTcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2hkbWkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMK QEAgLTEzODEsMTggKzEzODEsMTYgQEAgaW50ZWxfaGRtaV9zZXRfZWRpZChzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLCBib29sIGZvcmNlKQogCXJldHVybiBjb25uZWN0ZWQ7CiB9CiAK LXN0YXRpYyBlbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVzCi1pbnRlbF9oZG1pX2RldGVjdChzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBib29sIGZvcmNlKQordm9pZCBpbnRlbF9oZG1p X2hvdF9wbHVnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9lbmNvZGVyKQogewotCWVudW0g ZHJtX2Nvbm5lY3Rvcl9zdGF0dXMgc3RhdHVzOwotCXN0cnVjdCBpbnRlbF9oZG1pICppbnRlbF9o ZG1pID0gaW50ZWxfYXR0YWNoZWRfaGRtaShjb25uZWN0b3IpOwotCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY29ubmVjdG9yLT5kZXYpOworCXN0cnVjdCBpbnRl bF9oZG1pICppbnRlbF9oZG1pID0KKwkJCWVuY190b19pbnRlbF9oZG1pKCZpbnRlbF9lbmNvZGVy LT5iYXNlKTsKKwlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IgPQorCQkJ CWludGVsX2hkbWktPmF0dGFjaGVkX2Nvbm5lY3RvcjsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGludGVsX2VuY29kZXItPmJhc2UuZGV2KTsKIAlib29sIGxp dmVfc3RhdHVzID0gZmFsc2U7CiAJdW5zaWduZWQgaW50IHJldHJ5ID0gMzsKIAotCURSTV9ERUJV R19LTVMoIltDT05ORUNUT1I6JWQ6JXNdXG4iLAotCQkgICAgICBjb25uZWN0b3ItPmJhc2UuaWQs IGNvbm5lY3Rvci0+bmFtZSk7Ci0KIAlpbnRlbF9kaXNwbGF5X3Bvd2VyX2dldChkZXZfcHJpdiwg UE9XRVJfRE9NQUlOX0dNQlVTKTsKIAogCXdoaWxlICghbGl2ZV9zdGF0dXMgJiYgLS1yZXRyeSkg ewpAQCAtMTQwMCwyMSArMTM5OCw1MyBAQCBpbnRlbF9oZG1pX2RldGVjdChzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLCBib29sIGZvcmNlKQogCQkJCWhkbWlfdG9fZGlnX3BvcnQoaW50 ZWxfaGRtaSkpOwogCQltZGVsYXkoMTApOwogCX0KKwlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChk ZXZfcHJpdiwgUE9XRVJfRE9NQUlOX0dNQlVTKTsKIAogCWlmICghbGl2ZV9zdGF0dXMpCiAJCURS TV9ERUJVR19LTVMoIkxpdmUgc3RhdHVzIG5vdCB1cCEiKTsKIAotCWludGVsX2hkbWlfdW5zZXRf ZWRpZChjb25uZWN0b3IpOworCS8qCisJICogV2UgYXJlIGhlcmUsIG1lYW5zIHRoZXJlIGlzIGEg aG90cGx1ZyBvciBhIGZvcmNlCisJICogZGV0ZWN0aW9uLiBDbGVhciB0aGUgY2FjaGVkIEVESUQg YW5kIHByb2JlIHRoZQorCSAqIEREQyBidXMgdG8gY2hlY2sgdGhlIGN1cnJlbnQgc3RhdHVzIG9m IEhETUkuCisJICovCisJaW50ZWxfaGRtaV91bnNldF9lZGlkKCZpbnRlbF9jb25uZWN0b3ItPmJh c2UpOworCWlmIChpbnRlbF9oZG1pX3NldF9lZGlkKCZpbnRlbF9jb25uZWN0b3ItPmJhc2UsIGxp dmVfc3RhdHVzKSkKKwkJRFJNX0RFQlVHX0RSSVZFUigiRERDIHByb2JlOiBnb3QgRURJRFxuIik7 CisJZWxzZQorCQlEUk1fREVCVUdfRFJJVkVSKCJEREMgcHJvYmU6IG5vIEVESURcbiIpOworfQor CitzdGF0aWMgZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cworaW50ZWxfaGRtaV9kZXRlY3Qoc3Ry dWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgYm9vbCBmb3JjZSkKK3sKKwllbnVtIGRybV9j b25uZWN0b3Jfc3RhdHVzIHN0YXR1czsKKwlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9j b25uZWN0b3IgPQorCQkJCXRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpOwogCi0JaWYgKGlu dGVsX2hkbWlfc2V0X2VkaWQoY29ubmVjdG9yLCBsaXZlX3N0YXR1cykpIHsKKwlEUk1fREVCVUdf S01TKCJbQ09OTkVDVE9SOiVkOiVzXVxuIiwKKwkJICAgICAgY29ubmVjdG9yLT5iYXNlLmlkLCBj b25uZWN0b3ItPm5hbWUpOworCisJLyoKKwkgKiBUaGVyZSBhcmUgbWFueSB1c2Vyc3BhY2UgY2Fs bHMgd2hpY2ggcHJvYmUgRURJRCBmcm9tCisJICogZGV0ZWN0IHBhdGguIEluIGNhc2Ugb2YgbXVs dGlwbGUgaG90cGx1Zy91bnBsdWcsIHRoZXNlCisJICogY2FuIGNhdXNlIHJhY2UgY29uZGl0aW9u cyB3aGlsZSBwcm9iaW5nIEVESUQuIEFsc28gaXRzCisJICogd2FzdGUgb2YgQ1BVIGN5Y2xlcyB0 byByZWFkIHRoZSBFRElEIGFnYWluIGFuZCBhZ2FpbgorCSAqIHVubGVzcyB0aGVyZSBpcyBhIHJl YWwgaG90cGx1Zy4KKwkgKiBTbywgcmVseSBvbiBob3RwbHVncyBhbmQgaW5pdCB0byByZWFkIGVk aWQuCisJICogQ2hlY2sgY29ubmVjdG9yIHN0YXR1cyBiYXNlZCBvbiBhdmFpbGFiaWxpdHkgb2Yg Y2FjaGVkIEVESUQuCisJICovCisKKwlpZiAoaW50ZWxfY29ubmVjdG9yLT5kZXRlY3RfZWRpZCkg ewogCQlzdHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGludGVsX2F0dGFjaGVkX2hkbWko Y29ubmVjdG9yKTsKIAogCQloZG1pX3RvX2RpZ19wb3J0KGludGVsX2hkbWkpLT5iYXNlLnR5cGUg PSBJTlRFTF9PVVRQVVRfSERNSTsKIAkJc3RhdHVzID0gY29ubmVjdG9yX3N0YXR1c19jb25uZWN0 ZWQ7Ci0JfSBlbHNlCisJCURSTV9ERUJVR19EUklWRVIoImhkbWkgc3RhdHVzID0gY29ubmVjdGVk XG4iKTsKKwl9IGVsc2UgewogCQlzdGF0dXMgPSBjb25uZWN0b3Jfc3RhdHVzX2Rpc2Nvbm5lY3Rl ZDsKLQotCWludGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LCBQT1dFUl9ET01BSU5fR01C VVMpOworCQlEUk1fREVCVUdfRFJJVkVSKCJoZG1pIHN0YXR1cyA9IGRpc2Nvbm5lY3RlZFxuIik7 CisJfQogCiAJcmV0dXJuIHN0YXR1czsKIH0KQEAgLTIxMzEsNiArMjE2MSw4IEBAIHZvaWQgaW50 ZWxfaGRtaV9pbml0X2Nvbm5lY3RvcihzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9k aWdfcG9ydCwKIAogCWludGVsX2hkbWlfYWRkX3Byb3BlcnRpZXMoaW50ZWxfaGRtaSwgY29ubmVj dG9yKTsKIAorCWludGVsX2VuY29kZXItPmhvdF9wbHVnID0gaW50ZWxfaGRtaV9ob3RfcGx1ZzsK KwogCWludGVsX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcihpbnRlbF9jb25uZWN0b3IsIGludGVs X2VuY29kZXIpOwogCWRybV9jb25uZWN0b3JfcmVnaXN0ZXIoY29ubmVjdG9yKTsKIAlpbnRlbF9o ZG1pLT5hdHRhY2hlZF9jb25uZWN0b3IgPSBpbnRlbF9jb25uZWN0b3I7Ci0tIAoxLjkuMQoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK