Hi Petko, Am Donnerstag, 18. August 2022, 12:51:31 CEST schrieb Jacopo Mondi: > Hi Petko > > On Thu, Aug 18, 2022 at 12:27:45PM +0300, Petko Manolov wrote: > > Hello again, > > > > After digging down NXP's documentation and reading some comments within > > kernel drivers (sorry Jacopo, you've left some nice comments in > > imx7-media-csi.c, hence you're spammed now :) i came to the conclusion > > that mipi-csi to csi-bridge data > No worries. > > I tried re-reading all the discussions, but memory still fails me > here. > > I recall I had an issue with the CSIS bandwidth and somewhere I > suggested that it might be due to the CSI-2 specification version that > the peripheral implemented. I can't find that email anymore though :/ > > > path can only be 8bits in raw12 format. The only exception is YUV422 > > format, which get BIT_MIPI_DOUBLE_CMPNT flag set. > > Yes, there has been quite some discussions about how to mix-and-match > the settings between the CSIS (mipi-csi) and the CSI (csi-bridge) [*] > > If I recall correctly there are at least three configurations at play: > > - The CSIS pixel mode selection > > MIPI_CSI_ISP_CONFIG[13:12] > > The driver currently forces dual pixel sampling mode for YUV422 > and report a TODO: > > * TODO: Verify which other formats require DUAL (or QUAD) modes. > > Here you're trying to transfer RAW12 data, which is indicated in the > register documentation as one of the formats suitable for DUAL/QUAD > mode transfer > > - I'm actually not sure how and if RAW12 gets expanded to 16 bit > samples by filling the 16-bit word with 0s or it either gets > packed in 6 bytes with no paddings. Figure "13-33. Pixel > alignment" seems to suggest that, but I'm not sure I really got > that diagram > > - The CSI-bridge > > - CSI_CR3[3] SENSOR_16BITS > - CSI_CR18[20] MIPI_DOUBLE_CMP > > The comment in imx7_csi_configure() explains how different versions > of YUYV (2X8 and 1X16) are handled, and why SENSOR_16BITS and > MIPI_DOUBLE_CMP have to be enabled when the csi-bridge has to be > instructed to sample 16 bits samples from the RX queue. > > I guess the key would be here to find out what combination of > SINGLE/DUAL/QUAD sampling is opportune for RAW12 (I would try with > DUAL first and then QUAD) and then configure the csi-bridge bus > sampling mode accordingly (likely in the same was as it is done for > YUYV_1X16) > > When it comes to bandwidth limitation, can you try to reduce the > sensor output size to make sure you chase one issue at the time ? > > [*] Is "CSI" the most abused acronym of history ? > > > So i guess there are two questions: > > a) can the csi-bridge (and mipi-csi) be persuaded to do two-bytes for > > raw12 format; > > See above :) > > > b) what's the maximum frequency for csi-bridge PIXCLK? While it does not exactly answer your question, the i.MX8M Mini Datasheet (both for Commercial and Industrial) mentions "four-lane MIPI camera serial interfaces, which operates up to a maximum bit rate of 1.5 Gbps". I would assume the bridge is capable of handling the full link speed on four lanes, otherwise this would be quite useless. Best regards, Alexander