-
Notifications
You must be signed in to change notification settings - Fork 5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CM4s: vc4-kms-v3d fails if hdmi1 is missing #4857
Comments
I tried with the same kernel with an modified cm4s overlay, where I removed the
dmesg contains the following errors:
|
Looks like the problem is here https://github.com/raspberrypi/linux/blob/rpi-5.10.y/arch/arm/boot/dts/overlays/vc4-kms-v3d-pi4-overlay.dts#L40 If I remove the |
Thanks. The CM4S dtb was generated from the CM4 dtb. So ddc1 might just be something that we forgot to remove |
OK, I'll send a PR for the cm4s with ddc1 removed |
vc4-kms-v3d-pi4 is largely intended for Pi4/400/CM4, so it needs to enable hdmi1 and ddc1. Failing to apply a fragment is considered fatal, so it can't immediately apply to CM4s if it doesn't have both nodes. Options are either to leave hdmi1 and ddc1 present in the base DT, or have a new overlay for CM4s which omits trying to enable those nodes. |
It's a minor point, but it is the reference to the undefined symbol that is completely fatal - the whole overlay is skipped - rather than the failure to apply a fragment. Fragment application stops at the first failure - whether this is ideal behaviour is open to debate. |
Feedback on the PR: #4863 (comment) |
Imho is having a separate overlay ( If you can agree on this, I'm more than happy to submit a PR for this. |
It depends on exactly how things have been broken out on the board. hdmi1 and ddc1 physically exists in the SoC so they can be enabled (which the existing vc4-kms-v3d-pi4 overlay will do). As long as the hot plug detect line has been wired low then it'll be enabled but just stay idle as there is no display connected. |
We haven't received schematics yet, so I can't check. Maybe @pelwell can clarify this internally. |
The schematic shows, and the CM4S designer confirms, that the hotplug signal for HDMI1 is floating. Hopes of a hidden internal pull resistor, seem to be just that - hopes. It would therefore be wise not to enable the hotplug interrupt or the CEC I2C. Someone here is going to have to come up with the least horrible solution for CM4S, and I think I know who that someone is. |
Thanks for the clarification. This probably explains my other issue aswell (#4858) |
CM4s has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi#4857 raspberrypi#4858 Signed-off-by: Phil Elwell <[email protected]>
See #4869 for a possible workaround. |
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi#4857 raspberrypi#4858 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi#4857 raspberrypi#4858 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: #4857 Signed-off-by: Phil Elwell <[email protected]>
Fixed with #4869 |
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: #4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: #4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: #4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: #4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: #4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: #4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
Commit c6a2e26 upstream CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in #4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi#4857 Signed-off-by: Phil Elwell <[email protected]>
Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in #4857 Signed-off-by: Phil Elwell <[email protected]>
Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in #4857 Signed-off-by: Phil Elwell <[email protected]>
commit fca0308be9e2d516cb38a1686050e931a740ebe2 from https://github.com/raspberrypi/linux.git rpi-5.15.y Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> Signed-off-by: Meng Li <[email protected]>
commit fca0308be9e2d516cb38a1686050e931a740ebe2 from https://github.com/raspberrypi/linux.git rpi-5.15.y Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> Signed-off-by: Meng Li <[email protected]>
commit fca0308be9e2d516cb38a1686050e931a740ebe2 from https://github.com/raspberrypi/linux.git rpi-5.15.y Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> Signed-off-by: Meng Li <[email protected]>
Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
BugLink: https://bugs.launchpad.net/bugs/1960323 CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> (cherry picked from commit 630e76f61d76d307fbd660ec6d6081bdf08b7fdf rpi-5.15.y) Signed-off-by: Juerg Haefliger <[email protected]>
[commit 8e1110a upstream] Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> Signed-off-by: Nicolai Buchwitz <[email protected]>
[commit 6cab55b upstream] Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> Signed-off-by: Nicolai Buchwitz <[email protected]>
[commit 6cab55b upstream] Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> Signed-off-by: Nicolai Buchwitz <[email protected]>
[commit 6cab55b upstream] Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> Signed-off-by: Nicolai Buchwitz <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
BugLink: https://bugs.launchpad.net/bugs/1982090 Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]> (cherry picked from commit 2655c93c4b354cce7383679626b66e3b4f5f7497 rpi-5.19.y) Signed-off-by: Juerg Haefliger <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
Zero 2 W and CM4S are 64-bit-capable, so their DTBs should be buildable in the arm64 tree. See (misplaced) comment in raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
CM4S has no HDMI1 output, so it is advisable to disable the controller and its I2C interface in software. This is ordinarily done by setting their status properties to "disabled", but the vc4-kms-v3d(-pi4) overlay enables both HDMIs and DDCs as part of the transfer of control from the VPU. Knobble the CM4S dts in such a way that the overlay applies successfully but the hdmi1 and ddc1 nodes remain disabled by changing the compatible string to something unrecognised. See: raspberrypi/linux#4857 Signed-off-by: Phil Elwell <[email protected]>
Describe the bug
On compute module 4s the kms v3d driver overlay fails. Could this caused by the deletation in the device tree (https://github.com/raspberrypi/linux/blob/rpi-5.10.y/arch/arm/boot/dts/bcm2711-rpi-cm4s.dts#L209)?
Steps to reproduce the behaviour
dtoverlay=vc4-kms-v3d
Device (s)
Raspberry Pi CM4
System
os
firmware
kernel
Logs
Additional context
No response
The text was updated successfully, but these errors were encountered: