Skip to contentSkip to conversation

v5.15-rcX regression: video devices on i.MX6 are not created

DISCUSSION Krzysztof Hałasa 3 participants 5 messages Oct 4, 2021 – Oct 6, 2021 Media (V4L/DVB)

lore
Share & tools
lore
#0 lore raw

Hi Saravana et al.,

FYI the patch: 6b2117ad65f1bca9ece6d4b1ee784b42701a2d86

of: property: fw_devlink: Add support for "resets" and "pwms"

Allows better tracking of dependencies between devices.

 drivers/of/property.c | 4 ++++

breaks v4l2 video devices on an i.MX6 CPU. The /dev/video* nodes are not created, and the drivers (async subdevicess) are "waiting":

# cat /sys/kernel/debug/v4l2-async/pending_async_subdevices

imx-media:
[fwnode] dev=nil, node=/soc/ipu@2400000/port@0 [fwnode] dev=nil, node=/soc/ipu@2400000/port@1 [fwnode] dev=nil, node=/soc/ipu@2800000/port@0 [fwnode] dev=nil, node=/soc/ipu@2800000/port@1
imx6-mipi-csi2:
[fwnode] dev=0-0036, node=/soc/bus@2100000/i2c@21a0000/camera@36
ipu2_csi1_mux:
ipu1_csi0_mux:
[fwnode] dev=21dc000.mipi, node=/soc/bus@2100000/mipi@21dc000

Reverting the patch (or commenting the "resets" out) fixes the problem:

# cat /sys/kernel/debug/v4l2-async/pending_async_subdevices
ipu2_csi1:
ipu2_csi0:
ipu1_csi1:
ipu1_csi0:
imx-media:
imx6-mipi-csi2:
ipu2_csi1_mux:
ipu1_csi0_mux:

What now?
--
Krzysztof "Chris" Hałasa

Sieć Badawcza Łukasiewicz
Przemysłowy Instytut Automatyki i Pomiarów PIAP
Al. Jerozolimskie 202, 02-486 Warszawa

#1 lore raw
Quoted 40 lines · Krzysztof Hałasa

Hi Saravana et al.,

FYI the patch: 6b2117ad65f1bca9ece6d4b1ee784b42701a2d86

of: property: fw_devlink: Add support for "resets" and "pwms"

Allows better tracking of dependencies between devices.

 drivers/of/property.c | 4 ++++

breaks v4l2 video devices on an i.MX6 CPU. The /dev/video* nodes are not created, and the drivers (async subdevicess) are "waiting":

# cat /sys/kernel/debug/v4l2-async/pending_async_subdevices

imx-media:
[fwnode] dev=nil, node=/soc/ipu@2400000/port@0 [fwnode] dev=nil, node=/soc/ipu@2400000/port@1 [fwnode] dev=nil, node=/soc/ipu@2800000/port@0 [fwnode] dev=nil, node=/soc/ipu@2800000/port@1
imx6-mipi-csi2:
[fwnode] dev=0-0036, node=/soc/bus@2100000/i2c@21a0000/camera@36
ipu2_csi1_mux:
ipu1_csi0_mux:
[fwnode] dev=21dc000.mipi, node=/soc/bus@2100000/mipi@21dc000

Reverting the patch (or commenting the "resets" out) fixes the problem:

# cat /sys/kernel/debug/v4l2-async/pending_async_subdevices
ipu2_csi1:
ipu2_csi0:
ipu1_csi1:
ipu1_csi0:
imx-media:
imx6-mipi-csi2:
ipu2_csi1_mux:
ipu1_csi0_mux:
Quoted 1 line

What now?

Hi Krzysztof,

Can you give me the following details?

1. The dts file that corresponds to the device you are testing this on.
2. Output of <debugfs>/devices_deferred base on at least 5.15-rc4 (I added more info there recently).

That should tell me all the info I need to debug this. In the end it'll essentially boil down to a reset controller driver not using device driver model to initialize the device and directly parsing the node in some kind of initcall.

Thanks,
Saravana

Quoted 6 lines

--
Krzysztof "Chris" Hałasa

Sieć Badawcza Łukasiewicz
Przemysłowy Instytut Automatyki i Pomiarów PIAP
Al. Jerozolimskie 202, 02-486 Warszawa

#2 lore raw

Hi Krzysztof,

Quoted 7 lines · Saravana Kannan
Quoted 5 lines · Krzysztof Hałasa

Hi Saravana et al.,

FYI the patch: 6b2117ad65f1bca9ece6d4b1ee784b42701a2d86

Quoted 8 lines
Quoted 8 lines

of: property: fw_devlink: Add support for "resets" and "pwms"

Allows better tracking of dependencies between devices.

 drivers/of/property.c | 4 ++++

breaks v4l2 video devices on an i.MX6 CPU. The /dev/video* nodes are not created, and the drivers (async subdevicess) are "waiting":

Phillip has sent a fix for this issue:
http://lists.infradead.org/pipermail/linux-arm-kernel/2021-October/687868.html

#3 lore raw

Hi Fabio, Saravana,

Quoted 6 lines · Fabio Estevam
Quoted 6 lines
Quoted 6 lines

FYI the patch: 6b2117ad65f1bca9ece6d4b1ee784b42701a2d86

of: property: fw_devlink: Add support for "resets" and "pwms"

Allows better tracking of dependencies between devices.

Quoted 7 lines
Quoted 4 lines
Quoted 4 lines
 drivers/of/property.c | 4 ++++

breaks v4l2 video devices on an i.MX6 CPU. The /dev/video* nodes are not created, and the drivers (async subdevicess) are "waiting":

Phillip has sent a fix for this issue:
http://lists.infradead.org/pipermail/linux-arm-kernel/2021-October/687868.html

This patch makes the /dev/video* devices to show up on my i.MX6-based system again, so I consider the problem fixed. Thanks.

Signature · 5 lines
Krzysztof "Chris" Hałasa

Sieć Badawcza Łukasiewicz
Przemysłowy Instytut Automatyki i Pomiarów PIAP
Al. Jerozolimskie 202, 02-486 Warszawa
#4 lore raw
Quoted 13 lines · Krzysztof Hałasa

Hi Fabio, Saravana,

Quoted 8 lines · Fabio Estevam
Quoted 8 lines
Quoted 8 lines

FYI the patch: 6b2117ad65f1bca9ece6d4b1ee784b42701a2d86

of: property: fw_devlink: Add support for "resets" and "pwms"

Allows better tracking of dependencies between devices.

 drivers/of/property.c | 4 ++++
Quoted 8 lines
Quoted 5 lines
Quoted 2 lines
Quoted 2 lines

breaks v4l2 video devices on an i.MX6 CPU. The /dev/video* nodes are not created, and the drivers (async subdevicess) are "waiting":

Phillip has sent a fix for this issue:
http://lists.infradead.org/pipermail/linux-arm-kernel/2021-October/687868.html

This patch makes the /dev/video* devices to show up on my i.MX6-based system again, so I consider the problem fixed. Thanks.

Ah, I helped Phillip come up with that fix. I didn't realize this was the same issue. Glad that I have one less issue to debug :)

-Saravana