lkml.org 
[lkml]   [2021]   [May]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 04/17] media: camss: csid-170: fix non-10bit formats
From
Date
Hi Jonathan,

Thank you for your patch!

On 11.05.2021 21:07, Jonathan Marek wrote:
> Use the decode_format/data_type from the "format" struct instead of a
> hardcoded 10-bit format.
>
> Fixes: eebe6d00e9bf ("media: camss: Add support for CSID hardware version Titan 170")
> Signed-off-by: Jonathan Marek <jonathan@marek.ca>
> ---
> drivers/media/platform/qcom/camss/camss-csid-170.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/media/platform/qcom/camss/camss-csid-170.c b/drivers/media/platform/qcom/camss/camss-csid-170.c
> index ac22ff29d2a9..a81cc94c075f 100644
> --- a/drivers/media/platform/qcom/camss/camss-csid-170.c
> +++ b/drivers/media/platform/qcom/camss/camss-csid-170.c
> @@ -366,7 +366,7 @@ static void csid_configure_stream(struct csid_device *csid, u8 enable)
> val |= input_format->width & 0x1fff << TPG_DT_n_CFG_0_FRAME_WIDTH;
> writel_relaxed(val, csid->base + CSID_TPG_DT_n_CFG_0(0));
>
> - val = DATA_TYPE_RAW_10BIT << TPG_DT_n_CFG_1_DATA_TYPE;
> + val = format->data_type << TPG_DT_n_CFG_1_DATA_TYPE;
> writel_relaxed(val, csid->base + CSID_TPG_DT_n_CFG_1(0));
>
> val = tg->mode << TPG_DT_n_CFG_2_PAYLOAD_MODE;
> @@ -382,8 +382,8 @@ static void csid_configure_stream(struct csid_device *csid, u8 enable)
> val = 1 << RDI_CFG0_BYTE_CNTR_EN;
> val |= 1 << RDI_CFG0_FORMAT_MEASURE_EN;
> val |= 1 << RDI_CFG0_TIMESTAMP_EN;
> - val |= DECODE_FORMAT_PAYLOAD_ONLY << RDI_CFG0_DECODE_FORMAT;
> - val |= DATA_TYPE_RAW_10BIT << RDI_CFG0_DATA_TYPE;
> + val |= format->decode_format << RDI_CFG0_DECODE_FORMAT;
> + val |= format->data_type << RDI_CFG0_DATA_TYPE;

I've given it a try on RB3 board (aka db845c plus the navigation mezzanine), which uses ov8856 camera
sensor (its output format is SGRBG10_1X10).

The above change doesn't work for me because format->decode_format has the value of 0x02 (which is
DECODE_FORMAT_UNCOMPRESSED_10_BIT). format->data_type has the expected value of 0x2b (DATA_TYPE_RAW_10BIT).

Thanks,
Andrey

> val |= vc << RDI_CFG0_VIRTUAL_CHANNEL;
> val |= dt_id << RDI_CFG0_DT_ID;
> writel_relaxed(val, csid->base + CSID_RDI_CFG0(0));
>

\
 
 \ /
  Last update: 2021-05-25 20:15    [W:2.454 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site