lkml.org 
[lkml]   [2018]   [Apr]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [PATCH 3/8] drm: bridge: thc63lvd1024: Add support for LVDS mode map
    Date
    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 <jacopo+renesas@jmondi.org>
    > >> ---
    > >>
    > >> 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



    \
     
     \ /
      Last update: 2018-04-23 14:13    [W:3.644 / U:0.584 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site