From mboxrd@z Thu Jan 1 00:00:00 1970 From: StanLis Subject: [PATCH v10 1/2] drm: content-type property for HDMI connector Date: Tue, 8 May 2018 10:44:56 +0300 Message-ID: <20180508074457.3800-2-stanislav.lisovskiy@intel.com> References: <20180508074457.3800-1-stanislav.lisovskiy@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180508074457.3800-1-stanislav.lisovskiy@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 Cc: intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org RnJvbTogU3RhbmlzbGF2IExpc292c2tpeSA8c3RhbmlzbGF2Lmxpc292c2tpeUBpbnRlbC5jb20+ CgpBZGRlZCBjb250ZW50X3R5cGUgcHJvcGVydHkgdG8gZHJtX2Nvbm5lY3Rvcl9zdGF0ZQppbiBv cmRlciB0byBwcm9wZXJseSBoYW5kbGUgZXh0ZXJuYWwgSERNSSBUViBjb250ZW50LXR5cGUgc2V0 dGluZy4KCnYyOgogKiBNb3ZlZCBoZWxwZXIgZnVuY3Rpb24gd2hpY2ggYXR0YWNoZXMgY29udGVu dCB0eXBlIHByb3BlcnR5CiAgIHRvIHRoZSBkcm0gY29yZSwgYXMgd2FzIHN1Z2dlc3RlZC4KICAg UmVtb3ZlZCByZWR1bmRhbnQgY29ubmVjdG9yIHN0YXRlIGluaXRpYWxpemF0aW9uLgoKdjM6CiAq IFJlbW92ZWQgY2FwcyBpbiBkcm1fY29udGVudF90eXBlX2VudW1fbGlzdC4KICAgQWZ0ZXIgc29t ZSBkaXNjdXNzaW9uIGl0IHR1cm5lZCBvdXQgdGhhdCBIRE1JIFNwZWMgMS40CiAgIHdhcyB3cm9u Z2x5IGFzc3VtaW5nIHRoYXQgSVQgQ29udGVudChpdGMpIGJpdCBkb2Vzbid0IGFmZmVjdAogICBD b250ZW50IHR5cGUgc3RhdGVzLCBob3dldmVyIGl0YyBiaXQgbmVlZHMgdG8gYmUgbWFudXB1bGF0 ZWQKICAgYXMgd2VsbC4gSW4gb3JkZXIgdG8gbm90IGV4cG9zZSBhZGRpdGlvbmFsIHByb3BlcnR5 IGZvciBpdGMsCiAgIGZvciBzYWtlIG9mIHNpbXBsaWNpdHkgaXQgd2FzIGRlY2lkZWQgdG8gYmlu ZCB0aG9zZSB0b2dldGhlcgogICBpbiBzYW1lICJjb250ZW50IHR5cGUiIHByb3BlcnR5LgoKdjQ6 CiAqIEFkZGVkIGl0X2NvbnRlbnQgY2hlY2tpbmcgaW4gaW50ZWxfZGlnaXRhbF9jb25uZWN0b3Jf YXRvbWljX2NoZWNrLgogICBGaXhlZCBkb2N1bWVudGF0aW9uIGZvciBuZXcgY29udGVudCB0eXBl IGVudW0uCgp2NToKICogTW92ZWQgcGF0Y2ggcmV2aXNpb24ncyBkZXNjcmlwdGlvbiB0byBjb21t aXQgbWVzc2FnZXMuCgp2NjoKICogTWlub3IgbmFtaW5nIGZpeCBmb3IgdGhlIGNvbnRlbnQgdHlw ZSBlbnVtZXJhdGlvbiBzdHJpbmcuCgp2NzoKICogRml4IHBhcmFtZXRlciBuYW1lIGZvciBkb2N1 bWVudGF0aW9uIGFuZCBwYXJhbWV0ZXIgYWxpZ25tZW50CiAgIGluIG9yZGVyIG5vdCB0byBnZXQg d2FybmluZy4gQWRkZWQgQ29udGVudCBUeXBlIGRlc2NyaXB0aW9uIHRvCiAgIG5ldyBIRE1JIGNv bm5lY3RvciBwcm9wZXJ0aWVzIHNlY3Rpb24uCgp2ODoKICogVGhyb3duIGF3YXkgdW5uZWVkZWQg bnVtYmVycyBmcm9tIEhETUkgY29udGVudC10eXBlIHByb3BlcnR5CiAgIGRlc2NyaXB0aW9uLiBT d2l0Y2ggdG8gc3RyaW5ncyBkZXNyaXB0aW9uIGluc3RlYWQgb2YgcGxhaW4KICAgZGVmaW5pdGlv bnMuCgp2OToKICogTW92ZWQgYXdheSBoZG1pIHNwZWNpZmljIGNvbnRlbnQtdHlwZSBlbnVtIGZy b20KICAgZHJtX2Nvbm5lY3Rvcl9zdGF0ZS4gQ29udGVudCB0eXBlIHByb3BlcnR5IHNob3VsZCBw cm9iYWJseSBub3QKICAgYmUgYm91bmQgdG8gYW55IHNwZWNpZmljIGNvbm5lY3RvciBpbnRlcmZh Y2UgaW4KICAgZHJtX2Nvbm5lY3Rvcl9zdGF0ZS4KICAgU2FtZSBwcm9iYWJseSBzaG91bGQgYmUg ZG9uZSB0byBoZG1pX3BpY3R1cmVfYXNwZWN0X3JhdGlvbiBlbnVtCiAgIHdoaWNoIGlzIGFsc28g Y29udGFpbmVkIGluIGRybV9jb25uZWN0b3Jfc3RhdGUuIEFkZGVkIHNwZWNpYWwKICAgaGVscGVy IGZ1bmN0aW9uIHRvIGdldCBkZXJpdmUgaGRtaSBzcGVjaWZpYyByZWxldmFudCBpbmZvZnJhbWUK ICAgZmllbGRzLgoKdjEwOgogKiBBZGRlZCB1c2FnZSBkZXNjcmlwdGlvbiB0byBIRE1JIHByb3Bl cnRpZXMga2VybmVsIGRvYy4KCkFja2VkLWJ5OiBIYW5zIFZlcmt1aWwgPGhhbnMudmVya3VpbEBj aXNjby5jb20+CkFja2VkLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNo PgpTaWduZWQtb2ZmLWJ5OiBTdGFuaXNsYXYgTGlzb3Zza2l5IDxzdGFuaXNsYXYubGlzb3Zza2l5 QGludGVsLmNvbT4KLS0tCiBEb2N1bWVudGF0aW9uL2dwdS9kcm0ta21zLnJzdCAgICAgICAgfCAg NiArKysKIERvY3VtZW50YXRpb24vZ3B1L2ttcy1wcm9wZXJ0aWVzLmNzdiB8ICAxICsKIGRyaXZl cnMvZ3B1L2RybS9kcm1fYXRvbWljLmMgICAgICAgICB8ICA0ICsrCiBkcml2ZXJzL2dwdS9kcm0v ZHJtX2Nvbm5lY3Rvci5jICAgICAgfCA4MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBk cml2ZXJzL2dwdS9kcm0vZHJtX2VkaWQuYyAgICAgICAgICAgfCA1NSArKysrKysrKysrKysrKysr KysrCiBpbmNsdWRlL2RybS9kcm1fY29ubmVjdG9yLmggICAgICAgICAgfCAxMiArKysrKwogaW5j bHVkZS9kcm0vZHJtX2VkaWQuaCAgICAgICAgICAgICAgIHwgIDYgKysrCiBpbmNsdWRlL2RybS9k cm1fbW9kZV9jb25maWcuaCAgICAgICAgfCAgNSArKwogaW5jbHVkZS91YXBpL2RybS9kcm1fbW9k ZS5oICAgICAgICAgIHwgIDcgKysrCiA5IGZpbGVzIGNoYW5nZWQsIDE3NiBpbnNlcnRpb25zKCsp CgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWttcy5yc3QgYi9Eb2N1bWVudGF0 aW9uL2dwdS9kcm0ta21zLnJzdAppbmRleCAxZGZmZDFhYzRjZDQuLmUyMzNjMjYyNmJkMCAxMDA2 NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWttcy5yc3QKKysrIGIvRG9jdW1lbnRhdGlv bi9ncHUvZHJtLWttcy5yc3QKQEAgLTUxNyw2ICs1MTcsMTIgQEAgU3RhbmRhcmQgQ29ubmVjdG9y IFByb3BlcnRpZXMKIC4uIGtlcm5lbC1kb2M6OiBkcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rv ci5jCiAgICA6ZG9jOiBzdGFuZGFyZCBjb25uZWN0b3IgcHJvcGVydGllcwogCitIRE1JIFNwZWNp ZmljIENvbm5lY3RvciBQcm9wZXJ0aWVzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor CisuLiBrZXJuZWwtZG9jOjogZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYworICAgOmRv YzogSERNSSBjb25uZWN0b3IgcHJvcGVydGllcworCiBQbGFuZSBDb21wb3NpdGlvbiBQcm9wZXJ0 aWVzCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKZGlmZiAtLWdpdCBhL0RvY3VtZW50 YXRpb24vZ3B1L2ttcy1wcm9wZXJ0aWVzLmNzdiBiL0RvY3VtZW50YXRpb24vZ3B1L2ttcy1wcm9w ZXJ0aWVzLmNzdgppbmRleCAwN2VkMjJlYTNiZDYuLmJmZGUwNGVkZGQxNCAxMDA2NDQKLS0tIGEv RG9jdW1lbnRhdGlvbi9ncHUva21zLXByb3BlcnRpZXMuY3N2CisrKyBiL0RvY3VtZW50YXRpb24v Z3B1L2ttcy1wcm9wZXJ0aWVzLmNzdgpAQCAtMTcsNiArMTcsNyBAQCBPd25lciBNb2R1bGUvRHJp dmVycyxHcm91cCxQcm9wZXJ0eSBOYW1lLFR5cGUsUHJvcGVydHkgVmFsdWVzLE9iamVjdCBhdHRh Y2hlZCxEZQogLFZpcnR1YWwgR1BVLOKAnHN1Z2dlc3RlZCBY4oCdLFJBTkdFLCJNaW49MCwgTWF4 PTB4ZmZmZmZmZmYiLENvbm5lY3Rvcixwcm9wZXJ0eSB0byBzdWdnZXN0IGFuIFggb2Zmc2V0IGZv ciBhIGNvbm5lY3RvcgogLCzigJxzdWdnZXN0ZWQgWeKAnSxSQU5HRSwiTWluPTAsIE1heD0weGZm ZmZmZmZmIixDb25uZWN0b3IscHJvcGVydHkgdG8gc3VnZ2VzdCBhbiBZIG9mZnNldCBmb3IgYSBj b25uZWN0b3IKICxPcHRpb25hbCwiIiJhc3BlY3QgcmF0aW8iIiIsRU5VTSwieyAiIk5vbmUiIiwg IiI0OjMiIiwgIiIxNjo5IiIgfSIsQ29ubmVjdG9yLFREQgorLE9wdGlvbmFsLCIiImNvbnRlbnQg dHlwZSIiIixFTlVNLCJ7ICIiTm8gRGF0YSIiLCAiIkdyYXBoaWNzIiIsICIiUGhvdG8iIiwgIiJD aW5lbWEiIiwgIiJHYW1lIiIgfSIsQ29ubmVjdG9yLFRCRAogaTkxNSxHZW5lcmljLCIiIkJyb2Fk Y2FzdCBSR0IiIiIsRU5VTSwieyAiIkF1dG9tYXRpYyIiLCAiIkZ1bGwiIiwgIiJMaW1pdGVkIDE2 OjIzNSIiIH0iLENvbm5lY3RvciwiV2hlbiB0aGlzIHByb3BlcnR5IGlzIHNldCB0byBMaW1pdGVk IDE2OjIzNSBhbmQgQ1RNIGlzIHNldCwgdGhlIGhhcmR3YXJlIHdpbGwgYmUgcHJvZ3JhbW1lZCB3 aXRoIHRoZSByZXN1bHQgb2YgdGhlIG11bHRpcGxpY2F0aW9uIG9mIENUTSBieSB0aGUgbGltaXRl ZCByYW5nZSBtYXRyaXggdG8gZW5zdXJlIHRoZSBwaXhlbHMgbm9ybWFseSBpbiB0aGUgcmFuZ2Ug MC4uMS4wIGFyZSByZW1hcHBlZCB0byB0aGUgcmFuZ2UgMTYvMjU1Li4yMzUvMjU1LiIKICws4oCc YXVkaW/igJ0sRU5VTSwieyAiImZvcmNlLWR2aSIiLCAiIm9mZiIiLCAiImF1dG8iIiwgIiJvbiIi IH0iLENvbm5lY3RvcixUQkQKICxTRFZPLVRWLOKAnG1vZGXigJ0sRU5VTSwieyAiIk5UU0NfTSIi LCAiIk5UU0NfSiIiLCAiIk5UU0NfNDQzIiIsICIiUEFMX0IiIiB9IGV0Yy4iLENvbm5lY3RvcixU QkQKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2F0b21pYy5jCmluZGV4IDNkOWFlMDU3YTZjZC4uNmMxZTFlNzc0NTE3IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fYXRvbWljLmMKQEAgLTEyNzAsNiArMTI3MCw4IEBAIHN0YXRpYyBpbnQgZHJtX2F0b21p Y19jb25uZWN0b3Jfc2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3Is CiAJCQlzdGF0ZS0+bGlua19zdGF0dXMgPSB2YWw7CiAJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBj b25maWctPmFzcGVjdF9yYXRpb19wcm9wZXJ0eSkgewogCQlzdGF0ZS0+cGljdHVyZV9hc3BlY3Rf cmF0aW8gPSB2YWw7CisJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPmNvbnRlbnRfdHlw ZV9wcm9wZXJ0eSkgeworCQlzdGF0ZS0+Y29udGVudF90eXBlID0gdmFsOwogCX0gZWxzZSBpZiAo cHJvcGVydHkgPT0gY29ubmVjdG9yLT5zY2FsaW5nX21vZGVfcHJvcGVydHkpIHsKIAkJc3RhdGUt PnNjYWxpbmdfbW9kZSA9IHZhbDsKIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+ Y29udGVudF9wcm90ZWN0aW9uX3Byb3BlcnR5KSB7CkBAIC0xMzU1LDYgKzEzNTcsOCBAQCBkcm1f YXRvbWljX2Nvbm5lY3Rvcl9nZXRfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5l Y3RvciwKIAkJKnZhbCA9IHN0YXRlLT5saW5rX3N0YXR1czsKIAl9IGVsc2UgaWYgKHByb3BlcnR5 ID09IGNvbmZpZy0+YXNwZWN0X3JhdGlvX3Byb3BlcnR5KSB7CiAJCSp2YWwgPSBzdGF0ZS0+cGlj dHVyZV9hc3BlY3RfcmF0aW87CisJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPmNvbnRl bnRfdHlwZV9wcm9wZXJ0eSkgeworCQkqdmFsID0gc3RhdGUtPmNvbnRlbnRfdHlwZTsKIAl9IGVs c2UgaWYgKHByb3BlcnR5ID09IGNvbm5lY3Rvci0+c2NhbGluZ19tb2RlX3Byb3BlcnR5KSB7CiAJ CSp2YWwgPSBzdGF0ZS0+c2NhbGluZ19tb2RlOwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29u bmVjdG9yLT5jb250ZW50X3Byb3RlY3Rpb25fcHJvcGVydHkpIHsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fY29ubmVjdG9yLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rv ci5jCmluZGV4IGIzY2RlODk3Y2Q4MC4uZjgzZjU0ZDQ1NTYxIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVj dG9yLmMKQEAgLTcyMCw2ICs3MjAsMTQgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fcHJvcF9l bnVtX2xpc3QgZHJtX2FzcGVjdF9yYXRpb19lbnVtX2xpc3RbXSA9IHsKIAl7IERSTV9NT0RFX1BJ Q1RVUkVfQVNQRUNUXzE2XzksICIxNjo5IiB9LAogfTsKIAorc3RhdGljIGNvbnN0IHN0cnVjdCBk cm1fcHJvcF9lbnVtX2xpc3QgZHJtX2NvbnRlbnRfdHlwZV9lbnVtX2xpc3RbXSA9IHsKKwl7IERS TV9NT0RFX0NPTlRFTlRfVFlQRV9OT19EQVRBLCAiTm8gRGF0YSIgfSwKKwl7IERSTV9NT0RFX0NP TlRFTlRfVFlQRV9HUkFQSElDUywgIkdyYXBoaWNzIiB9LAorCXsgRFJNX01PREVfQ09OVEVOVF9U WVBFX1BIT1RPLCAiUGhvdG8iIH0sCisJeyBEUk1fTU9ERV9DT05URU5UX1RZUEVfQ0lORU1BLCAi Q2luZW1hIiB9LAorCXsgRFJNX01PREVfQ09OVEVOVF9UWVBFX0dBTUUsICJHYW1lIiB9LAorfTsK Kwogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fcHJvcF9lbnVtX2xpc3QgZHJtX3BhbmVsX29yaWVu dGF0aW9uX2VudW1fbGlzdFtdID0gewogCXsgRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fTk9S TUFMLAkiTm9ybWFsIgl9LAogCXsgRFJNX01PREVfUEFORUxfT1JJRU5UQVRJT05fQk9UVE9NX1VQ LAkiVXBzaWRlIERvd24iCX0sCkBAIC05OTYsNiArMTAwNCw1MSBAQCBpbnQgZHJtX21vZGVfY3Jl YXRlX2R2aV9pX3Byb3BlcnRpZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIH0KIEVYUE9SVF9T WU1CT0woZHJtX21vZGVfY3JlYXRlX2R2aV9pX3Byb3BlcnRpZXMpOwogCisKKy8qKgorICogRE9D OiBIRE1JIGNvbm5lY3RvciBwcm9wZXJ0aWVzCisgKgorICogY29udGVudCB0eXBlIChIRE1JIHNw ZWNpZmljKToKKyAqCUluZGljYXRlcyBjb250ZW50IHR5cGUgc2V0dGluZyB0byBiZSB1c2VkIGlu IEhETUkgaW5mb2ZyYW1lcyB0byBpbmRpY2F0ZQorICoJY29udGVudCB0eXBlIGZvciB0aGUgZXh0 ZXJuYWwgZGV2aWNlLCBzbyB0aGF0IGl0IGFkanVzdHMgaXQncyBkaXNwbGF5CisgKglzZXR0aW5n cyBhY2NvcmRpbmdseS4KKyAqCisgKglUaGUgdmFsdWUgb2YgdGhpcyBwcm9wZXJ0eSBjYW4gYmUg b25lIG9mIHRoZSBmb2xsb3dpbmc6CisgKgorICoJTm8gRGF0YToKKyAqCQlDb250ZW50IHR5cGUg aXMgdW5rbm93bgorICoJR3JhcGhpY3M6CisgKgkJQ29udGVudCB0eXBlIGlzIGdyYXBoaWNzCisg KglQaG90bzoKKyAqCQlDb250ZW50IHR5cGUgaXMgcGhvdG8KKyAqCUNpbmVtYToKKyAqCQlDb250 ZW50IHR5cGUgaXMgY2luZW1hCisgKglHYW1lOgorICoJCUNvbnRlbnQgdHlwZSBpcyBnYW1lCisg KgorICoJRHJpdmVycyBjYW4gc2V0IHVwIHRoaXMgcHJvcGVydHkgYnkgY2FsbGluZworICoJZHJt X2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVudF90eXBlX3Byb3BlcnR5KCkuIERlY29kaW5nIHRvCisg KglpbmZvZnJhbWUgdmFsdWVzIGlzIGRvbmUgdGhyb3VnaAorICoJZHJtX2hkbWlfZ2V0X2NvbnRl bnRfdHlwZV9mcm9tX3Byb3BlcnR5KCkgYW5kCisgKglkcm1faGRtaV9nZXRfaXRjX2JpdF9mcm9t X3Byb3BlcnR5KCkuCisgKi8KKworLyoqCisgKiBkcm1fY29ubmVjdG9yX2F0dGFjaF9jb250ZW50 X3R5cGVfcHJvcGVydHkgLSBhdHRhY2ggY29udGVudC10eXBlIHByb3BlcnR5CisgKiBAY29ubmVj dG9yOiBjb25uZWN0b3IgdG8gYXR0YWNoIGNvbnRlbnQgdHlwZSBwcm9wZXJ0eSBvbi4KKyAqCisg KiBDYWxsZWQgYnkgYSBkcml2ZXIgdGhlIGZpcnN0IHRpbWUgYSBIRE1JIGNvbm5lY3RvciBpcyBt YWRlLgorICovCitpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfY29udGVudF90eXBlX3Byb3BlcnR5 KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCit7CisJaWYgKCFkcm1fbW9kZV9jcmVh dGVfY29udGVudF90eXBlX3Byb3BlcnR5KGNvbm5lY3Rvci0+ZGV2KSkKKwkJZHJtX29iamVjdF9h dHRhY2hfcHJvcGVydHkoJmNvbm5lY3Rvci0+YmFzZSwKKwkJCQkJICAgY29ubmVjdG9yLT5kZXYt Pm1vZGVfY29uZmlnLmNvbnRlbnRfdHlwZV9wcm9wZXJ0eSwKKwkJCQkJICAgRFJNX01PREVfQ09O VEVOVF9UWVBFX05PX0RBVEEpOworCXJldHVybiAwOworfQorRVhQT1JUX1NZTUJPTChkcm1fY29u bmVjdG9yX2F0dGFjaF9jb250ZW50X3R5cGVfcHJvcGVydHkpOworCiAvKioKICAqIGRybV9jcmVh dGVfdHZfcHJvcGVydGllcyAtIGNyZWF0ZSBUViBzcGVjaWZpYyBjb25uZWN0b3IgcHJvcGVydGll cwogICogQGRldjogRFJNIGRldmljZQpAQCAtMTI2MCw2ICsxMzEzLDMzIEBAIGludCBkcm1fbW9k ZV9jcmVhdGVfYXNwZWN0X3JhdGlvX3Byb3BlcnR5KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB9 CiBFWFBPUlRfU1lNQk9MKGRybV9tb2RlX2NyZWF0ZV9hc3BlY3RfcmF0aW9fcHJvcGVydHkpOwog CisvKioKKyAqIGRybV9tb2RlX2NyZWF0ZV9jb250ZW50X3R5cGVfcHJvcGVydHkgLSBjcmVhdGUg Y29udGVudCB0eXBlIHByb3BlcnR5CisgKiBAZGV2OiBEUk0gZGV2aWNlCisgKgorICogQ2FsbGVk IGJ5IGEgZHJpdmVyIHRoZSBmaXJzdCB0aW1lIGl0J3MgbmVlZGVkLCBtdXN0IGJlIGF0dGFjaGVk IHRvIGRlc2lyZWQKKyAqIGNvbm5lY3RvcnMuCisgKgorICogUmV0dXJuczoKKyAqIFplcm8gb24g c3VjY2VzcywgbmVnYXRpdmUgZXJybm8gb24gZmFpbHVyZS4KKyAqLworaW50IGRybV9tb2RlX2Ny ZWF0ZV9jb250ZW50X3R5cGVfcHJvcGVydHkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKK3sKKwlp ZiAoZGV2LT5tb2RlX2NvbmZpZy5jb250ZW50X3R5cGVfcHJvcGVydHkpCisJCXJldHVybiAwOwor CisJZGV2LT5tb2RlX2NvbmZpZy5jb250ZW50X3R5cGVfcHJvcGVydHkgPQorCQlkcm1fcHJvcGVy dHlfY3JlYXRlX2VudW0oZGV2LCAwLCAiY29udGVudCB0eXBlIiwKKwkJCQkJIGRybV9jb250ZW50 X3R5cGVfZW51bV9saXN0LAorCQkJCQkgQVJSQVlfU0laRShkcm1fY29udGVudF90eXBlX2VudW1f bGlzdCkpOworCisJaWYgKGRldi0+bW9kZV9jb25maWcuY29udGVudF90eXBlX3Byb3BlcnR5ID09 IE5VTEwpCisJCXJldHVybiAtRU5PTUVNOworCisJcmV0dXJuIDA7Cit9CitFWFBPUlRfU1lNQk9M KGRybV9tb2RlX2NyZWF0ZV9jb250ZW50X3R5cGVfcHJvcGVydHkpOworCiAvKioKICAqIGRybV9t b2RlX2NyZWF0ZV9zdWdnZXN0ZWRfb2Zmc2V0X3Byb3BlcnRpZXMgLSBjcmVhdGUgc3VnZ2VzdHMg b2Zmc2V0IHByb3BlcnRpZXMKICAqIEBkZXY6IERSTSBkZXZpY2UKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZWRpZC5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKaW5kZXgg MTM0MDY5ZjM2NDgyLi45ZWNkYTBiMmE0ZDggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9k cm1fZWRpZC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZWRpZC5jCkBAIC00ODY4LDYgKzQ4 NjgsMTQgQEAgZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZShzdHJ1Y3Qg aGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFtZSwKIAogCWZyYW1lLT5waWN0dXJlX2FzcGVjdCA9IEhE TUlfUElDVFVSRV9BU1BFQ1RfTk9ORTsKIAorCS8qCisJICogQXMgc29tZSBkcml2ZXJzIGRvbid0 IHN1cHBvcnQgYXRvbWljLCB3ZSBjYW4ndCB1c2UgY29ubmVjdG9yIHN0YXRlLgorCSAqIFNvIGp1 c3QgaW5pdGlhbGl6ZSB0aGUgZnJhbWUgd2l0aCBkZWZhdWx0IHZhbHVlcywganVzdCB0aGUgc2Ft ZSB3YXkKKwkgKiBhcyBpdCdzIGRvbmUgd2l0aCBvdGhlciBwcm9wZXJ0aWVzIGhlcmUuCisJICov CisJZnJhbWUtPmNvbnRlbnRfdHlwZSA9IEhETUlfQ09OVEVOVF9UWVBFX0dSQVBISUNTOworCWZy YW1lLT5pdGMgPSAwOworCiAJLyoKIAkgKiBQb3B1bGF0ZSBwaWN0dXJlIGFzcGVjdCByYXRpbyBm cm9tIGVpdGhlcgogCSAqIHVzZXIgaW5wdXQgKGlmIHNwZWNpZmllZCkgb3IgZnJvbSB0aGUgQ0VB IG1vZGUgbGlzdC4KQEAgLTQ4ODYsNiArNDg5NCw1MyBAQCBkcm1faGRtaV9hdmlfaW5mb2ZyYW1l X2Zyb21fZGlzcGxheV9tb2RlKHN0cnVjdCBoZG1pX2F2aV9pbmZvZnJhbWUgKmZyYW1lLAogfQog RVhQT1JUX1NZTUJPTChkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKTsK IAorLyoqCisgKiBkcm1faGRtaV9nZXRfaXRjX2JpdF9mcm9tX3Byb3BlcnR5KCkgLSBnZXQgdGhl IEhETUkgSVQgY29udGVudCBiaXQKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGZyb20gY29udGVudCB0eXBlIHByb3BlcnR5LgorICogY29udGVudF90eXBlOiBDb250 ZW50IHR5cGUgRFJNIHByb3BlcnR5IHZhbHVlCisgKgorICovCitib29sCitkcm1faGRtaV9nZXRf aXRjX2JpdF9mcm9tX3Byb3BlcnR5KHVuc2lnbmVkIGludCBjb250ZW50X3R5cGUpCit7CisJLyog V2hlbmV2ZXIgc29tZXRoaW5nIGVsc2UgdGhhbiAiTm8gRGF0YSIsIElUIENvbnRlbnQgYml0IG11 c3QgYmUgc2V0ICovCisJcmV0dXJuIGNvbnRlbnRfdHlwZSAhPSBEUk1fTU9ERV9DT05URU5UX1RZ UEVfTk9fREFUQSA/IHRydWUgOiBmYWxzZTsKK30KK0VYUE9SVF9TWU1CT0woZHJtX2hkbWlfZ2V0 X2l0Y19iaXRfZnJvbV9wcm9wZXJ0eSk7CisKKy8qKgorICogZHJtX2hkbWlfZ2V0X2NvbnRlbnRf dHlwZV9mcm9tX3Byb3BlcnR5KCkgLSBnZXQgdGhlIEhETUkgY29udGVudCB0eXBlIGJpdHMKKyAq ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbSBjb250ZW50 IHR5cGUgcHJvcGVydHkuCisgKiBjb250ZW50X3R5cGU6IENvbnRlbnQgdHlwZSBEUk0gcHJvcGVy dHkgdmFsdWUKKyAqCisgKi8KK2VudW0gaGRtaV9jb250ZW50X3R5cGUKK2RybV9oZG1pX2dldF9j b250ZW50X3R5cGVfZnJvbV9wcm9wZXJ0eSh1bnNpZ25lZCBpbnQgY29udGVudF90eXBlKQorewor CWVudW0gaGRtaV9jb250ZW50X3R5cGUgcmV0OworCisJc3dpdGNoIChjb250ZW50X3R5cGUpIHsK KwljYXNlIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9HUkFQSElDUzoKKwkJcmV0ID0gSERNSV9DT05U RU5UX1RZUEVfR1JBUEhJQ1M7CisJCWJyZWFrOworCWNhc2UgRFJNX01PREVfQ09OVEVOVF9UWVBF X0NJTkVNQToKKwkJcmV0ID0gSERNSV9DT05URU5UX1RZUEVfQ0lORU1BOworCQlicmVhazsKKwlj YXNlIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9HQU1FOgorCQlyZXQgPSBIRE1JX0NPTlRFTlRfVFlQ RV9HQU1FOworCQlicmVhazsKKwljYXNlIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9QSE9UTzoKKwkJ cmV0ID0gSERNSV9DT05URU5UX1RZUEVfUEhPVE87CisJCWJyZWFrOworCWRlZmF1bHQ6CisJCS8q IEdyYXBoaWNzIGlzIHRoZSBkZWZhdWx0KDApICovCisJCXJldCA9IEhETUlfQ09OVEVOVF9UWVBF X0dSQVBISUNTOworCX0KKwlyZXR1cm4gcmV0OworfQorRVhQT1JUX1NZTUJPTChkcm1faGRtaV9n ZXRfY29udGVudF90eXBlX2Zyb21fcHJvcGVydHkpOworCisKIC8qKgogICogZHJtX2hkbWlfYXZp X2luZm9mcmFtZV9xdWFudF9yYW5nZSgpIC0gZmlsbCB0aGUgSERNSSBBVkkgaW5mb2ZyYW1lCiAg KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWFudGl6YXRpb24gcmFu Z2UgaW5mb3JtYXRpb24KZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaCBi L2luY2x1ZGUvZHJtL2RybV9jb25uZWN0b3IuaAppbmRleCA2NzVjYzNmOGNmODUuLjE3OGZhM2Yz ZjVmNyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCisrKyBiL2luY2x1 ZGUvZHJtL2RybV9jb25uZWN0b3IuaApAQCAtNDE4LDYgKzQxOCwxNiBAQCBzdHJ1Y3QgZHJtX2Nv bm5lY3Rvcl9zdGF0ZSB7CiAJICovCiAJZW51bSBoZG1pX3BpY3R1cmVfYXNwZWN0IHBpY3R1cmVf YXNwZWN0X3JhdGlvOwogCisKKwkvKioKKwkgKiBAY29udGVudF90eXBlOiBDb25uZWN0b3IgcHJv cGVydHkgdG8gY29udHJvbCB0aGUKKwkgKiBIRE1JIGluZm9mcmFtZSBjb250ZW50IHR5cGUgc2V0 dGluZy4KKwkgKiBUaGUgJURSTV9NT0RFX0NPTlRFTlRfVFlQRV9cKiB2YWx1ZXMgbXVjaAorCSAq IG1hdGNoIHRoZSB2YWx1ZXMuCisJICovCisJdW5zaWduZWQgaW50IGNvbnRlbnRfdHlwZTsKKwor CiAJLyoqCiAJICogQHNjYWxpbmdfbW9kZTogQ29ubmVjdG9yIHByb3BlcnR5IHRvIGNvbnRyb2wg dGhlCiAJICogdXBzY2FsaW5nLCBtb3N0bHkgdXNlZCBmb3IgYnVpbHQtaW4gcGFuZWxzLgpAQCAt MTA4OSwxMSArMTA5OSwxMyBAQCBpbnQgZHJtX21vZGVfY3JlYXRlX3R2X3Byb3BlcnRpZXMoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCQkgIHVuc2lnbmVkIGludCBudW1fbW9kZXMsCiAJCQkJ ICBjb25zdCBjaGFyICogY29uc3QgbW9kZXNbXSk7CiBpbnQgZHJtX21vZGVfY3JlYXRlX3NjYWxp bmdfbW9kZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKK2ludCBkcm1fY29ubmVj dG9yX2F0dGFjaF9jb250ZW50X3R5cGVfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmRl dik7CiBpbnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfc2NhbGluZ19tb2RlX3Byb3BlcnR5KHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCQkJCSAgICAgICB1MzIgc2NhbGluZ19tb2Rl X21hc2spOwogaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX2NvbnRlbnRfcHJvdGVjdGlvbl9wcm9w ZXJ0eSgKIAkJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBpbnQgZHJtX21vZGVf Y3JlYXRlX2FzcGVjdF9yYXRpb19wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKK2lu dCBkcm1fbW9kZV9jcmVhdGVfY29udGVudF90eXBlX3Byb3BlcnR5KHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpOwogaW50IGRybV9tb2RlX2NyZWF0ZV9zdWdnZXN0ZWRfb2Zmc2V0X3Byb3BlcnRpZXMo c3RydWN0IGRybV9kZXZpY2UgKmRldik7CiAKIGludCBkcm1fbW9kZV9jb25uZWN0b3Jfc2V0X3Bh dGhfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKZGlmZiAtLWdpdCBh L2luY2x1ZGUvZHJtL2RybV9lZGlkLmggYi9pbmNsdWRlL2RybS9kcm1fZWRpZC5oCmluZGV4IDhk ODlhOWMzNzQ4ZC4uNGUyNjRjNGQ4YTliIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fZWRp ZC5oCisrKyBiL2luY2x1ZGUvZHJtL2RybV9lZGlkLmgKQEAgLTM1MCw2ICszNTAsMTIgQEAgZHJt X2xvYWRfZWRpZF9maXJtd2FyZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogfQog I2VuZGlmCiAKK2Jvb2wKK2RybV9oZG1pX2dldF9pdGNfYml0X2Zyb21fcHJvcGVydHkodW5zaWdu ZWQgaW50IGNvbnRlbnRfdHlwZSk7CisKK2VudW0gaGRtaV9jb250ZW50X3R5cGUKK2RybV9oZG1p X2dldF9jb250ZW50X3R5cGVfZnJvbV9wcm9wZXJ0eSh1bnNpZ25lZCBpbnQgY29udGVudF90eXBl KTsKKwogaW50CiBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKHN0cnVj dCBoZG1pX2F2aV9pbmZvZnJhbWUgKmZyYW1lLAogCQkJCQkgY29uc3Qgc3RydWN0IGRybV9kaXNw bGF5X21vZGUgKm1vZGUsCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcu aCBiL2luY2x1ZGUvZHJtL2RybV9tb2RlX2NvbmZpZy5oCmluZGV4IDMzYjNhOTZkNjZkMC4uZmI0 NTgzOTE3OWRkIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaAorKysg Yi9pbmNsdWRlL2RybS9kcm1fbW9kZV9jb25maWcuaApAQCAtNzI2LDYgKzcyNiwxMSBAQCBzdHJ1 Y3QgZHJtX21vZGVfY29uZmlnIHsKIAkgKiBIRE1JIGluZm9mcmFtZSBhc3BlY3QgcmF0aW8gc2V0 dGluZy4KIAkgKi8KIAlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICphc3BlY3RfcmF0aW9fcHJvcGVydHk7 CisJLyoqCisJICogQGNvbnRlbnRfdHlwZV9wcm9wZXJ0eTogT3B0aW9uYWwgY29ubmVjdG9yIHBy b3BlcnR5IHRvIGNvbnRyb2wgdGhlCisJICogSERNSSBpbmZvZnJhbWUgY29udGVudCB0eXBlIHNl dHRpbmcuCisJICovCisJc3RydWN0IGRybV9wcm9wZXJ0eSAqY29udGVudF90eXBlX3Byb3BlcnR5 OwogCS8qKgogCSAqIEBkZWdhbW1hX2x1dF9wcm9wZXJ0eTogT3B0aW9uYWwgQ1JUQyBwcm9wZXJ0 eSB0byBzZXQgdGhlIExVVCB1c2VkIHRvCiAJICogY29udmVydCB0aGUgZnJhbWVidWZmZXIncyBj b2xvcnMgdG8gbGluZWFyIGdhbW1hLgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2RybS9kcm1f bW9kZS5oIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oCmluZGV4IDUwYmNmNDIxNGZmOS4u Y2FkOWUwOWZmYWVlIDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2RlLmgKKysr IGIvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oCkBAIC05NCw2ICs5NCwxMyBAQCBleHRlcm4g IkMiIHsKICNkZWZpbmUgRFJNX01PREVfUElDVFVSRV9BU1BFQ1RfNF8zCQkxCiAjZGVmaW5lIERS TV9NT0RFX1BJQ1RVUkVfQVNQRUNUXzE2XzkJCTIKIAorLyogQ29udGVudCB0eXBlIG9wdGlvbnMg Ki8KKyNkZWZpbmUgRFJNX01PREVfQ09OVEVOVF9UWVBFX05PX0RBVEEJCTAKKyNkZWZpbmUgRFJN X01PREVfQ09OVEVOVF9UWVBFX0dSQVBISUNTCQkxCisjZGVmaW5lIERSTV9NT0RFX0NPTlRFTlRf VFlQRV9QSE9UTwkJMgorI2RlZmluZSBEUk1fTU9ERV9DT05URU5UX1RZUEVfQ0lORU1BCQkzCisj ZGVmaW5lIERSTV9NT0RFX0NPTlRFTlRfVFlQRV9HQU1FCQk0CisKIC8qIEFzcGVjdCByYXRpbyBm bGFnIGJpdG1hc2sgKDQgYml0cyAyMjoxOSkgKi8KICNkZWZpbmUgRFJNX01PREVfRkxBR19QSUNf QVJfTUFTSwkJKDB4MEY8PDE5KQogI2RlZmluZSAgRFJNX01PREVfRkxBR19QSUNfQVJfTk9ORSBc Ci0tIAoyLjE3LjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZl bAo=