Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4717112pxj; Tue, 25 May 2021 14:49:50 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwc3039xPpTx9jk64c+xTXhf3H45SADYa3Pgn4K4XxO8hTCJJAWKQnaaq9vNLKUSJErRz8r X-Received: by 2002:a92:ddc6:: with SMTP id d6mr20553740ilr.51.1621979390568; Tue, 25 May 2021 14:49:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621979390; cv=none; d=google.com; s=arc-20160816; b=qtnzMt/zfCsLctYd87OqgI0fBZ6QD20ZuaVFl4sVb/bRQ+qxbLxJ0Q5KznKuVGfw1Z e/P9kVbx0bWHpex9LsQtSELbC58N9vZ6FgWPRzylc4PFf1Cc9+TPjUehdkDXnwzgtw9w Jr36PGHbS/4hZhKoZITjOoqVTKwppSb6njj+CmGTaX5pR7gOgkyrExhK0FPvk6HY7KUO 0M7mU0U5NwfhDJfiLnvFVYW6QjaK3LOtvVKsH1w+BgUFQ/voeu21czkHyK2Zdddz7uq/ 27X9/J7oTYaL0nFMM6a8L+aowWSEyzVFrloJO8wRMkErIAS3onu3ZA/zUhiY75PIiPky /qmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature; bh=uA5NkUKXM0NWHdAHxp1SODLexJ5Ziie+gDyKfXP7raY=; b=ieh/OZqTZxA8fLYPKkY2moKUL2hi9GxLySd6rGc24o6kK44lma0QuJnOmL3sCWNYTz 8DqUgOgKvwTfQn3Qa3nnc9n3ZVAk6jrMK8LT8Z/DOY6tdI0Ff/OhEUS/O3FDWfiPhx7z ctmMNzzIvp9OaA3UOgUOrGHWElNx359L6Anb3ate2d7rZ/PIxXqisPskl6iCOZZrZVgt c6bOz88n1rV+htJksQlyOdCiesmx6B5U9nFW2OJevphZd9/+9lKr8egFLZe3Ej5s3rRO r/65zyoi4zLhTlp1V2kKtehPIwD9R3VndZ5aBVKjNKF0Ke1ve8tLzZ8v1x2EEbXJACAN YGgw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@marek-ca.20150623.gappssmtp.com header.s=20150623 header.b=LYluVxIB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x23si16882525jab.92.2021.05.25.14.49.37; Tue, 25 May 2021 14:49:50 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@marek-ca.20150623.gappssmtp.com header.s=20150623 header.b=LYluVxIB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229681AbhEYSlV (ORCPT + 99 others); Tue, 25 May 2021 14:41:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47918 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230250AbhEYSlU (ORCPT ); Tue, 25 May 2021 14:41:20 -0400 Received: from mail-qt1-x835.google.com (mail-qt1-x835.google.com [IPv6:2607:f8b0:4864:20::835]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 267CAC06175F for ; Tue, 25 May 2021 11:39:49 -0700 (PDT) Received: by mail-qt1-x835.google.com with SMTP id t20so23822385qtx.8 for ; Tue, 25 May 2021 11:39:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marek-ca.20150623.gappssmtp.com; s=20150623; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=uA5NkUKXM0NWHdAHxp1SODLexJ5Ziie+gDyKfXP7raY=; b=LYluVxIBkI8U+Xe05mqgEsvQ0Z4D5b/Wgzt7o556utVtLdH+xmKVabulxtB8DCOStR P2aqV6AunQzLtd8v8Di65NcqNFbNvhsgkvMq2cb9Jgwhv0D/Djr5BMttMsLbAUB4L8ps KM1zUM0LEWFBRLU+kQD3ZFS973QpfuEwXKkZrsqqrplqqCXoZSO9tz/6fgAMyLt1H393 obsQUvVvPwWjM/wD4RfvoFKqOiV7pflSMqsHFUG5LiWDND0G83IaK1UyvtHN3EVveu8Y FtRXa6/g5sFVGpn+DzU2z2qYA+vVL8TM+ErVLVQx3NmoEZPuU+COqKHVyvtEsEPFefBh RW5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=uA5NkUKXM0NWHdAHxp1SODLexJ5Ziie+gDyKfXP7raY=; b=ESgAt9GtOmEuZegG8dWHgF9CS9bFtZPCeOzX+MEpmwckJTn/GwRqzXi0n99jrGGzdN EV3+DnitrMekzUzFsBCkTHRW7pfEecqAoR8YZKrxEpAkJjsx+J1rFkVSqHK/ISf64gID gZot9pZCrPr0jX1JvcjFDO0nm0O4vKI8r3xiHq6bLfuOSeijje0bwHRnG1yoJy43efsc VpaZNw9Ug7JhBy0QD3y1PYQYNRDRlk8W/Q/Ll4aueTxmcHUn8DBmjz3C2c41yTf1uMA9 ZdRVXuZ1hGwRISeDWn9YtatvnC50QBfEr2IrSD3KU16bahzrlD1d411cm9euOEF+Q7TC XKRA== X-Gm-Message-State: AOAM532eQT1mSF79VxtIDiN5/oY5pc1mNddzh5Y2u0PxRVjLgRfIA0ku LQv1SpZ25CesTuYVfKSWGvpUoGYAbWRtLRTdvLA= X-Received: by 2002:ac8:5981:: with SMTP id e1mr33246270qte.310.1621967987988; Tue, 25 May 2021 11:39:47 -0700 (PDT) Received: from [192.168.0.189] (modemcable068.184-131-66.mc.videotron.ca. [66.131.184.68]) by smtp.gmail.com with ESMTPSA id j28sm13570276qkl.35.2021.05.25.11.39.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 25 May 2021 11:39:47 -0700 (PDT) Subject: Re: [PATCH 04/17] media: camss: csid-170: fix non-10bit formats To: Andrey Konovalov , linux-arm-msm@vger.kernel.org Cc: robert.foss@linaro.org, Todor Tomov , Andy Gross , Bjorn Andersson , Mauro Carvalho Chehab , Hans Verkuil , "open list:QUALCOMM CAMERA SUBSYSTEM DRIVER" , open list References: <20210511180728.23781-1-jonathan@marek.ca> <20210511180728.23781-5-jonathan@marek.ca> From: Jonathan Marek Message-ID: <99f482de-78f8-82da-e52b-7f76da67ff39@marek.ca> Date: Tue, 25 May 2021 14:38:42 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 5/25/21 2:15 PM, Andrey Konovalov wrote: > 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 >> --- >>   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). > I will change it back to using DECODE_FORMAT_PAYLOAD_ONLY for the v2, since it does seem like this is the correct value for the RDI path. (but IIRC, using DECODE_FORMAT_UNCOMPRESSED_10_BIT worked on RB3 with the ov8856 camera last year when I brought it up. maybe the VFE or another register is configured differently) > Thanks, > Andrey > >>           val |= vc << RDI_CFG0_VIRTUAL_CHANNEL; >>           val |= dt_id << RDI_CFG0_DT_ID; >>           writel_relaxed(val, csid->base + CSID_RDI_CFG0(0)); >>