From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from perceval.ideasonboard.com ([213.167.242.64]:53078 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754729AbeDWMMn (ORCPT ); Mon, 23 Apr 2018 08:12:43 -0400 From: Laurent Pinchart To: jacopo mondi Cc: Peter Rosin , Jacopo Mondi , architt@codeaurora.org, a.hajda@samsung.com, airlied@linux.ie, daniel@ffwll.ch, linux-renesas-soc@vger.kernel.org, linux-media@vger.kernel.org, devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 3/8] drm: bridge: thc63lvd1024: Add support for LVDS mode map Date: Mon, 23 Apr 2018 15:12:54 +0300 Message-ID: <1653352.Yto2ZqehFs@avalon> In-Reply-To: <20180423074156.GO4235@w540> References: <1524130269-32688-1-git-send-email-jacopo+renesas@jmondi.org> <86c2d4c9-8079-9f25-f24a-58c7866a8274@axentia.se> <20180423074156.GO4235@w540> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Sender: linux-renesas-soc-owner@vger.kernel.org List-ID: Hi Jacopo, On Monday, 23 April 2018 10:41:56 EEST jacopo mondi wrote: > On Sun, Apr 22, 2018 at 10:02:51PM +0200, Peter Rosin wrote: > > On 2018-04-19 11:31, Jacopo Mondi wrote: > >> The THC63LVD1024 LVDS to RGB bridge supports two different LVDS mapping > >> modes, selectable by means of an external pin. > >> > >> Add support for configurable LVDS input mapping modes, using the newly > >> introduced support for bridge input image formats. > >> > >> Signed-off-by: Jacopo Mondi > >> --- > >> > >> drivers/gpu/drm/bridge/thc63lvd1024.c | 41 ++++++++++++++++++++++++++++ > >> 1 file changed, 41 insertions(+) > >> > >> diff --git a/drivers/gpu/drm/bridge/thc63lvd1024.c > >> b/drivers/gpu/drm/bridge/thc63lvd1024.c index 48527f8..a3071a1 100644 > >> --- a/drivers/gpu/drm/bridge/thc63lvd1024.c > >> +++ b/drivers/gpu/drm/bridge/thc63lvd1024.c [snip] > >> +static int thc63_set_bus_fmt(struct thc63_dev *thc63) > >> +{ > >> + u32 bus_fmt; > >> + u32 map; > >> + int ret; > >> + > >> + ret = of_property_read_u32(thc63->dev->of_node, "thine,map", &map); > >> + if (ret) { > >> + dev_err(thc63->dev, > >> + "Unable to parse property \"thine,map\": %d\n", ret); > >> + return ret; > >> + } > >> + > >> + switch (map) { > >> + case THC63_LVDS_MAP_MODE1: > >> + bus_fmt = MEDIA_BUS_FMT_RGB888_1X7X4_JEIDA; > >> + break; > >> + case THC63_LVDS_MAP_MODE2: > >> + bus_fmt = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG; > > > > Why do you assume rgb888/1x7x4 here? It might as well be rgb666/1x7x3 > > or rgb101010/1x7x5, no? > > I should combine the 'map' pin input mode property with the 'bus_width' one > to find that out probably. Yes, but that could also be left for later, when the need to support those formats arise, especially given that include/uapi/linux/media-bus-format.h has no 1x7x5 formats yet. > >> + break; > >> + default: > >> + dev_err(thc63->dev, > >> + "Invalid value for property \"thine,map\": %u\n", map); > >> + return -EINVAL; > >> + } > >> + > >> + drm_bridge_set_bus_formats(&thc63->bridge, &bus_fmt, 1); > >> + > >> + return 0; > >> +} -- Regards, Laurent Pinchart From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH 3/8] drm: bridge: thc63lvd1024: Add support for LVDS mode map Date: Mon, 23 Apr 2018 15:12:54 +0300 Message-ID: <1653352.Yto2ZqehFs@avalon> References: <1524130269-32688-1-git-send-email-jacopo+renesas@jmondi.org> <86c2d4c9-8079-9f25-f24a-58c7866a8274@axentia.se> <20180423074156.GO4235@w540> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180423074156.GO4235@w540> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: jacopo mondi Cc: devicetree@vger.kernel.org, airlied@linux.ie, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, Jacopo Mondi , Peter Rosin , linux-media@vger.kernel.org List-Id: devicetree@vger.kernel.org SGkgSmFjb3BvLAoKT24gTW9uZGF5LCAyMyBBcHJpbCAyMDE4IDEwOjQxOjU2IEVFU1QgamFjb3Bv IG1vbmRpIHdyb3RlOgo+IE9uIFN1biwgQXByIDIyLCAyMDE4IGF0IDEwOjAyOjUxUE0gKzAyMDAs IFBldGVyIFJvc2luIHdyb3RlOgo+ID4gT24gMjAxOC0wNC0xOSAxMTozMSwgSmFjb3BvIE1vbmRp IHdyb3RlOgo+ID4+IFRoZSBUSEM2M0xWRDEwMjQgTFZEUyB0byBSR0IgYnJpZGdlIHN1cHBvcnRz IHR3byBkaWZmZXJlbnQgTFZEUyBtYXBwaW5nCj4gPj4gbW9kZXMsIHNlbGVjdGFibGUgYnkgbWVh bnMgb2YgYW4gZXh0ZXJuYWwgcGluLgo+ID4+IAo+ID4+IEFkZCBzdXBwb3J0IGZvciBjb25maWd1 cmFibGUgTFZEUyBpbnB1dCBtYXBwaW5nIG1vZGVzLCB1c2luZyB0aGUgbmV3bHkKPiA+PiBpbnRy b2R1Y2VkIHN1cHBvcnQgZm9yIGJyaWRnZSBpbnB1dCBpbWFnZSBmb3JtYXRzLgo+ID4+IAo+ID4+ IFNpZ25lZC1vZmYtYnk6IEphY29wbyBNb25kaSA8amFjb3BvK3JlbmVzYXNAam1vbmRpLm9yZz4K PiA+PiAtLS0KPiA+PiAKPiA+PiAgZHJpdmVycy9ncHUvZHJtL2JyaWRnZS90aGM2M2x2ZDEwMjQu YyB8IDQxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiA+PiAgMSBmaWxlIGNoYW5nZWQs IDQxIGluc2VydGlvbnMoKykKPiA+PiAKPiA+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2JyaWRnZS90aGM2M2x2ZDEwMjQuYwo+ID4+IGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS90aGM2 M2x2ZDEwMjQuYyBpbmRleCA0ODUyN2Y4Li5hMzA3MWExIDEwMDY0NAo+ID4+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9icmlkZ2UvdGhjNjNsdmQxMDI0LmMKPiA+PiArKysgYi9kcml2ZXJzL2dwdS9k cm0vYnJpZGdlL3RoYzYzbHZkMTAyNC5jCgpbc25pcF0KCj4gPj4gK3N0YXRpYyBpbnQgdGhjNjNf c2V0X2J1c19mbXQoc3RydWN0IHRoYzYzX2RldiAqdGhjNjMpCj4gPj4gK3sKPiA+PiArCXUzMiBi dXNfZm10Owo+ID4+ICsJdTMyIG1hcDsKPiA+PiArCWludCByZXQ7Cj4gPj4gKwo+ID4+ICsJcmV0 ID0gb2ZfcHJvcGVydHlfcmVhZF91MzIodGhjNjMtPmRldi0+b2Zfbm9kZSwgInRoaW5lLG1hcCIs ICZtYXApOwo+ID4+ICsJaWYgKHJldCkgewo+ID4+ICsJCWRldl9lcnIodGhjNjMtPmRldiwKPiA+ PiArCQkJIlVuYWJsZSB0byBwYXJzZSBwcm9wZXJ0eSBcInRoaW5lLG1hcFwiOiAlZFxuIiwgcmV0 KTsKPiA+PiArCQlyZXR1cm4gcmV0Owo+ID4+ICsJfQo+ID4+ICsKPiA+PiArCXN3aXRjaCAobWFw KSB7Cj4gPj4gKwljYXNlIFRIQzYzX0xWRFNfTUFQX01PREUxOgo+ID4+ICsJCWJ1c19mbXQgPSBN RURJQV9CVVNfRk1UX1JHQjg4OF8xWDdYNF9KRUlEQTsKPiA+PiArCQlicmVhazsKPiA+PiArCWNh c2UgVEhDNjNfTFZEU19NQVBfTU9ERTI6Cj4gPj4gKwkJYnVzX2ZtdCA9IE1FRElBX0JVU19GTVRf UkdCODg4XzFYN1g0X1NQV0c7Cj4gPiAKPiA+IFdoeSBkbyB5b3UgYXNzdW1lIHJnYjg4OC8xeDd4 NCBoZXJlPyBJdCBtaWdodCBhcyB3ZWxsIGJlIHJnYjY2Ni8xeDd4Mwo+ID4gb3IgcmdiMTAxMDEw LzF4N3g1LCBubz8KPiAKPiBJIHNob3VsZCBjb21iaW5lIHRoZSAnbWFwJyBwaW4gaW5wdXQgbW9k ZSBwcm9wZXJ0eSB3aXRoIHRoZSAnYnVzX3dpZHRoJyBvbmUKPiB0byBmaW5kIHRoYXQgb3V0IHBy b2JhYmx5LgoKWWVzLCBidXQgdGhhdCBjb3VsZCBhbHNvIGJlIGxlZnQgZm9yIGxhdGVyLCB3aGVu IHRoZSBuZWVkIHRvIHN1cHBvcnQgdGhvc2UgCmZvcm1hdHMgYXJpc2UsIGVzcGVjaWFsbHkgZ2l2 ZW4gdGhhdCBpbmNsdWRlL3VhcGkvbGludXgvbWVkaWEtYnVzLWZvcm1hdC5oIGhhcyAKbm8gMXg3 eDUgZm9ybWF0cyB5ZXQuCgo+ID4+ICsJCWJyZWFrOwo+ID4+ICsJZGVmYXVsdDoKPiA+PiArCQlk ZXZfZXJyKHRoYzYzLT5kZXYsCj4gPj4gKwkJCSJJbnZhbGlkIHZhbHVlIGZvciBwcm9wZXJ0eSBc InRoaW5lLG1hcFwiOiAldVxuIiwgbWFwKTsKPiA+PiArCQlyZXR1cm4gLUVJTlZBTDsKPiA+PiAr CX0KPiA+PiArCj4gPj4gKwlkcm1fYnJpZGdlX3NldF9idXNfZm9ybWF0cygmdGhjNjMtPmJyaWRn ZSwgJmJ1c19mbXQsIDEpOwo+ID4+ICsKPiA+PiArCXJldHVybiAwOwo+ID4+ICt9CgotLSAKUmVn YXJkcywKCkxhdXJlbnQgUGluY2hhcnQKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vZHJpLWRldmVsCg==