Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753053AbdCFMRc (ORCPT ); Mon, 6 Mar 2017 07:17:32 -0500 Received: from smtprelay4.synopsys.com ([198.182.47.9]:46383 "EHLO smtprelay.synopsys.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752183AbdCFMRY (ORCPT ); Mon, 6 Mar 2017 07:17:24 -0500 Subject: Re: [PATCH v2 1/2] drm: bridge: dw-hdmi: Take input format from plat_data To: Neil Armstrong , Jose Abreu , Laurent Pinchart References: <1488468572-31971-1-git-send-email-narmstrong@baylibre.com> <1488468572-31971-2-git-send-email-narmstrong@baylibre.com> <2768953.c6tz7qsbuQ@avalon> <0ae7ae64-13ad-6691-ada7-7c8f2851b517@baylibre.com> <3898e9a2-a751-abe4-fc31-7de18682c5da@synopsys.com> <7ec0d5dc-a09d-2790-34db-669e87c89fa3@baylibre.com> <3cadc66c-9ca8-5658-0023-45ad68ca5939@synopsys.com> CC: , , , , From: Jose Abreu Message-ID: <7ccfc45b-445b-45cb-c407-2a38822d0249@synopsys.com> Date: Mon, 6 Mar 2017 12:17:00 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.107.19.61] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2770 Lines: 99 Hi Neil, On 06-03-2017 10:41, Neil Armstrong wrote: > On 03/03/2017 06:22 PM, Jose Abreu wrote: >> Hi Neil, >> >> >> On 03-03-2017 16:42, Neil Armstrong wrote: >>> Sure, I was meaning the *input* format the controller receives from the >>> pixel encoder, I'm quite sure the format is strict. >>> >> Hmm, not quite following you here. As far as the controller goes >> it supports the formats I mentioned: >> - 8/10/12/16 bits RGB 4:4:4 >> - 8/10/12/16 bits YCbCr 4:4:4 >> - 8/10/12 bits YCbCr 4:2:2 >> - 8/10/12/16 bits YCbCr 4:2:0 >> >> As for the CSC it supports RGB 4:4:4 to/from YCbCr 4:4:4 or 4:2:2 >> in every defined color depth. >> >> So, everything except 4:2:0 (I had to check documentation, I >> though that CSC supported less formats). >> >> Of course this is all limited by the implementation that HW team >> decides to choose. >> >> Best regards, >> Jose Miguel Abreu >> > Hi Jose, > > Thanks for the clarifications. > > I will try to add missing V4L formats > > - 8/10/12/16 bits RGB 4:4:4 > > MEDIA_BUS_FMT_RGB888_1X24 > MEDIA_BUS_FMT_RGB101010_1X30 (to be added) > MEDIA_BUS_FMT_RGB121212_1X36 (to be added) > MEDIA_BUS_FMT_RGB161616_1X48 (to be added) > > - 8/10/12/16 bits YCbCr 4:4:4 > > MEDIA_BUS_FMT_YUV8_1X24 > MEDIA_BUS_FMT_YUV10_1X30 > MEDIA_BUS_FMT_YUV12_1X36 (to be added) > MEDIA_BUS_FMT_YUV16_1X48 (to be added) > > - 8/10/12 bits YCbCr 4:2:2 > > MEDIA_BUS_FMT_UYVY8_1X16 > MEDIA_BUS_FMT_UYVY10_1X20 > MEDIA_BUS_FMT_UYVY12_1X24 > > - 8/10/12/16 bits YCbCr 4:2:0 > > Jose, how is supposed to be transmitted 4:2:0 over the controller ? > > Amlogic uses clock doubling to transmit 4:2:0 in CrYCb format. > > I assume, the transmission is in YYUYYV format in 2x clock. Double rate or half rate? 4:2:0 requires half the bandwidth and the horizontal parameters are cut off by half also. I'm not very familiar with 4:2:0 but according to spec it shall be Cb[l][n] Y[l][n] Y[l][n+1] in one line and then Cr[l][n] Y[l+1][n] Y[l+1][n+1] in another line (where "l" is pixel line number and "n" is pixel number). I've worked with 4:2:0 previously but it was just for a prof of concept (I never got to a point where I could submit anything standard), maybe someone who has worked with this can expand a little bit. Anyone? > > So the formats should be (aligned on the MEDIA_BUS_FMT_YUYV8_1_5X8) : > > MEDIA_BUS_FMT_YUYV8_1_1X24 (to be added) > MEDIA_BUS_FMT_YUYV10_1_1X30 (to be added) > MEDIA_BUS_FMT_YUYV12_1_1X36 (to be added) > MEDIA_BUS_FMT_YUYV16_1_1X48 (to be added) > > to have the following transmissions scheme : > > uuuuuuuu/yyyyyyyy/yyyyyyyy > vvvvvvvv/yyyyyyyy/yyyyyyyy > > Can you confirm this ? Seems fine, chroma in consecutive lines and luma in every line. Best regards, Jose Miguel Abreu > > Neil