From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH v3 06/14] drm: create hdmi output property Date: Wed, 14 Jun 2017 23:17:37 +0530 Message-ID: <1497462465-14066-7-git-send-email-shashank.sharma@intel.com> References: <1497462465-14066-1-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1497462465-14066-1-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, ville.syrjala@linux.intel.com Cc: Daniel Vetter , ander.conselvan.de.oliveira@intel.com, Jose Abreu List-Id: dri-devel@lists.freedesktop.org SERNSSBkaXNwbGF5cyBjYW4gc3VwcG9ydCB2YXJpb3VzIG91dHB1dCB0eXBlcywgYmFzZWQgb24K dGhlIGNvbG9yIHNwYWNlIGFuZCBzdWJzYW1wbGluZyB0eXBlLiBUaGUgcG9zc2libGUKb3V0cHV0 cyBmcm9tIGEgSERNSSAyLjAgbW9uaXRvciBjb3VsZCBiZToKIC0gUkdCCiAtIFlDQkNSIDQ0NAog LSBZQ0JDUiA0MjIKIC0gWUNCQ1IgNDIwCgpUaGlzIHBhdGNoIGFkZHMgYSBkcm0gcHJvcGVydHkg ImhkbWlfb3V0cHV0X2Zvcm1hdCIsIHVzaW5nIHdoaWNoLAphIHVzZXIgY2FuIHNwZWNpZnkgaXRz IHByZWZlcmVuY2UsIGZvciB0aGUgSERNSSBvdXRwdXQgdHlwZS4gVGhlCm91dHB1dCB0eXBlIGVu dW1zIGFyZSBzaW1pbGFyIHRvIHRoZSBtZW50aW9uZWQgb3V0cHV0cyBhYm92ZS4gVG8KaGFuZGxl IHZhcmlvdXMgc3Vic2FtcGxpbmcgb2YgWUNCQ1Igb3V0cHV0IHR5cGVzLCB0aGlzIHByb3BlcnR5 CmFsbG93cyB0d28gc3BlY2lhbCBjYXNlczoKIC0gRFJNX0hETUlfT1VUUFVUX1lDQkNSX0hRCiAg IFRoaXMgaW5kaWNhdGVzIHByZWZlcnJlZCBvdXRwdXQgc2hvdWxkIGJlIFlDQkNSIG91dHB1dCwg d2l0aCBoaWdoZXN0CiAgIHN1YnNhbXBsaW5nIHJhdGUgYnkgdGhlIHNvdXJjZS9zaW5rLCB3aGlj aCBjYW4gYmUgdHlwaWNhbGx5OgogCS0geWNiY3I0NDQKIAktIHljYmNyNDIyCiAJLSB5Y2JjcjQy MAogLSBEUk1fSERNSV9PVVRQVVRfWUNCQ1JfTFEKICAgVGhpcyBpbmRpY2F0ZXMgcHJlZmVycmVk IG91dHB1dCBzaG91bGQgYmUgWUNCQ1Igb3V0cHV0LCB3aXRoIGxvd2VzdAogICBzdWJzYW1wbGlu ZyByYXRlIHN1cHBvcnRlZCBieSBzb3VyY2Uvc2luaywgd2hpY2ggY2FuIGJlOgogCS0geWNiY3I0 MjAKIAktIHljYmNyNDIyCiAJLSB5Y2JjcjQ0NAoKRGVmYXVsdCB2YWx1ZSBvZiB0aGUgcHJvcGVy dHkgaXMgc2V0IHRvIDAgPSBSR0IsIHNvIG5vIGNoYW5nZXMgaWYgeW91CmRvbnQgc2V0IHRoZSBw cm9wZXJ0eS4KClBTOiBXaGlsZSBkb2luZyBtb2Rlc2V0IGZvciBZQ0JDUiA0MjAgb25seSBtb2Rl cywgdGhpcyBwcm9wZXJ0eSBpcwogICAgaWdub3JlZCwgYXMgdGhvc2UgdGltaW5ncyBjYW4gYmUg c3VwcG9ydGVkIG9ubHkgaW4gWUNCQ1IgNDIwCiAgICBvdXRwdXQgbW9kZS4KClYyOiBBZGRlZCBk ZXNjcmlwdGlvbiBmb3IgdGhlIG5ldyB2YXJpYWJsZSB0byBhZGRyZXNzIGJ1aWxkIHdhcm5pbmcK VjM6IFJlYmFzZQoKQ2M6IFZpbGxlIFN5cmphbGEgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwu Y29tPgpDYzogSm9zZSBBYnJldSA8am9hYnJldUBzeW5vcHN5cy5jb20+CkNjOiBEYW5pZWwgVmV0 dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hh cm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9kcm1f YXRvbWljLmMgICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBl ci5jIHwgIDQgKysrKwogZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyAgICAgfCAzMiAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rv ci5oICAgICAgICAgfCAxOCArKysrKysrKysrKysrKysrKysKIGluY2x1ZGUvZHJtL2RybV9tb2Rl X2NvbmZpZy5oICAgICAgIHwgIDUgKysrKysKIDUgZmlsZXMgY2hhbmdlZCwgNjEgaW5zZXJ0aW9u cygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2F0b21pYy5jCmluZGV4IDc3ZGNlZjAuLjlmMWQ0NmQgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9h dG9taWMuYwpAQCAtMTE5Miw2ICsxMTkyLDggQEAgaW50IGRybV9hdG9taWNfY29ubmVjdG9yX3Nl dF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQlzdGF0ZS0+cGlj dHVyZV9hc3BlY3RfcmF0aW8gPSB2YWw7CiAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25uZWN0 b3ItPnNjYWxpbmdfbW9kZV9wcm9wZXJ0eSkgewogCQlzdGF0ZS0+c2NhbGluZ19tb2RlID0gdmFs OworCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5oZG1pX291dHB1dF9wcm9wZXJ0eSkg eworCQlzdGF0ZS0+aGRtaV9vdXRwdXQgPSB2YWw7CiAJfSBlbHNlIGlmIChjb25uZWN0b3ItPmZ1 bmNzLT5hdG9taWNfc2V0X3Byb3BlcnR5KSB7CiAJCXJldHVybiBjb25uZWN0b3ItPmZ1bmNzLT5h dG9taWNfc2V0X3Byb3BlcnR5KGNvbm5lY3RvciwKIAkJCQlzdGF0ZSwgcHJvcGVydHksIHZhbCk7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCmluZGV4IDg2ZDMwOTMuLjEzNTZiM2YgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCkBAIC02MzcsNiArNjM3LDEwIEBAIGRybV9h dG9taWNfaGVscGVyX2NoZWNrX21vZGVzZXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCWlm IChvbGRfY29ubmVjdG9yX3N0YXRlLT5saW5rX3N0YXR1cyAhPQogCQkJICAgIG5ld19jb25uZWN0 b3Jfc3RhdGUtPmxpbmtfc3RhdHVzKQogCQkJCW5ld19jcnRjX3N0YXRlLT5jb25uZWN0b3JzX2No YW5nZWQgPSB0cnVlOworCisJCQlpZiAob2xkX2Nvbm5lY3Rvcl9zdGF0ZS0+aGRtaV9vdXRwdXQg IT0KKwkJCSAgICBuZXdfY29ubmVjdG9yX3N0YXRlLT5oZG1pX291dHB1dCkKKwkJCQluZXdfY3J0 Y19zdGF0ZS0+Y29ubmVjdG9yc19jaGFuZ2VkID0gdHJ1ZTsKIAkJfQogCiAJCWlmIChmdW5jcy0+ YXRvbWljX2NoZWNrKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3Iu YyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMKaW5kZXggNWNkNjFhZi4uZjNjNTky OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCkBAIC0yMjcsNiArMjI3LDExIEBAIGludCBkcm1f Y29ubmVjdG9yX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCQkJICAgICAgY29uZmln LT5lZGlkX3Byb3BlcnR5LAogCQkJCQkgICAgICAwKTsKIAorCWlmIChjb25uZWN0b3JfdHlwZSAh PSBEUk1fTU9ERV9DT05ORUNUT1JfVklSVFVBTCkKKwkJZHJtX29iamVjdF9hdHRhY2hfcHJvcGVy dHkoJmNvbm5lY3Rvci0+YmFzZSwKKwkJCQkJICAgY29uZmlnLT5oZG1pX291dHB1dF9wcm9wZXJ0 eSwKKwkJCQkJICAgMCk7CisKIAlkcm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eSgmY29ubmVjdG9y LT5iYXNlLAogCQkJCSAgICAgIGNvbmZpZy0+ZHBtc19wcm9wZXJ0eSwgMCk7CiAKQEAgLTYxNyw2 ICs2MjIsMjYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fcHJvcF9lbnVtX2xpc3QgZHJtX2xp bmtfc3RhdHVzX2VudW1fbGlzdFtdID0gewogfTsKIERSTV9FTlVNX05BTUVfRk4oZHJtX2dldF9s aW5rX3N0YXR1c19uYW1lLCBkcm1fbGlua19zdGF0dXNfZW51bV9saXN0KQogCitzdGF0aWMgY29u c3Qgc3RydWN0IGRybV9wcm9wX2VudW1fbGlzdCBkcm1faGRtaV9vdXRwdXRfZW51bV9saXN0W10g PSB7CisJeyBEUk1fSERNSV9PVVRQVVRfREVGQVVMVF9SR0IsICJvdXRwdXRfcmdiIiB9LAorCXsg RFJNX0hETUlfT1VUUFVUX1lDQkNSNDQ0LCAib3V0cHV0X3ljYmNyNDQ0IiB9LAorCXsgRFJNX0hE TUlfT1VUUFVUX1lDQkNSNDIyLCAib3V0cHV0X3ljYmNyNDIyIiB9LAorCXsgRFJNX0hETUlfT1VU UFVUX1lDQkNSNDIwLCAib3V0cHV0X3ljYmNyNDIwIiB9LAorCXsgRFJNX0hETUlfT1VUUFVUX1lD QkNSX0hRLCAib3V0cHV0X3ljYmNyX2hpZ2hfc3Vic2FtcGxpbmciIH0sCisJeyBEUk1fSERNSV9P VVRQVVRfWUNCQ1JfTFEsICJvdXRwdXRfeWNiY3JfbG93X3N1YnNhbXBsaW5nIiB9LAorCXsgRFJN X0hETUlfT1VUUFVUX0lOVkFMSUQsICJpbnZhbGlkX291dHB1dCIgfSwKK307CisKKy8qKgorICog ZHJtX2dldF9oZG1pX291dHB1dF9uYW1lIC0gcmV0dXJuIGEgc3RyaW5nIGZvciBhIGdpdmVuIGhk bWkgb3V0cHV0IGVudW0KKyAqIEB0eXBlOiBlbnVtIG9mIG91dHB1dCB0eXBlCisgKi8KK2NvbnN0 IGNoYXIgKmRybV9nZXRfaGRtaV9vdXRwdXRfbmFtZShlbnVtIGRybV9oZG1pX291dHB1dF90eXBl IHR5cGUpCit7CisJcmV0dXJuIGRybV9oZG1pX291dHB1dF9lbnVtX2xpc3RbdHlwZV0ubmFtZTsK K30KK0VYUE9SVF9TWU1CT0woZHJtX2dldF9oZG1pX291dHB1dF9uYW1lKTsKKwogLyoqCiAgKiBk cm1fZGlzcGxheV9pbmZvX3NldF9idXNfZm9ybWF0cyAtIHNldCB0aGUgc3VwcG9ydGVkIGJ1cyBm b3JtYXRzCiAgKiBAaW5mbzogZGlzcGxheSBpbmZvIHRvIHN0b3JlIGJ1cyBmb3JtYXRzIGluCkBA IC03ODksNiArODE0LDEzIEBAIGludCBkcm1fY29ubmVjdG9yX2NyZWF0ZV9zdGFuZGFyZF9wcm9w ZXJ0aWVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCXJldHVybiAtRU5PTUVNOwogCWRldi0+ bW9kZV9jb25maWcubGlua19zdGF0dXNfcHJvcGVydHkgPSBwcm9wOwogCisJcHJvcCA9IGRybV9w cm9wZXJ0eV9jcmVhdGVfZW51bShkZXYsIDAsICJoZG1pX291dHB1dF9mb3JtYXQiLAorCQkJCQlk cm1faGRtaV9vdXRwdXRfZW51bV9saXN0LAorCQkJCQlBUlJBWV9TSVpFKGRybV9oZG1pX291dHB1 dF9lbnVtX2xpc3QpKTsKKwlpZiAoIXByb3ApCisJCXJldHVybiAtRU5PTUVNOworCWRldi0+bW9k ZV9jb25maWcuaGRtaV9vdXRwdXRfcHJvcGVydHkgPSBwcm9wOworCiAJcmV0dXJuIDA7CiB9CiAK ZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBiL2luY2x1ZGUvZHJtL2Ry bV9jb25uZWN0b3IuaAppbmRleCA1YTQ3YzMzLi5iMjg3ZmJjIDEwMDY0NAotLS0gYS9pbmNsdWRl L2RybS9kcm1fY29ubmVjdG9yLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCkBA IC0zMjEsNiArMzIxLDE3IEBAIHN0cnVjdCBkcm1fdHZfY29ubmVjdG9yX3N0YXRlIHsKIAl1bnNp Z25lZCBpbnQgaHVlOwogfTsKIAorLyogSERNSSBvdXRwdXQgcGl4ZWwgZm9ybWF0ICovCitlbnVt IGRybV9oZG1pX291dHB1dF90eXBlIHsKKwlEUk1fSERNSV9PVVRQVVRfREVGQVVMVF9SR0IsIC8q IGRlZmF1bHQgUkdCICovCisJRFJNX0hETUlfT1VUUFVUX1lDQkNSNDQ0LCAvKiBZQ0JDUiA0NDQg Ki8KKwlEUk1fSERNSV9PVVRQVVRfWUNCQ1I0MjIsIC8qIFlDQkNSIDQyMiAqLworCURSTV9IRE1J X09VVFBVVF9ZQ0JDUjQyMCwgLyogWUNCQ1IgNDIwICovCisJRFJNX0hETUlfT1VUUFVUX1lDQkNS X0hRLCAvKiBIaWdoZXN0IHN1YnNhbXBsZWQgWVVWICovCisJRFJNX0hETUlfT1VUUFVUX1lDQkNS X0xRLCAvKiBMb3dlc3Qgc3Vic2FtcGxlZCBZVVYgKi8KKwlEUk1fSERNSV9PVVRQVVRfSU5WQUxJ RCwgLyogR3Vlc3Mgd2hhdCA/ICovCit9OworCiAvKioKICAqIHN0cnVjdCBkcm1fY29ubmVjdG9y X3N0YXRlIC0gbXV0YWJsZSBjb25uZWN0b3Igc3RhdGUKICAqIEBjb25uZWN0b3I6IGJhY2twb2lu dGVyIHRvIHRoZSBjb25uZWN0b3IKQEAgLTM2NSw2ICszNzYsMTIgQEAgc3RydWN0IGRybV9jb25u ZWN0b3Jfc3RhdGUgewogCSAqIHVwc2NhbGluZywgbW9zdGx5IHVzZWQgZm9yIGJ1aWx0LWluIHBh bmVscy4KIAkgKi8KIAl1bnNpZ25lZCBpbnQgc2NhbGluZ19tb2RlOworCisJLyoqCisJICogQGhk bWlfb3V0cHV0OiBDb25uZWN0b3IgcHJvcGVydHkgdG8gY29udHJvbCB0aGUKKwkgKiBIRE1JIG91 dHB1dCBtb2RlIChSR0IvWUNCQ1I0NDQvNDIyLzQyMCkuCisJICovCisJZW51bSBkcm1faGRtaV9v dXRwdXRfdHlwZSBoZG1pX291dHB1dDsKIH07CiAKIC8qKgpAQCAtOTkzLDYgKzEwMTAsNyBAQCBz dGF0aWMgaW5saW5lIHZvaWQgZHJtX2Nvbm5lY3Rvcl91bnJlZmVyZW5jZShzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yKQogCiBjb25zdCBjaGFyICpkcm1fZ2V0X2Nvbm5lY3Rvcl9zdGF0 dXNfbmFtZShlbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVzIHN0YXR1cyk7CiBjb25zdCBjaGFyICpk cm1fZ2V0X3N1YnBpeGVsX29yZGVyX25hbWUoZW51bSBzdWJwaXhlbF9vcmRlciBvcmRlcik7Citj b25zdCBjaGFyICpkcm1fZ2V0X2hkbWlfb3V0cHV0X25hbWUoZW51bSBkcm1faGRtaV9vdXRwdXRf dHlwZSB0eXBlKTsKIGNvbnN0IGNoYXIgKmRybV9nZXRfZHBtc19uYW1lKGludCB2YWwpOwogY29u c3QgY2hhciAqZHJtX2dldF9kdmlfaV9zdWJjb25uZWN0b3JfbmFtZShpbnQgdmFsKTsKIGNvbnN0 IGNoYXIgKmRybV9nZXRfZHZpX2lfc2VsZWN0X25hbWUoaW50IHZhbCk7CmRpZmYgLS1naXQgYS9p bmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaCBiL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZp Zy5oCmluZGV4IDQyOTgxNzEuLjE4ODcyNjEgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9t b2RlX2NvbmZpZy5oCisrKyBiL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oCkBAIC03NDAs NiArNzQwLDExIEBAIHN0cnVjdCBkcm1fbW9kZV9jb25maWcgewogCSAqIHRoZSBwb3NpdGlvbiBv ZiB0aGUgb3V0cHV0IG9uIHRoZSBob3N0J3Mgc2NyZWVuLgogCSAqLwogCXN0cnVjdCBkcm1fcHJv cGVydHkgKnN1Z2dlc3RlZF95X3Byb3BlcnR5OworCS8qKgorCSAqIEBoZG1pX291dHB1dF9wcm9w ZXJ0eTogb3V0cHV0IHBpeGVsIGZvcm1hdCBmcm9tIEhETUkgZGlzcGxheQorCSAqIERlZmF1bHQg aXMgc2V0IGZvciBSR0IKKwkgKi8KKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpoZG1pX291dHB1dF9w cm9wZXJ0eTsKIAogCS8qIGR1bWIgaW9jdGwgcGFyYW1ldGVycyAqLwogCXVpbnQzMl90IHByZWZl cnJlZF9kZXB0aCwgcHJlZmVyX3NoYWRvdzsKLS0gCjIuNy40CgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK