<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/media/i2c, branch linux-6.15.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.15.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.15.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2025-08-20T16:36:21Z</updated>
<entry>
<title>media: tc358743: Increase FIFO trigger level to 374</title>
<updated>2025-08-20T16:36:21Z</updated>
<author>
<name>Dave Stevenson</name>
</author>
<published>2025-06-11T18:37:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f56e1873c0ba84ad1f06210c4f0cde9d102c8f94'/>
<id>urn:sha1:f56e1873c0ba84ad1f06210c4f0cde9d102c8f94</id>
<content type='text'>
[ Upstream commit 86addd25314a1e77dbdcfddfeed0bab2f27da0e2 ]

The existing fixed value of 16 worked for UYVY 720P60 over
2 lanes at 594MHz, or UYVY 1080P60 over 4 lanes. (RGB888
1080P60 needs 6 lanes at 594MHz).
It doesn't allow for lower resolutions to work as the FIFO
underflows.

374 is required for 1080P24 or 1080P30 UYVY over 2 lanes @
972Mbit/s, but &gt;374 means that the FIFO underflows on 1080P50
UYVY over 2 lanes @ 972Mbit/s.

Whilst it would be nice to compute it, the required information
isn't published by Toshiba.

Signed-off-by: Dave Stevenson &lt;dave.stevenson@raspberrypi.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: tc358743: Return an appropriate colorspace from tc358743_set_fmt</title>
<updated>2025-08-20T16:36:21Z</updated>
<author>
<name>Dave Stevenson</name>
</author>
<published>2025-06-11T18:37:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6582caa6b4b40658dcbae1ef5c38b3204967bdc3'/>
<id>urn:sha1:6582caa6b4b40658dcbae1ef5c38b3204967bdc3</id>
<content type='text'>
[ Upstream commit 377cc006a364dfdab2f3f221cfad63a9265200b8 ]

When calling tc358743_set_fmt, the code was calling tc358743_get_fmt
to choose a valid format. However that sets the colorspace
based on information read back from the chip, not the colour
format requested.

The result was that if you called try or set format for UYVY
when the current format was RGB3 then you would get told SRGB,
and try RGB3 when current was UYVY and you would get told
SMPTE170M.

The value programmed in the VI_REP register for the colorspace
is always set by this driver, therefore there is no need to read
back the value, and never set to REC709.
Return the colorspace based on the format set/tried instead.

Signed-off-by: Dave Stevenson &lt;dave.stevenson@raspberrypi.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: tc358743: Check I2C succeeded during probe</title>
<updated>2025-08-20T16:36:20Z</updated>
<author>
<name>Dave Stevenson</name>
</author>
<published>2025-06-11T18:37:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a6955a25c60ca6f4ca691f8afc86fd459a590b31'/>
<id>urn:sha1:a6955a25c60ca6f4ca691f8afc86fd459a590b31</id>
<content type='text'>
[ Upstream commit 303d81635e1d9c949b370215cc94526ed81f2e3d ]

The probe for the TC358743 reads the CHIPID register from
the device and compares it to the expected value of 0.
If the I2C request fails then that also returns 0, so
the driver loads thinking that the device is there.

Generally I2C communications are reliable so there is
limited need to check the return value on every transfer,
therefore only amend the one read during probe to check
for I2C errors.

Signed-off-by: Dave Stevenson &lt;dave.stevenson@raspberrypi.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: hi556: Fix reset GPIO timings</title>
<updated>2025-08-20T16:36:18Z</updated>
<author>
<name>Hans de Goede</name>
</author>
<published>2025-05-31T19:05:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f3a155579c38382c229fc23870160efccb0e191b'/>
<id>urn:sha1:f3a155579c38382c229fc23870160efccb0e191b</id>
<content type='text'>
[ Upstream commit 99f2211a9d89fe34b3fa847fd7a4475171406cd0 ]

probe() requests the reset GPIO to be set to high when getting it.
Immeditately after this hi556_resume() is called and sets the GPIO low.

If the GPIO was low before requesting it this will result in the GPIO
only very briefly spiking high and the sensor not being properly reset.
The same problem also happens on back to back runtime suspend + resume.

Fix this by adding a sleep of 2 ms in hi556_resume() before setting
the GPIO low (if there is a reset GPIO).

The final sleep is kept unconditional, because if there is e.g. no reset
GPIO but a controllable clock then the sensor also needs some time after
enabling the clock.

Signed-off-by: Hans de Goede &lt;hdegoede@redhat.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: i2c: set lt6911uxe's reset_gpio to GPIOD_OUT_LOW</title>
<updated>2025-08-20T16:35:42Z</updated>
<author>
<name>Dongcheng Yan</name>
</author>
<published>2025-05-21T07:15:19Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e22a0aa5b5e6d0e0c400cff3eceb37130f1f6c63'/>
<id>urn:sha1:e22a0aa5b5e6d0e0c400cff3eceb37130f1f6c63</id>
<content type='text'>
commit 3c607baf68639d6bfe1a336523c4c9597f4b512a upstream.

