From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7DAA61E87B; Mon, 23 Jun 2025 22:06:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750716398; cv=none; b=f5CM7wxTyb38/1EN2D1qsaSpurSQ8G0TCYBbz9lg+1Bi/x+V1Vz+XiKxUAbGxJjnuIAJV5h6AIE3Yz+9XNYxBJSbAGunY9e1SFzqZo535XJkQjWmLbCcMFVndpGJn2jGBHFw0faUR1SRzNz2PXqY6+HxnfVNPKDlD6eREscwCGY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750716398; c=relaxed/simple; bh=pxKBOUp1HY+Nw/MVVp0T2Sz14teeK214EuJ4fgl5xOs=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=ajxaLD38ozb/hgPMo9by0FvRiRTYVWI9zpiiiH+yGr2OLPK7as6HJJD5qGSLMDvypt8SMYgSv0QrF7nM0mQJn3sTOdSlmCYe6s+hxXn2zrryAgstCMOpCI/VCytscRekJzzIN2uaymcLLzBDQOZdVvL9UHrsJzSf7gyu94FAvCk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=qJtDI32i; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="qJtDI32i" Received: from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi [81.175.209.231]) by perceval.ideasonboard.com (Postfix) with UTF8SMTPSA id 0B947129; Tue, 24 Jun 2025 00:06:15 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1750716376; bh=pxKBOUp1HY+Nw/MVVp0T2Sz14teeK214EuJ4fgl5xOs=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=qJtDI32iMAoTSqhhUYhTj8BgN6aPWUhVZvQk9ijR4B31V+nHcRVKBzhR3pjVLs6G5 snM5h+aM7ZC0a9By1xaKLQEVy1M2URJn2924XHlLEqCKfXHtRbm4BZWNeapIzhy6LV ElkFxsb7MG32S3/S/ptNk9Q0wm5lnoWuUyChSZsI= Date: Tue, 24 Jun 2025 01:06:12 +0300 From: Laurent Pinchart To: "Nirujogi, Pratap" Cc: Sakari Ailus , Hao Yao , Pratap Nirujogi , mchehab@kernel.org, hverkuil@xs4all.nl, bryan.odonoghue@linaro.org, krzk@kernel.org, dave.stevenson@raspberrypi.com, hdegoede@redhat.com, jai.luthra@ideasonboard.com, tomi.valkeinen@ideasonboard.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, benjamin.chan@amd.com, bin.du@amd.com, grosikop@amd.com, king.li@amd.com, dantony@amd.com, vengutta@amd.com, dongcheng.yan@intel.com, jason.z.chen@intel.com, jimmy.su@intel.com, Svetoslav.Stoilov@amd.com, Yana.Zheleva@amd.com Subject: Re: [PATCH v3 RESEND] media: i2c: Add OV05C10 camera sensor driver Message-ID: <20250623220612.GB15951@pendragon.ideasonboard.com> References: <20250609194321.1611419-1-pratap.nirujogi@amd.com> <6a49eb11-d434-4315-8ee9-0f8aa7347de2@intel.com> <3e8364e8-22e4-42ad-a0f0-017f86fd6bf9@amd.com> <20250623120929.GE826@pendragon.ideasonboard.com> <20250623134200.GB29597@pendragon.ideasonboard.com> Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: On Mon, Jun 23, 2025 at 05:55:14PM -0400, Nirujogi, Pratap wrote: > On 6/23/2025 9:42 AM, Laurent Pinchart wrote: > > On Mon, Jun 23, 2025 at 01:22:00PM +0000, Sakari Ailus wrote: > >> On Mon, Jun 23, 2025 at 03:09:29PM +0300, Laurent Pinchart wrote: > >>> On Mon, Jun 16, 2025 at 07:12:28PM -0400, Nirujogi, Pratap wrote: > >>>> On 6/13/2025 6:02 PM, Sakari Ailus wrote: > >>>>> On Fri, Jun 13, 2025 at 12:55:46PM +0800, Hao Yao wrote: > >>>>>> Hi Pratap, > >>>>>> > >>>>>> Thanks for your patch. > >>>>>> > >>>>>> This patch is written for your camera sensor module, which seems very > >>>>>> different from those already applied on Dell laptops (some of "Dell Pro" > >>>>>> series). Looking into the driver, I think this version will break the > >>>>>> devices using ov05c10 sensor. > >>>>> > >>>>> There never was such a driver in upstream so nothing breaks. However, in > >>>>> order to support these, could you check what would it take to support them > >>>>> using this driver and post patches, please? > >>>>> > >>>>>> I think this patch is better to be validated on existing devices, but please > >>>>>> do some fixes before we can do validation. Please check my comments inline. > >>>>>> > >>>>>> On 2025/6/10 03:42, Pratap Nirujogi wrote: > >>>>>>> Add driver for OmniVision 5.2M OV05C10 sensor. This driver > >>>>>>> supports only the full size normal 2888x1808@30fps 2-lane > >>>>>>> sensor profile. > >>>>>>> > >>>>>>> Co-developed-by: Venkata Narendra Kumar Gutta > >>>>>>> Signed-off-by: Venkata Narendra Kumar Gutta > >>>>>>> Co-developed-by: Bin Du > >>>>>>> Signed-off-by: Bin Du > >>>>>>> Signed-off-by: Pratap Nirujogi > >>> > >>> [snip] > >>> > >>>>>> Hi Sakari, > >>>>>> > >>>>>> Seems there are already several camera sensors using page-based registers. > >>>>>> Is it a good idea to add page support in CCI interface? > >>>>> > >>>>> Sounds like a good idea as such but I'm not sure how common this really is, > >>>>> I think I've seen a few Omnivision sensors doing this. If implemented, I > >>>>> think it would be nice if the page could be encoded in the register address > >>>>> which V4L2 CCI would store and switch page if needed only. This would > >>>>> require serialising accesses, too. There's some room in CCI register raw > >>>>> value space so this could be done without even changing that, say, with > >>>>> 8-bit page and 8-bit register address. > >>>> > >>>> Hi Sakari, thank you for sharing your insights and guiding us. Could you > >>>> please suggest if we should take up this work implementing the helpers > >>>> in CCI and submit the patch or is it okay to leave it as-is for now and > >>>> take care of updating in future once the implementation is ready. > >>> > >>> I think it can live in the driver for now. Given that the device uses > >>> only 8 bits of register address, I would store the page number in bits > >>> 15:8 instead of bits 31:24, as the CCI helpers do not make bits 27:24 > >>> available for driver-specific purpose. > >> > >> I'd use the CCI private bits, the driver uses page numbers up to 4 so 4 > >> bits are plenty for that. If we add pages to CCI later, this may be > >> refactored then. > > > > That works too. > > Thanks for your support. We will add the page number in the register > address 15:8 or 11:8 and will update the implementation accordingly in > the next version. The CCI private bits are bits 31:28. -- Regards, Laurent Pinchart