Hi Stefan,
>>> I wasn't able to reproduce this on my available
boards.
>>>
>>> Are you able to reproduce it?
>> Well I see the "bcm2835-power bcm2835-power: Timeout waiting for grafx
>> power OK" error across a pair of 3Bs and a 3A+, I don't see it on a
>> 3B+ but that one is loading the firmware provided DT and enabling the
>> Sense HAT and I suspect the version of the firmware DT, from around
>> late March/early April doesn't have the DT bits for that driver and
>> hence it's not being activated. All are currently on 5.2-rc5 kernel.
Thanks
Sorry for the delay on this.
I'm not sure we have the same unterstanding. bcm2835-power
requires
changes to the DTB from the mainline kernel, but it should be
independent from the firmware. bcm2835-power doesn't work without
raspberrypi-power, so it's currently a extension, not a full replacement.
No, that's my understanding as well, I suspect I didn't explain myself
well enough.
> For reference, updating to the latest firmware/firmware DT the
driver
What file do you mean with firmware DT?
The DTs provided by Raspberry Pi in the firmware repo vs the DTs that
come with the upstream linux kernel.
> loads but I don't get an error, just:
> bcm2835-power bcm2835-power: Broadcom BCM2835 power domains driver
>
> That's a minimal text only image, display attached but just at a linux
> console login.
Could you please so kind and make an ASCII table for the bad cases with
the following columns Raspberry Pi type, kernel, DTB, firmware and add
them to the github issue?
Sorry, I've not had time to do all that testing across the matrix of
devices, it will take some time and I have around 10 days of travel
starting on Thursday.
The first test I did do was one of my regular desktop testing devices
which has consistently had the issue I did some testing. It's an
original RPi 3B with Fedora 30 Workstation (GNOME).
v5.2-rc7 - fails with the following errors, interesting no messages
about vc4 driver at all.
[ 6.791023] bcm2835-power bcm2835-power: Broadcom BCM2835 power
domains driver
[ 32.891912] bcm2835-power bcm2835-power: Timeout waiting for grafx power OK
[ 32.937340] bcm2835-power bcm2835-power: Timeout waiting for grafx power OK
I then did a build, same kernel as above but with the bcm2835-power
driver disabled:
# CONFIG_BCM2835_POWER is not set
No mention of bcm2835-power (as expected), and just this error from vc4:
[ 30.873633] vc4_v3d 3fc00000.v3d: ignoring dependency for device,
assuming no driver
Then with the same kernel as the last test (v5.2-rc7 bcm2835-power
disabled) plus the following two DT patches reverted:
e1dc2b2e1bef7237fd8fc055fe1ec2a6ff001f91 ARM: bcm283x: Switch V3D over
to using the PM driver instead of firmware.
81fc035f07d230c0f687ef09d5ecf2c885dba8ae ARM: bcm283x: Extend the WDT
DT node out to cover the whole PM block. (v4)
I have GNOME login back and the following vc4 output from the kernel:
[ 30.642235] rc rc0: vc4 as /devices/platform/soc/3f902000.hdmi/rc/rc0
[ 30.713329] input: vc4 as /devices/platform/soc/3f902000.hdmi/rc/rc0/input0
[ 30.723690] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi
mapping ok
[ 30.723755] vc4_hdmi 3f902000.hdmi: ASoC: no DMI vendor name!
[ 30.727159] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[ 30.727360] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[ 30.727485] vc4-drm soc:gpu: bound 3f004000.txp (ops vc4_txp_ops [vc4])
[ 30.727578] vc4-drm soc:gpu: bound 3f400000.hvs (ops vc4_hvs_ops [vc4])
[ 30.728130] vc4-drm soc:gpu: bound 3f206000.pixelvalve (ops
vc4_crtc_ops [vc4])
[ 30.850400] vc4-drm soc:gpu: bound 3f207000.pixelvalve (ops
vc4_crtc_ops [vc4])
[ 30.865912] vc4-drm soc:gpu: bound 3f807000.pixelvalve (ops
vc4_crtc_ops [vc4])
[ 30.898857] vc4-drm soc:gpu: bound 3fc00000.v3d (ops vc4_v3d_ops [vc4])
[ 30.912535] fb0: switching to vc4drmfb from simple
[ 30.945281] [drm] Initialized vc4 0.0.0 20140616 for soc:gpu on minor 0
[ 31.031461] vc4-drm soc:gpu: fb0: vc4drmfb frame buffer device
Finally with GNOME back working again I tried the original v5.2-rc7
kernel (that has the bcm2835-power driver enabled) with the two
reverts above for the DT and I get the gnome login again. No output
from bcm2835-power (as I'd expected given that it's not enabled in the
DT) and the following output for vc4:
[ 30.496519] rc rc0: vc4 as /devices/platform/soc/3f902000.hdmi/rc/rc0
[ 30.527759] input: vc4 as /devices/platform/soc/3f902000.hdmi/rc/rc0/input13
[ 30.568408] vc4_hdmi 3f902000.hdmi: vc4-hdmi-hifi <-> 3f902000.hdmi
mapping ok
[ 30.585494] vc4_hdmi 3f902000.hdmi: ASoC: no DMI vendor name!
[ 30.623168] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[ 30.658189] vc4-drm soc:gpu: bound 3f806000.vec (ops vc4_vec_ops [vc4])
[ 30.674271] vc4-drm soc:gpu: bound 3f004000.txp (ops vc4_txp_ops [vc4])
[ 30.691323] vc4-drm soc:gpu: bound 3f400000.hvs (ops vc4_hvs_ops [vc4])
[ 30.707155] vc4-drm soc:gpu: bound 3f206000.pixelvalve (ops
vc4_crtc_ops [vc4])
[ 30.723158] vc4-drm soc:gpu: bound 3f207000.pixelvalve (ops
vc4_crtc_ops [vc4])
[ 30.739244] vc4-drm soc:gpu: bound 3f807000.pixelvalve (ops
vc4_crtc_ops [vc4])
[ 30.774104] vc4-drm soc:gpu: bound 3fc00000.v3d (ops vc4_v3d_ops [vc4])
[ 30.788546] fb0: switching to vc4drmfb from simple
[ 30.828593] [drm] Initialized vc4 0.0.0 20140616 for soc:gpu on minor 0
[ 30.921643] vc4-drm soc:gpu: fb0: vc4drmfb frame buffer device
Let me know what else I can assist with and I'll en-devour to get it
done before I leave for travel.
Peter
BTW what's the status of this slightly related patch going upstream
(we did pull it in locally):
https://patchwork.kernel.org/patch/10945031/