Hi Hans, On Thu, Dec 17, 2020 at 11:53:42AM +0100, Hans Verkuil wrote: > On 17/12/2020 11:49, Maxime Ripard wrote: > > Hi Hans, > > > > On Wed, Dec 16, 2020 at 01:35:43PM +0100, Hans Verkuil wrote: > >> Hi Maxime, > >> > >> On 10/12/2020 14:46, Maxime Ripard wrote: > >>> Hi, > >>> > >>> Here's a series introducing the CEC support for the BCM2711 found on the > >>> RaspberryPi4. > >>> > >>> The BCM2711 HDMI controller uses a similar layout for the CEC registers, the > >>> main difference being that the interrupt handling part is now shared between > >>> both HDMI controllers. > >>> > >>> This series is mainly about fixing a couple of bugs, reworking the driver to > >>> support having two different interrupts, one for each direction, provided by an > >>> external irqchip, and enables the irqchip driver for the controller we have. > >>> > >>> This has been tested on an RPi3 and RPi4, but requires the latest firmware. > >>> It's is based on the 10 and 12 bpc series. > >> > >> This series looks good to me. Before I give my Acked-by for this series, can you > >> confirm that it is possible to transmit the Image View On message on both outputs > >> of the RPi4 when the HPD is low? > >> > >> See section "CEC Without HPD" in https://hverkuil.home.xs4all.nl/cec-status.txt > >> on how to test this with a Pulse-Eight device. > >> > >> This should work. > > > > This is the output on the RPi4: > > > > # cec-ctl --playback > > Driver Info: > > Driver Name : vc4_hdmi > > Adapter Name : vc4 > > Capabilities : 0x0000010e > > Logical Addresses > > Transmit > > Passthrough > > Driver version : 5.10.0 > > Available Logical Addresses: 1 > > Physical Address : f.f.f.f > > Logical Address Mask : 0x0000 > > CEC Version : 2.0 > > Vendor ID : 0x000c03 (HDMI) > > OSD Name : Playback > > Logical Addresses : 1 (Allow RC Passthrough) > > > > Logical Address : Not Allocated > > Primary Device Type : Playback > > Logical Address Type : Playback > > All Device Types : Playback > > RC TV Profile : None > > Device Features : > > None > > > > # cec-ctl -t0 --image-view-on > > Driver Info: > > Driver Name : vc4_hdmi > > Adapter Name : vc4 > > Capabilities : 0x0000010e > > Logical Addresses > > Transmit > > Passthrough > > Driver version : 5.10.0 > > Available Logical Addresses: 1 > > Physical Address : f.f.f.f > > Logical Address Mask : 0x0000 > > CEC Version : 2.0 > > Vendor ID : 0x000c03 (HDMI) > > OSD Name : Playback > > Logical Addresses : 1 (Allow RC Passthrough) > > > > Logical Address : Not Allocated > > Primary Device Type : Playback > > Logical Address Type : Playback > > All Device Types : Playback > > RC TV Profile : None > > Device Features : > > None > > > > > > Transmit from Unregistered to TV (15 to 0): > > CEC_MSG_IMAGE_VIEW_ON (0x04) > > Sequence: 1 Tx Timestamp: 77.631s > > > > > > And this is the output on my desktop with the Pulse-Eight: > > $ sudo cec-ctl -p0.0.0.0 --tv > > Driver Info: > > Driver Name : pulse8-cec > > Adapter Name : serio0 > > Capabilities : 0x0000003f > > Physical Address > > Logical Addresses > > Transmit > > Passthrough > > Remote Control Support > > Monitor All > > Driver version : 5.9.8 > > Available Logical Addresses: 1 > > Connector Info : None > > Physical Address : 0.0.0.0 > > Logical Address Mask : 0x0001 > > CEC Version : 2.0 > > Vendor ID : 0x000c03 (HDMI) > > OSD Name : 'TV ' > > Logical Addresses : 1 (Allow RC Passthrough) > > > > Logical Address : 0 (TV) > > Primary Device Type : TV > > Logical Address Type : TV > > All Device Types : TV > > RC TV Profile : None > > Device Features : > > None > > > > $ sudo cec-ctl -M > > Driver Info: > > Driver Name : pulse8-cec > > Adapter Name : serio0 > > Capabilities : 0x0000003f > > Physical Address > > Logical Addresses > > Transmit > > Passthrough > > Remote Control Support > > Monitor All > > Driver version : 5.9.8 > > Available Logical Addresses: 1 > > Connector Info : None > > Physical Address : 0.0.0.0 > > Logical Address Mask : 0x0001 > > CEC Version : 2.0 > > Vendor ID : 0x000c03 (HDMI) > > OSD Name : 'TV ' > > Logical Addresses : 1 (Allow RC Passthrough) > > > > Logical Address : 0 (TV) > > Primary Device Type : TV > > Logical Address Type : TV > > All Device Types : TV > > RC TV Profile : None > > Device Features : > > None > > > > > > > > Initial Event: State Change: PA: 0.0.0.0, LA mask: 0x0001, Conn Info: no > > Received from Unregistered to TV (15 to 0): IMAGE_VIEW_ON (0x04) > > > > So it looks like it's working as expected? > > Yes, it looks good. Make sure you test this for both outputs of the RPi4. It's a good thing you asked, I don't appear to get CEC interrupts from HDMI1. I'll fix it and send another version (probably not before the end of december though). > If it works for both, then you can add my > > Acked-by: Hans Verkuil > > for this series. > > Very nice work, thank you for doing this! Thanks! I'll hold your a-b until the next version though, fixing hdmi1 might change a few things. Maxime