reset_gpio needs to be an output and set to GPIOD_OUT_LOW, to ensure
lt6911uxe is in reset state during probe.

This issue was found on the onboard lt6911uxe, where the reset_pin was
not reset, causing the lt6911uxe to fail to probe.

Fixes: e49563c3be09d4 ("media: i2c: add lt6911uxe hdmi bridge driver")
Cc: stable@vger.kernel.org
Signed-off-by: Dongcheng Yan &lt;dongcheng.yan@intel.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>media: i2c: imx334: update mode_3840x2160_regs array</title>
<updated>2025-06-27T10:13:19Z</updated>
<author>
<name>Shravan Chippa</name>
</author>
<published>2025-03-05T05:14:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4b7d6e44a3987c00fd0bc8be72ef944cb6a196fe'/>
<id>urn:sha1:4b7d6e44a3987c00fd0bc8be72ef944cb6a196fe</id>
<content type='text'>
[ Upstream commit 35132d039c566b0e9d8e53f76f512b22607c2405 ]

The 3840x2160 mode operates with the imx334 reset values.
If we switch to other modes and then return to the 3840x2160 mode,
it should function correctly. so updated the mode_3840x2160_regs
array with the imx334 reset values.

Signed-off-by: Shravan Chippa &lt;shravan.chippa@microchip.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: tc358743: ignore video while HPD is low</title>
<updated>2025-06-27T10:13:19Z</updated>
<author>
<name>Hans Verkuil</name>
</author>
<published>2025-04-01T09:54:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=83f3b6f987b359d25b4ba06344e52b672b05467f'/>
<id>urn:sha1:83f3b6f987b359d25b4ba06344e52b672b05467f</id>
<content type='text'>
[ Upstream commit 6829c5b5d26b1be31880d74ec24cb32d2d75f1ae ]

If the HPD is low (happens if there is no EDID or the
EDID is being updated), then return -ENOLINK in
tc358743_get_detected_timings() instead of detecting video.

This avoids userspace thinking that it can start streaming when
the HPD is low.

Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Tested-by: Maxime Ripard &lt;mripard@kernel.org&gt;
Link: https://lore.kernel.org/linux-media/20240628-stoic-bettong-of-fortitude-e25611@houat/
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+huawei@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: ccs-pll: Better validate VT PLL branch</title>
<updated>2025-06-27T10:13:16Z</updated>
<author>
<name>Sakari Ailus</name>
</author>
<published>2025-02-26T12:27:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9d977d8f876d07a7a632c8260d5665b739c74f3e'/>
<id>urn:sha1:9d977d8f876d07a7a632c8260d5665b739c74f3e</id>
<content type='text'>
[ Upstream commit cd9cb0313a42ae029cd5af9293b0add984ed252e ]

Check that the VT PLL dividers are actually found, don't trust they always
are even though they should be.

Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Reviewed-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: i2c: imx334: Fix runtime PM handling in remove function</title>
<updated>2025-06-27T10:13:16Z</updated>
<author>
<name>Tarang Raval</name>
</author>
<published>2025-03-29T05:43:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1c4842ccf664beae21aa60ec511a60855bc4f7ca'/>
<id>urn:sha1:1c4842ccf664beae21aa60ec511a60855bc4f7ca</id>
<content type='text'>
[ Upstream commit b493cd3c03641f9bbaa9787e43ca92163cb50051 ]

pm_runtime_suspended() only checks the current runtime PM status and does
not modify it, making it ineffective in this context. This could result in
improper power management if the device remains active when removed.

This patch fixes the issue by introducing a check with
pm_runtime_status_suspended() to determine if the device is already
suspended. If it is not, it calls imx334_power_off() to power down the
device and then uses pm_runtime_set_suspended() to correctly update the
runtime PM status to suspended.

Signed-off-by: Tarang Raval &lt;tarang.raval@siliconsignals.io&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: i2c: imx334: Enable runtime PM before sub-device registration</title>
<updated>2025-06-27T10:13:15Z</updated>
<author>
<name>Tarang Raval</name>
</author>
<published>2025-03-29T05:43:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=aaf7b8ee685ae0d65d1ed28eac220917e88fe4c0'/>
<id>urn:sha1:aaf7b8ee685ae0d65d1ed28eac220917e88fe4c0</id>
<content type='text'>
[ Upstream commit 01dfdf6a80c57151af0589af0db7adbbdd1361c7 ]

Runtime PM is fully initialized before calling
v4l2_async_register_subdev_sensor(). Moving the runtime PM initialization
earlier prevents potential access to an uninitialized or powered-down
device.

Signed-off-by: Tarang Raval &lt;tarang.raval@siliconsignals.io&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
</feed>
