From mboxrd@z Thu Jan 1 00:00:00 1970 From: Neil Armstrong Subject: [PATCH 5/8] drm/bridge: dw-hdmi: support dynamically get input/out color info Date: Tue, 15 Jan 2019 13:33:12 +0100 Message-ID: <20190115123315.11069-6-narmstrong@baylibre.com> References: <20190115123315.11069-1-narmstrong@baylibre.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm1-x343.google.com (mail-wm1-x343.google.com [IPv6:2a00:1450:4864:20::343]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0271E6E68C for ; Tue, 15 Jan 2019 12:33:28 +0000 (UTC) Received: by mail-wm1-x343.google.com with SMTP id m1so3108750wml.2 for ; Tue, 15 Jan 2019 04:33:27 -0800 (PST) In-Reply-To: <20190115123315.11069-1-narmstrong@baylibre.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: a.hajda@samsung.com, Laurent.pinchart@ideasonboard.com, Philipp Zabel , Sandy Huang , =?UTF-8?q?Heiko=20St=C3=BCbner?= , maxime.ripard@bootlin.com Cc: linux-amlogic@lists.infradead.org, Neil Armstrong , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Zheng Yang List-Id: dri-devel@lists.freedesktop.org RnJvbTogWmhlbmcgWWFuZyA8emhlbmd5YW5nQHJvY2stY2hpcHMuY29tPgoKVG8gZ2V0IGlucHV0 L291dHB1dCBidXNfZm9ybWF0L2VuY19mb3JtYXQgZHluYW1pY2FsbHksIHRoaXMgcGF0Y2gKaW50 cm9kdWNlIGZvbGxvd2luZyBmdW5jdGlvbnMgaW4gcGxhdF9kYXRhOgoJLSBnZXRfaW5wdXRfYnVz X2Zvcm1hdAoJLSBnZXRfb3V0cHV0X2J1c19mb3JtYXQKCS0gZ2V0X2VuY19pbl9lbmNvZGluZwoJ LSBnZXRfZW5jX291dF9lbmNvZGluZwoKU2lnbmVkLW9mZi1ieTogWmhlbmcgWWFuZyA8emhlbmd5 YW5nQHJvY2stY2hpcHMuY29tPgpTaWduZWQtb2ZmLWJ5OiBOZWlsIEFybXN0cm9uZyA8bmFybXN0 cm9uZ0BiYXlsaWJyZS5jb20+ClRlc3RlZC1ieTogSGVpa28gU3R1ZWJuZXIgPGhlaWtvQHNudGVj aC5kZT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3LWhkbWkuYyB8IDI4 ICsrKysrKysrKysrKysrKysrLS0tLS0tCiBpbmNsdWRlL2RybS9icmlkZ2UvZHdfaGRtaS5oICAg ICAgICAgICAgICB8ICA1ICsrKysKIDIgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwg NyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5bm9w c3lzL2R3LWhkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctaGRtaS5j CmluZGV4IDRhOWEyNGU4NTRkYi4uYmQ1NjRmZmRmMThiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3LWhkbWkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYnJp ZGdlL3N5bm9wc3lzL2R3LWhkbWkuYwpAQCAtMTgxMCw2ICsxODEwLDcgQEAgc3RhdGljIHZvaWQg aGRtaV9kaXNhYmxlX292ZXJmbG93X2ludGVycnVwdHMoc3RydWN0IGR3X2hkbWkgKmhkbWkpCiBz dGF0aWMgaW50IGR3X2hkbWlfc2V0dXAoc3RydWN0IGR3X2hkbWkgKmhkbWksIHN0cnVjdCBkcm1f ZGlzcGxheV9tb2RlICptb2RlKQogewogCWludCByZXQ7CisJdm9pZCAqZGF0YSA9IGhkbWktPnBs YXRfZGF0YS0+cGh5X2RhdGE7CiAKIAloZG1pX2Rpc2FibGVfb3ZlcmZsb3dfaW50ZXJydXB0cyho ZG1pKTsKIApAQCAtMTgyMSwxMCArMTgyMiwxMyBAQCBzdGF0aWMgaW50IGR3X2hkbWlfc2V0dXAo c3RydWN0IGR3X2hkbWkgKmhkbWksIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQogCQlk ZXZfZGJnKGhkbWktPmRldiwgIkNFQSBtb2RlIHVzZWQgdmljPSVkXG4iLCBoZG1pLT52aWMpOwog CX0KIAotCWlmICgoaGRtaS0+dmljID09IDYpIHx8IChoZG1pLT52aWMgPT0gNykgfHwKLQkgICAg KGhkbWktPnZpYyA9PSAyMSkgfHwgKGhkbWktPnZpYyA9PSAyMikgfHwKLQkgICAgKGhkbWktPnZp YyA9PSAyKSB8fCAoaGRtaS0+dmljID09IDMpIHx8Ci0JICAgIChoZG1pLT52aWMgPT0gMTcpIHx8 IChoZG1pLT52aWMgPT0gMTgpKQorCWlmIChoZG1pLT5wbGF0X2RhdGEtPmdldF9lbmNfb3V0X2Vu Y29kaW5nKQorCQloZG1pLT5oZG1pX2RhdGEuZW5jX291dF9lbmNvZGluZyA9CisJCQloZG1pLT5w bGF0X2RhdGEtPmdldF9lbmNfb3V0X2VuY29kaW5nKGRhdGEpOworCWVsc2UgaWYgKChoZG1pLT52 aWMgPT0gNikgfHwgKGhkbWktPnZpYyA9PSA3KSB8fAorCQkgKGhkbWktPnZpYyA9PSAyMSkgfHwg KGhkbWktPnZpYyA9PSAyMikgfHwKKwkJIChoZG1pLT52aWMgPT0gMikgfHwgKGhkbWktPnZpYyA9 PSAzKSB8fAorCQkgKGhkbWktPnZpYyA9PSAxNykgfHwgKGhkbWktPnZpYyA9PSAxOCkpCiAJCWhk bWktPmhkbWlfZGF0YS5lbmNfb3V0X2VuY29kaW5nID0gVjRMMl9ZQ0JDUl9FTkNfNjAxOwogCWVs c2UKIAkJaGRtaS0+aGRtaV9kYXRhLmVuY19vdXRfZW5jb2RpbmcgPSBWNEwyX1lDQkNSX0VOQ183 MDk7CkBAIC0xODMzLDIxICsxODM3LDMxIEBAIHN0YXRpYyBpbnQgZHdfaGRtaV9zZXR1cChzdHJ1 Y3QgZHdfaGRtaSAqaGRtaSwgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCiAJaGRtaS0+ aGRtaV9kYXRhLnZpZGVvX21vZGUubXBpeGVscmVwZXRpdGlvbmlucHV0ID0gMDsKIAogCS8qIFRP RklYOiBHZXQgaW5wdXQgZm9ybWF0IGZyb20gcGxhdCBkYXRhIG9yIGZhbGxiYWNrIHRvIFJHQjg4 OCAqLwotCWlmIChoZG1pLT5wbGF0X2RhdGEtPmlucHV0X2J1c19mb3JtYXQpCisJaWYgKGhkbWkt PnBsYXRfZGF0YS0+Z2V0X2lucHV0X2J1c19mb3JtYXQpCisJCWhkbWktPmhkbWlfZGF0YS5lbmNf aW5fYnVzX2Zvcm1hdCA9CisJCQloZG1pLT5wbGF0X2RhdGEtPmdldF9pbnB1dF9idXNfZm9ybWF0 KGRhdGEpOworCWVsc2UgaWYgKGhkbWktPnBsYXRfZGF0YS0+aW5wdXRfYnVzX2Zvcm1hdCkKIAkJ aGRtaS0+aGRtaV9kYXRhLmVuY19pbl9idXNfZm9ybWF0ID0KIAkJCWhkbWktPnBsYXRfZGF0YS0+ aW5wdXRfYnVzX2Zvcm1hdDsKIAllbHNlCiAJCWhkbWktPmhkbWlfZGF0YS5lbmNfaW5fYnVzX2Zv cm1hdCA9IE1FRElBX0JVU19GTVRfUkdCODg4XzFYMjQ7CiAKIAkvKiBUT0ZJWDogR2V0IGlucHV0 IGVuY29kaW5nIGZyb20gcGxhdCBkYXRhIG9yIGZhbGxiYWNrIHRvIG5vbmUgKi8KLQlpZiAoaGRt aS0+cGxhdF9kYXRhLT5pbnB1dF9idXNfZW5jb2RpbmcpCisJaWYgKGhkbWktPnBsYXRfZGF0YS0+ Z2V0X2VuY19pbl9lbmNvZGluZykKKwkJaGRtaS0+aGRtaV9kYXRhLmVuY19pbl9lbmNvZGluZyA9 CisJCQloZG1pLT5wbGF0X2RhdGEtPmdldF9lbmNfaW5fZW5jb2RpbmcoZGF0YSk7CisJZWxzZSBp ZiAoaGRtaS0+cGxhdF9kYXRhLT5pbnB1dF9idXNfZW5jb2RpbmcpCiAJCWhkbWktPmhkbWlfZGF0 YS5lbmNfaW5fZW5jb2RpbmcgPQogCQkJaGRtaS0+cGxhdF9kYXRhLT5pbnB1dF9idXNfZW5jb2Rp bmc7CiAJZWxzZQogCQloZG1pLT5oZG1pX2RhdGEuZW5jX2luX2VuY29kaW5nID0gVjRMMl9ZQ0JD Ul9FTkNfREVGQVVMVDsKIAogCS8qIFRPRklYOiBEZWZhdWx0IHRvIFJHQjg4OCBvdXRwdXQgZm9y bWF0ICovCi0JaGRtaS0+aGRtaV9kYXRhLmVuY19vdXRfYnVzX2Zvcm1hdCA9IE1FRElBX0JVU19G TVRfUkdCODg4XzFYMjQ7CisJaWYgKGhkbWktPnBsYXRfZGF0YS0+Z2V0X291dHB1dF9idXNfZm9y bWF0KQorCQloZG1pLT5oZG1pX2RhdGEuZW5jX291dF9idXNfZm9ybWF0ID0KKwkJCWhkbWktPnBs YXRfZGF0YS0+Z2V0X291dHB1dF9idXNfZm9ybWF0KGRhdGEpOworCWVsc2UKKwkJaGRtaS0+aGRt aV9kYXRhLmVuY19vdXRfYnVzX2Zvcm1hdCA9IE1FRElBX0JVU19GTVRfUkdCODg4XzFYMjQ7CiAK IAloZG1pLT5oZG1pX2RhdGEucGl4X3JlcGV0X2ZhY3RvciA9IDA7CiAJaGRtaS0+aGRtaV9kYXRh LmhkY3BfZW5hYmxlID0gMDsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2JyaWRnZS9kd19oZG1p LmggYi9pbmNsdWRlL2RybS9icmlkZ2UvZHdfaGRtaS5oCmluZGV4IDdhMDI3NDRjZTBiYy4uMmU3 OTdmNzgyYzUxIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9icmlkZ2UvZHdfaGRtaS5oCisrKyBi L2luY2x1ZGUvZHJtL2JyaWRnZS9kd19oZG1pLmgKQEAgLTE0Miw2ICsxNDIsMTEgQEAgc3RydWN0 IGR3X2hkbWlfcGxhdF9kYXRhIHsKIAlpbnQgKCpjb25maWd1cmVfcGh5KShzdHJ1Y3QgZHdfaGRt aSAqaGRtaSwKIAkJCSAgICAgY29uc3Qgc3RydWN0IGR3X2hkbWlfcGxhdF9kYXRhICpwZGF0YSwK IAkJCSAgICAgdW5zaWduZWQgbG9uZyBtcGl4ZWxjbG9jayk7CisKKwl1bnNpZ25lZCBsb25nICgq Z2V0X2lucHV0X2J1c19mb3JtYXQpKHZvaWQgKmRhdGEpOworCXVuc2lnbmVkIGxvbmcgKCpnZXRf b3V0cHV0X2J1c19mb3JtYXQpKHZvaWQgKmRhdGEpOworCXVuc2lnbmVkIGxvbmcgKCpnZXRfZW5j X2luX2VuY29kaW5nKSh2b2lkICpkYXRhKTsKKwl1bnNpZ25lZCBsb25nICgqZ2V0X2VuY19vdXRf ZW5jb2RpbmcpKHZvaWQgKmRhdGEpOwogfTsKIAogc3RydWN0IGR3X2hkbWkgKmR3X2hkbWlfcHJv YmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKLS0gCjIuMjAuMQoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlz dApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==