* [PATCH] firmware/raspberrypi: raise timeout to 3s
@ 2025-05-12 16:30 Etienne Buira
2025-05-14 16:20 ` Stefan Wahren
0 siblings, 1 reply; 16+ messages in thread
From: Etienne Buira @ 2025-05-12 16:30 UTC (permalink / raw)
To: Florian Fainelli, bcm-kernel-feedback-list, Stefan Wahren,
Greg Kroah-Hartman, Uwe Kleine-König, Etienne Buira,
linux-rpi-kernel, linux-arm-kernel, linux-kernel
Raspberry firmware driver expected said firmware to answer by 1 second.
That seems to work fine for most cases, but with
RPI_FIRMWARE_NOTIFY_DISPLAY_DONE, that IIUC may need to reconfigure a
monitor, i end up reliably having timeouts:
[ 2.861407] ------------[ cut here ]------------
[ 2.865512] Firmware transaction 0x00030066 timeout
[ 2.865549] WARNING: CPU: 3 PID: 42 at drivers/firmware/raspberrypi.c:128 rpi_firmware_property_list+0x21c/0x29c
[ 2.880751] CPU: 3 UID: 0 PID: 42 Comm: kworker/u16:1 Not tainted 6.15.0-rc6 #1 PREEMPT
[ 2.888944] Hardware name: Raspberry Pi 4 Model B Rev 1.5 (DT)
[ 2.894848] Workqueue: events_unbound deferred_probe_work_func
[ 2.900752] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 2.907801] pc : rpi_firmware_property_list+0x21c/0x29c
[ 2.913089] lr : rpi_firmware_property_list+0x21c/0x29c
[ 2.918376] sp : ffffffc0803139c0
[ 2.921725] x29: ffffffc0803139e0 x28: ffffff8040bbef50 x27: ffffff80410c0f40
[ 2.928953] x26: ffffffd7055d9e28 x25: ffffffc0801e0008 x24: 0000000000001000
[ 2.936179] x23: ffffff80410c1080 x22: 000000000000000a x21: ffffff80410c0f00
[ 2.943405] x20: 000000000000000c x19: ffffffc0801e0000 x18: ffffffc08030d0a0
[ 2.950632] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
[ 2.957858] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[ 2.965085] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
[ 2.972311] x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000
[ 2.979537] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
[ 2.986764] x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000
[ 2.993992] Call trace:
[ 2.996458] rpi_firmware_property_list+0x21c/0x29c (P)
[ 3.001747] rpi_firmware_property+0x70/0xd8
[ 3.006064] vc4_drm_bind+0x12c/0x378
[ 3.009765] try_to_bring_up_aggregate_device+0x22c/0x308
[ 3.015230] __component_add+0xec/0x224
[ 3.019106] component_add+0x14/0x30
[ 3.022720] vc4_hdmi_dev_probe+0x1c/0x40
[ 3.026773] platform_probe+0x68/0xf0
[ 3.030474] really_probe+0xc0/0x3ac
[ 3.034088] __driver_probe_device+0x7c/0x174
[ 3.038495] driver_probe_device+0x40/0x100
[ 3.042725] __device_attach_driver+0x10c/0x1e0
[ 3.047308] bus_for_each_drv+0x88/0x100
[ 3.051273] __device_attach+0xa0/0x1c8
[ 3.055151] device_initial_probe+0x14/0x30
[ 3.059381] bus_probe_device+0xc8/0xcc
[ 3.063259] deferred_probe_work_func+0xb8/0x12c
[ 3.067930] process_one_work+0x160/0x2d4
[ 3.071983] worker_thread+0x2d8/0x400
[ 3.075773] kthread+0x12c/0x208
[ 3.079034] ret_from_fork+0x10/0x20
[ 3.082647] ---[ end trace 0000000000000000 ]---
Raising the timeout to 3 seconds (ought to be enough®) doesn't trigger
timeouts anymore for me and proceeds to the next failure.
Signed-off-by: Etienne Buira <etienne.buira@free.fr>
---
drivers/firmware/raspberrypi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
index 7ecde6921a0a..e3c998def0e1 100644
--- a/drivers/firmware/raspberrypi.c
+++ b/drivers/firmware/raspberrypi.c
@@ -58,7 +58,7 @@ rpi_firmware_transaction(struct rpi_firmware *fw, u32 chan, u32 data)
reinit_completion(&fw->c);
ret = mbox_send_message(fw->chan, &message);
if (ret >= 0) {
- if (wait_for_completion_timeout(&fw->c, HZ)) {
+ if (wait_for_completion_timeout(&fw->c, 3*HZ)) {
ret = 0;
} else {
ret = -ETIMEDOUT;
--
2.48.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-12 16:30 [PATCH] firmware/raspberrypi: raise timeout to 3s Etienne Buira
@ 2025-05-14 16:20 ` Stefan Wahren
2025-05-15 6:34 ` Etienne Buira
2025-05-15 6:41 ` [PATCH] " Etienne Buira
0 siblings, 2 replies; 16+ messages in thread
From: Stefan Wahren @ 2025-05-14 16:20 UTC (permalink / raw)
To: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
Hi Etienne,
Am 12.05.25 um 18:30 schrieb Etienne Buira:
> Raspberry firmware driver expected said firmware to answer by 1 second.
> That seems to work fine for most cases, but with
> RPI_FIRMWARE_NOTIFY_DISPLAY_DONE, that IIUC may need to reconfigure a
> monitor, i end up reliably having timeouts:
> [ 2.861407] ------------[ cut here ]------------
> [ 2.865512] Firmware transaction 0x00030066 timeout
> [ 2.865549] WARNING: CPU: 3 PID: 42 at drivers/firmware/raspberrypi.c:128 rpi_firmware_property_list+0x21c/0x29c
> [ 2.880751] CPU: 3 UID: 0 PID: 42 Comm: kworker/u16:1 Not tainted 6.15.0-rc6 #1 PREEMPT
> [ 2.888944] Hardware name: Raspberry Pi 4 Model B Rev 1.5 (DT)
> [ 2.894848] Workqueue: events_unbound deferred_probe_work_func
> [ 2.900752] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
> [ 2.907801] pc : rpi_firmware_property_list+0x21c/0x29c
> [ 2.913089] lr : rpi_firmware_property_list+0x21c/0x29c
> [ 2.918376] sp : ffffffc0803139c0
> [ 2.921725] x29: ffffffc0803139e0 x28: ffffff8040bbef50 x27: ffffff80410c0f40
> [ 2.928953] x26: ffffffd7055d9e28 x25: ffffffc0801e0008 x24: 0000000000001000
> [ 2.936179] x23: ffffff80410c1080 x22: 000000000000000a x21: ffffff80410c0f00
> [ 2.943405] x20: 000000000000000c x19: ffffffc0801e0000 x18: ffffffc08030d0a0
> [ 2.950632] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
> [ 2.957858] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
> [ 2.965085] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
> [ 2.972311] x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000
> [ 2.979537] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
> [ 2.986764] x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000
> [ 2.993992] Call trace:
> [ 2.996458] rpi_firmware_property_list+0x21c/0x29c (P)
> [ 3.001747] rpi_firmware_property+0x70/0xd8
> [ 3.006064] vc4_drm_bind+0x12c/0x378
> [ 3.009765] try_to_bring_up_aggregate_device+0x22c/0x308
> [ 3.015230] __component_add+0xec/0x224
> [ 3.019106] component_add+0x14/0x30
> [ 3.022720] vc4_hdmi_dev_probe+0x1c/0x40
> [ 3.026773] platform_probe+0x68/0xf0
> [ 3.030474] really_probe+0xc0/0x3ac
> [ 3.034088] __driver_probe_device+0x7c/0x174
> [ 3.038495] driver_probe_device+0x40/0x100
> [ 3.042725] __device_attach_driver+0x10c/0x1e0
> [ 3.047308] bus_for_each_drv+0x88/0x100
> [ 3.051273] __device_attach+0xa0/0x1c8
> [ 3.055151] device_initial_probe+0x14/0x30
> [ 3.059381] bus_probe_device+0xc8/0xcc
> [ 3.063259] deferred_probe_work_func+0xb8/0x12c
> [ 3.067930] process_one_work+0x160/0x2d4
> [ 3.071983] worker_thread+0x2d8/0x400
> [ 3.075773] kthread+0x12c/0x208
> [ 3.079034] ret_from_fork+0x10/0x20
> [ 3.082647] ---[ end trace 0000000000000000 ]---
>
> Raising the timeout to 3 seconds (ought to be enough®) doesn't trigger
> timeouts anymore for me and proceeds to the next failure.
>
> Signed-off-by: Etienne Buira <etienne.buira@free.fr>
> ---
> drivers/firmware/raspberrypi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
> index 7ecde6921a0a..e3c998def0e1 100644
> --- a/drivers/firmware/raspberrypi.c
> +++ b/drivers/firmware/raspberrypi.c
> @@ -58,7 +58,7 @@ rpi_firmware_transaction(struct rpi_firmware *fw, u32 chan, u32 data)
> reinit_completion(&fw->c);
> ret = mbox_send_message(fw->chan, &message);
> if (ret >= 0) {
> - if (wait_for_completion_timeout(&fw->c, HZ)) {
> + if (wait_for_completion_timeout(&fw->c, 3*HZ)) {
generally i'm fine with this change, but could you please add spaces
around the operator? This should better align to the coding style.
Out of curiosity and because i never saw this issue, could you please
provide more details?
There is nothing connected to HDMI 0 & 1 ?
Which firmware version are you running?
Do you use a special configuration?
Best regards
> ret = 0;
> } else {
> ret = -ETIMEDOUT;
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-14 16:20 ` Stefan Wahren
@ 2025-05-15 6:34 ` Etienne Buira
2025-05-21 8:55 ` Stefan Wahren
2025-05-15 6:41 ` [PATCH] " Etienne Buira
1 sibling, 1 reply; 16+ messages in thread
From: Etienne Buira @ 2025-05-15 6:34 UTC (permalink / raw)
To: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
Raspberry firmware driver expected said firmware to answer by 1 second.
That seems to work fine for most cases, but with
RPI_FIRMWARE_NOTIFY_DISPLAY_DONE, that IIUC may need to reconfigure a
monitor, i end up reliably having timeouts:
[ 2.861407] ------------[ cut here ]------------
[ 2.865512] Firmware transaction 0x00030066 timeout
[ 2.865549] WARNING: CPU: 3 PID: 42 at drivers/firmware/raspberrypi.c:128 rpi_firmware_property_list+0x21c/0x29c
[ 2.880751] CPU: 3 UID: 0 PID: 42 Comm: kworker/u16:1 Not tainted 6.15.0-rc6 #1 PREEMPT
[ 2.888944] Hardware name: Raspberry Pi 4 Model B Rev 1.5 (DT)
[ 2.894848] Workqueue: events_unbound deferred_probe_work_func
[ 2.900752] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 2.907801] pc : rpi_firmware_property_list+0x21c/0x29c
[ 2.913089] lr : rpi_firmware_property_list+0x21c/0x29c
[ 2.918376] sp : ffffffc0803139c0
[ 2.921725] x29: ffffffc0803139e0 x28: ffffff8040bbef50 x27: ffffff80410c0f40
[ 2.928953] x26: ffffffd7055d9e28 x25: ffffffc0801e0008 x24: 0000000000001000
[ 2.936179] x23: ffffff80410c1080 x22: 000000000000000a x21: ffffff80410c0f00
[ 2.943405] x20: 000000000000000c x19: ffffffc0801e0000 x18: ffffffc08030d0a0
[ 2.950632] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
[ 2.957858] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[ 2.965085] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
[ 2.972311] x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000
[ 2.979537] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
[ 2.986764] x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000
[ 2.993992] Call trace:
[ 2.996458] rpi_firmware_property_list+0x21c/0x29c (P)
[ 3.001747] rpi_firmware_property+0x70/0xd8
[ 3.006064] vc4_drm_bind+0x12c/0x378
[ 3.009765] try_to_bring_up_aggregate_device+0x22c/0x308
[ 3.015230] __component_add+0xec/0x224
[ 3.019106] component_add+0x14/0x30
[ 3.022720] vc4_hdmi_dev_probe+0x1c/0x40
[ 3.026773] platform_probe+0x68/0xf0
[ 3.030474] really_probe+0xc0/0x3ac
[ 3.034088] __driver_probe_device+0x7c/0x174
[ 3.038495] driver_probe_device+0x40/0x100
[ 3.042725] __device_attach_driver+0x10c/0x1e0
[ 3.047308] bus_for_each_drv+0x88/0x100
[ 3.051273] __device_attach+0xa0/0x1c8
[ 3.055151] device_initial_probe+0x14/0x30
[ 3.059381] bus_probe_device+0xc8/0xcc
[ 3.063259] deferred_probe_work_func+0xb8/0x12c
[ 3.067930] process_one_work+0x160/0x2d4
[ 3.071983] worker_thread+0x2d8/0x400
[ 3.075773] kthread+0x12c/0x208
[ 3.079034] ret_from_fork+0x10/0x20
[ 3.082647] ---[ end trace 0000000000000000 ]---
Raising the timeout to 3 seconds (ought to be enough®) doesn't trigger
timeouts anymore for me and proceeds to the next failure.
Signed-off-by: Etienne Buira <etienne.buira@free.fr>
---
drivers/firmware/raspberrypi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
index 7ecde6921a0a..8c45a152e3ba 100644
--- a/drivers/firmware/raspberrypi.c
+++ b/drivers/firmware/raspberrypi.c
@@ -58,7 +58,7 @@ rpi_firmware_transaction(struct rpi_firmware *fw, u32 chan, u32 data)
reinit_completion(&fw->c);
ret = mbox_send_message(fw->chan, &message);
if (ret >= 0) {
- if (wait_for_completion_timeout(&fw->c, HZ)) {
+ if (wait_for_completion_timeout(&fw->c, 3 * HZ)) {
ret = 0;
} else {
ret = -ETIMEDOUT;
--
2.48.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-14 16:20 ` Stefan Wahren
2025-05-15 6:34 ` Etienne Buira
@ 2025-05-15 6:41 ` Etienne Buira
2025-05-15 7:42 ` Stefan Wahren
1 sibling, 1 reply; 16+ messages in thread
From: Etienne Buira @ 2025-05-15 6:41 UTC (permalink / raw)
To: Stefan Wahren
Cc: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
> Hi Etienne,
>
> Am 12.05.25 um 18:30 schrieb Etienne Buira:
../..
> Out of curiosity and because i never saw this issue, could you please
> provide more details?
> There is nothing connected to HDMI 0 & 1 ?
> Which firmware version are you running?
> Do you use a special configuration?
Hi Stefan
There is nothing very special, hdmi0 is connected to a monitor, there's
a (independantly powered) hdd on usb3, keyboard/mouse on usb2 ports, a
Gb network wire, UART, and nothing else.
The afore-mentioned next failure is also about graphic stack (hdmi
signal is lost as soon as VC4 driver loads), i seeked for help here:
https://lists.freedesktop.org/archives/dri-devel/2025-May/505475.html
(btw, if you have a hint...).
Regards.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-15 6:41 ` [PATCH] " Etienne Buira
@ 2025-05-15 7:42 ` Stefan Wahren
2025-05-15 9:44 ` Etienne Buira
0 siblings, 1 reply; 16+ messages in thread
From: Stefan Wahren @ 2025-05-15 7:42 UTC (permalink / raw)
To: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
Hi Etienne,
Am 15.05.25 um 08:41 schrieb Etienne Buira:
> On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
>> Hi Etienne,
>>
>> Am 12.05.25 um 18:30 schrieb Etienne Buira:
> ../..
>> Out of curiosity and because i never saw this issue, could you please
>> provide more details?
>> There is nothing connected to HDMI 0 & 1 ?
>> Which firmware version are you running?
Please provide the dmesg output, so we can extract the firmware version.
>> Do you use a special configuration?
In this case, i meant the kernel configuration. Do you use
arm64/defconfig or arm/multi_v7_lpae_defconfig or a custom one?
Do you use U-Boot or not?
> Hi Stefan
>
> There is nothing very special, hdmi0 is connected to a monitor, there's
Did you tried to connect a different monitor? Does the timeout still occurs?
Best regards
> a (independantly powered) hdd on usb3, keyboard/mouse on usb2 ports, a
> Gb network wire, UART, and nothing else.
>
> The afore-mentioned next failure is also about graphic stack (hdmi
> signal is lost as soon as VC4 driver loads), i seeked for help here:
> https://lists.freedesktop.org/archives/dri-devel/2025-May/505475.html
> (btw, if you have a hint...).
>
> Regards.
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-15 7:42 ` Stefan Wahren
@ 2025-05-15 9:44 ` Etienne Buira
2025-05-15 10:31 ` Stefan Wahren
0 siblings, 1 reply; 16+ messages in thread
From: Etienne Buira @ 2025-05-15 9:44 UTC (permalink / raw)
To: Stefan Wahren
Cc: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1841 bytes --]
Hi Stefan, and thank you for your interest.
On Thu, May 15, 2025 at 09:42:43AM +0200, Stefan Wahren wrote:
> Hi Etienne,
>
> Am 15.05.25 um 08:41 schrieb Etienne Buira:
> > On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
> >> Hi Etienne,
> >>
> >> Am 12.05.25 um 18:30 schrieb Etienne Buira:
> > ../..
> >> Out of curiosity and because i never saw this issue, could you please
> >> provide more details?
> >> There is nothing connected to HDMI 0 & 1 ?
> >> Which firmware version are you running?
> Please provide the dmesg output, so we can extract the firmware version.
Firmware version is 2025-02-17T20:03:07, i also attach the full gzipped
dmesg, as long as a patch of extra traces used.
I did not specifically test other firmware versions for the timeout
issue (but i did for video output).
> >> Do you use a special configuration?
> In this case, i meant the kernel configuration. Do you use
> arm64/defconfig or arm/multi_v7_lpae_defconfig or a custom one?
I use a custom one, attached.
> Do you use U-Boot or not?
No, i only use raspberry firmware/loader.
> > Hi Stefan
> >
> > There is nothing very special, hdmi0 is connected to a monitor, there's
> Did you tried to connect a different monitor? Does the timeout still occurs?
Just tried another monitor, and yes, timeout occurs without the patch.
Both monitors showed something when driven by firmware and
simple-framebuffer.
Regards.
>
> Best regards
> > a (independantly powered) hdd on usb3, keyboard/mouse on usb2 ports, a
> > Gb network wire, UART, and nothing else.
> >
> > The afore-mentioned next failure is also about graphic stack (hdmi
> > signal is lost as soon as VC4 driver loads), i seeked for help here:
> > https://lists.freedesktop.org/archives/dri-devel/2025-May/505475.html
> > (btw, if you have a hint...).
> >
> > Regards.
> >
>
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 36657 bytes --]
[-- Attachment #3: extra_traces.patch --]
[-- Type: text/plain, Size: 2708 bytes --]
diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
index 36a54d456630..f9eb851f72bc 100644
--- a/drivers/gpu/Makefile
+++ b/drivers/gpu/Makefile
@@ -6,3 +6,6 @@ obj-y += host1x/ drm/ vga/
obj-$(CONFIG_IMX_IPUV3_CORE) += ipu-v3/
obj-$(CONFIG_TRACE_GPU_MEM) += trace/
obj-$(CONFIG_NOVA_CORE) += nova-core/
+
+subdir-ccflags-y += -DDEBUG
+
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 13bc4c290b17..cc3bc4b78770 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -1906,8 +1906,12 @@ static void edid_block_status_print(enum edid_block_status status,
const struct edid *block,
int block_num)
{
+ pr_info("EDID: block_status_print, backtrace:");
+ dump_stack();
+
switch (status) {
case EDID_BLOCK_OK:
+ pr_debug("EDID block %d read ok\n", block_num);
break;
case EDID_BLOCK_READ_FAIL:
pr_debug("EDID block %d read failed\n", block_num);
@@ -3576,6 +3580,7 @@ static struct drm_display_mode *drm_mode_detailed(struct drm_connector *connecto
mode->type = DRM_MODE_TYPE_DRIVER;
drm_mode_set_name(mode);
+ drm_dbg_kms(dev, "EDID: added mode %s\n", mode->name);
return mode;
}
@@ -3931,6 +3936,8 @@ static int add_established_modes(struct drm_connector *connector,
drm_for_each_detailed_block(drm_edid, do_established_modes,
&closure);
+ drm_dbg_kms(dev, "EDID: established %d modes\n", modes + closure.modes);
+
return modes + closure.modes;
}
@@ -3987,6 +3994,7 @@ static int add_standard_modes(struct drm_connector *connector,
&closure);
/* XXX should also look for standard codes in VTB blocks */
+ drm_dbg_kms(connector->dev, "EDID: added %d standard modes\n", modes + closure.modes);
return modes + closure.modes;
}
diff --git a/drivers/gpu/drm/vc4/vc4_drv.c b/drivers/gpu/drm/vc4/vc4_drv.c
index c7cb1e3a6434..804660d05146 100644
--- a/drivers/gpu/drm/vc4/vc4_drv.c
+++ b/drivers/gpu/drm/vc4/vc4_drv.c
@@ -361,8 +361,10 @@ static int vc4_drm_bind(struct device *dev)
}
ret = aperture_remove_all_conflicting_devices(driver->name);
- if (ret)
+ if (ret) {
+ drm_warn(drm, "Error during aperture_remove_all_conflicting_devices\n");
goto err;
+ }
if (firmware) {
ret = rpi_firmware_property(firmware,
diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
index f5642b3038e4..5f2d30a349ae 100644
--- a/drivers/tty/vt/vt.c
+++ b/drivers/tty/vt/vt.c
@@ -3771,6 +3771,9 @@ static int do_bind_con_driver(const struct consw *csw, int first, int last,
struct con_driver *con_driver;
int i, j = -1, k = -1, retval = -ENODEV;
+ pr_info("Console: do_bind_con_driver, backtrace:");
+ dump_stack();
+
if (!try_module_get(owner))
return -ENODEV;
[-- Attachment #4: dmesg.gz --]
[-- Type: application/gzip, Size: 10383 bytes --]
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-15 9:44 ` Etienne Buira
@ 2025-05-15 10:31 ` Stefan Wahren
2025-05-15 11:48 ` Etienne Buira
0 siblings, 1 reply; 16+ messages in thread
From: Stefan Wahren @ 2025-05-15 10:31 UTC (permalink / raw)
To: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
Am 15.05.25 um 11:44 schrieb Etienne Buira:
> Hi Stefan, and thank you for your interest.
>
> On Thu, May 15, 2025 at 09:42:43AM +0200, Stefan Wahren wrote:
>> Hi Etienne,
>>
>> Am 15.05.25 um 08:41 schrieb Etienne Buira:
>>> On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
>>>> Hi Etienne,
>>>>
>>>> Am 12.05.25 um 18:30 schrieb Etienne Buira:
>>> ../..
>>>> Out of curiosity and because i never saw this issue, could you please
>>>> provide more details?
>>>> There is nothing connected to HDMI 0 & 1 ?
>>>> Which firmware version are you running?
>> Please provide the dmesg output, so we can extract the firmware version.
> Firmware version is 2025-02-17T20:03:07, i also attach the full gzipped
> dmesg, as long as a patch of extra traces used.
> I did not specifically test other firmware versions for the timeout
> issue (but i did for video output).
Thanks, i'll try to reproduce.
Sorry, i forgot but is this reproducible with a recent stable 6.12.x kernel?
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-15 10:31 ` Stefan Wahren
@ 2025-05-15 11:48 ` Etienne Buira
2025-05-15 17:48 ` Stefan Wahren
0 siblings, 1 reply; 16+ messages in thread
From: Etienne Buira @ 2025-05-15 11:48 UTC (permalink / raw)
To: Stefan Wahren
Cc: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
On Thu, May 15, 2025 at 12:31:38PM +0200, Stefan Wahren wrote:
> Am 15.05.25 um 11:44 schrieb Etienne Buira:
> > Hi Stefan, and thank you for your interest.
> >
> > On Thu, May 15, 2025 at 09:42:43AM +0200, Stefan Wahren wrote:
> >> Hi Etienne,
> >>
> >> Am 15.05.25 um 08:41 schrieb Etienne Buira:
> >>> On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
> >>>> Hi Etienne,
> >>>>
> >>>> Am 12.05.25 um 18:30 schrieb Etienne Buira:
> >>> ../..
> >>>> Out of curiosity and because i never saw this issue, could you please
> >>>> provide more details?
> >>>> There is nothing connected to HDMI 0 & 1 ?
> >>>> Which firmware version are you running?
> >> Please provide the dmesg output, so we can extract the firmware version.
> > Firmware version is 2025-02-17T20:03:07, i also attach the full gzipped
> > dmesg, as long as a patch of extra traces used.
> > I did not specifically test other firmware versions for the timeout
> > issue (but i did for video output).
> Thanks, i'll try to reproduce.
>
> Sorry, i forgot but is this reproducible with a recent stable 6.12.x kernel?
Just reproduced with pristine 6.12.28.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-15 11:48 ` Etienne Buira
@ 2025-05-15 17:48 ` Stefan Wahren
2025-05-15 22:27 ` Etienne Buira
0 siblings, 1 reply; 16+ messages in thread
From: Stefan Wahren @ 2025-05-15 17:48 UTC (permalink / raw)
To: Etienne Buira
Cc: Florian Fainelli, Uwe Kleine-König, bcm-kernel-feedback-list,
Greg Kroah-Hartman, linux-arm-kernel, linux-kernel,
linux-rpi-kernel
Hi Etienne,
Am 15.05.25 um 13:48 schrieb Etienne Buira:
> On Thu, May 15, 2025 at 12:31:38PM +0200, Stefan Wahren wrote:
>> Am 15.05.25 um 11:44 schrieb Etienne Buira:
>>> Hi Stefan, and thank you for your interest.
>>>
>>> On Thu, May 15, 2025 at 09:42:43AM +0200, Stefan Wahren wrote:
>>>> Hi Etienne,
>>>>
>>>> Am 15.05.25 um 08:41 schrieb Etienne Buira:
>>>>> On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
>>>>>> Hi Etienne,
>>>>>>
>>>>>> Am 12.05.25 um 18:30 schrieb Etienne Buira:
>>>>> ../..
>>>>>> Out of curiosity and because i never saw this issue, could you please
>>>>>> provide more details?
>>>>>> There is nothing connected to HDMI 0 & 1 ?
>>>>>> Which firmware version are you running?
>>>> Please provide the dmesg output, so we can extract the firmware version.
>>> Firmware version is 2025-02-17T20:03:07, i also attach the full gzipped
>>> dmesg, as long as a patch of extra traces used.
>>> I did not specifically test other firmware versions for the timeout
>>> issue (but i did for video output).
>> Thanks, i'll try to reproduce.
>>
>> Sorry, i forgot but is this reproducible with a recent stable 6.12.x kernel?
> Just reproduced with pristine 6.12.28.
>
okay, i've update the firmware on my older Raspberry Pi 4 to the same
version as yours. But even with your configuration i don't see this kind
of fallout. So I think we shouldn't apply this patch until we really
know what's going on.
You don't have another Raspberry Pi 4 by any chance?
Another cause might be the toolchain. Currently I use a not so fresh gcc
11.3.1 from Linaro.
Except of this, I noticed that your configuration doesn't enable
DWC2_DUAL_ROLE and the LEDS_TRIGGER.
Best regards
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-15 17:48 ` Stefan Wahren
@ 2025-05-15 22:27 ` Etienne Buira
2025-05-16 11:17 ` Stefan Wahren
0 siblings, 1 reply; 16+ messages in thread
From: Etienne Buira @ 2025-05-15 22:27 UTC (permalink / raw)
To: Stefan Wahren
Cc: Etienne Buira, Florian Fainelli, Uwe Kleine-König,
bcm-kernel-feedback-list, Greg Kroah-Hartman, linux-arm-kernel,
linux-kernel, linux-rpi-kernel
Hi Stefan
On Thu, May 15, 2025 at 07:48:04PM +0200, Stefan Wahren wrote:
> Hi Etienne,
>
> Am 15.05.25 um 13:48 schrieb Etienne Buira:
> > On Thu, May 15, 2025 at 12:31:38PM +0200, Stefan Wahren wrote:
> >> Am 15.05.25 um 11:44 schrieb Etienne Buira:
> >>> Hi Stefan, and thank you for your interest.
> >>>
> >>> On Thu, May 15, 2025 at 09:42:43AM +0200, Stefan Wahren wrote:
> >>>> Hi Etienne,
> >>>>
> >>>> Am 15.05.25 um 08:41 schrieb Etienne Buira:
> >>>>> On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
> >>>>>> Hi Etienne,
> >>>>>>
> >>>>>> Am 12.05.25 um 18:30 schrieb Etienne Buira:
> >>>>> ../..
> >>>>>> Out of curiosity and because i never saw this issue, could you please
> >>>>>> provide more details?
> >>>>>> There is nothing connected to HDMI 0 & 1 ?
> >>>>>> Which firmware version are you running?
> >>>> Please provide the dmesg output, so we can extract the firmware version.
> >>> Firmware version is 2025-02-17T20:03:07, i also attach the full gzipped
> >>> dmesg, as long as a patch of extra traces used.
> >>> I did not specifically test other firmware versions for the timeout
> >>> issue (but i did for video output).
> >> Thanks, i'll try to reproduce.
> >>
> >> Sorry, i forgot but is this reproducible with a recent stable 6.12.x kernel?
> > Just reproduced with pristine 6.12.28.
> >
> okay, i've update the firmware on my older Raspberry Pi 4 to the same
> version as yours. But even with your configuration i don't see this kind
> of fallout. So I think we shouldn't apply this patch until we really
> know what's going on.
Ok, thank you, did you make sure a powered hdmi sink were connected? I
noticed there is no timeout if no hdmi is plugged (but there were when
monitor were powered off, maybe specific to my monitor).
> You don't have another Raspberry Pi 4 by any chance?
No, i don't.
> Another cause might be the toolchain. Currently I use a not so fresh gcc
> 11.3.1 from Linaro.
Previous tries were cross built. I tried a native build with (Gentoo
packages) gcc 14.2.1_p20241221, binutils 2.44, and glibc 2.40-r8; but
got same result.
Will do a software upgrade overnight to try with more up to date build
system.
> Except of this, I noticed that your configuration doesn't enable
> DWC2_DUAL_ROLE and the LEDS_TRIGGER.
I have no use of them (and i have a lot of things to disable, but i
prefer to do that starting with a working system).
Regards.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-15 22:27 ` Etienne Buira
@ 2025-05-16 11:17 ` Stefan Wahren
2025-05-16 14:41 ` Searching for firmware timeout cause (was: [PATCH] firmware/raspberrypi: raise timeout to 3s) Etienne Buira
0 siblings, 1 reply; 16+ messages in thread
From: Stefan Wahren @ 2025-05-16 11:17 UTC (permalink / raw)
To: Etienne Buira, Florian Fainelli, Uwe Kleine-König,
bcm-kernel-feedback-list, Greg Kroah-Hartman, linux-arm-kernel,
linux-kernel, linux-rpi-kernel
Am 16.05.25 um 00:27 schrieb Etienne Buira:
> Hi Stefan
>
> On Thu, May 15, 2025 at 07:48:04PM +0200, Stefan Wahren wrote:
>> Hi Etienne,
>>
>> Am 15.05.25 um 13:48 schrieb Etienne Buira:
>>> On Thu, May 15, 2025 at 12:31:38PM +0200, Stefan Wahren wrote:
>>>> Am 15.05.25 um 11:44 schrieb Etienne Buira:
>>>>> Hi Stefan, and thank you for your interest.
>>>>>
>>>>> On Thu, May 15, 2025 at 09:42:43AM +0200, Stefan Wahren wrote:
>>>>>> Hi Etienne,
>>>>>>
>>>>>> Am 15.05.25 um 08:41 schrieb Etienne Buira:
>>>>>>> On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
>>>>>>>> Hi Etienne,
>>>>>>>>
>>>>>>>> Am 12.05.25 um 18:30 schrieb Etienne Buira:
>>>>>>> ../..
>>>>>>>> Out of curiosity and because i never saw this issue, could you please
>>>>>>>> provide more details?
>>>>>>>> There is nothing connected to HDMI 0 & 1 ?
>>>>>>>> Which firmware version are you running?
>>>>>> Please provide the dmesg output, so we can extract the firmware version.
>>>>> Firmware version is 2025-02-17T20:03:07, i also attach the full gzipped
>>>>> dmesg, as long as a patch of extra traces used.
>>>>> I did not specifically test other firmware versions for the timeout
>>>>> issue (but i did for video output).
>>>> Thanks, i'll try to reproduce.
>>>>
>>>> Sorry, i forgot but is this reproducible with a recent stable 6.12.x kernel?
>>> Just reproduced with pristine 6.12.28.
>>>
>> okay, i've update the firmware on my older Raspberry Pi 4 to the same
>> version as yours. But even with your configuration i don't see this kind
>> of fallout. So I think we shouldn't apply this patch until we really
>> know what's going on.
> Ok, thank you, did you make sure a powered hdmi sink were connected? I
> noticed there is no timeout if no hdmi is plugged (but there were when
> monitor were powered off, maybe specific to my monitor).
Yes, HDMI monitor was connected to HDMI 0 and powered on. Raspberry Pi
OS started as expected.
The fact that your SDIO interface triggers a warning, which I also don't
get let me think this is not just related to HDMI interface.
[ 3.603736] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 3.603739] mmc0: sdhci: Sys addr: 0x00000000 | Version: 0x00009902
[ 3.646852] mmc0: sdhci: Blk size: 0x00000000 | Blk cnt: 0x00000000
[ 3.646856] mmc0: sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
[ 3.646859] mmc0: sdhci: Present: 0x01ff0001 | Host ctl: 0x00000000
[ 3.665697] mmc0: sdhci: Power: 0x0000000f | Blk gap: 0x00000000
[ 3.672214] mmc0: sdhci: Wake-up: 0x00000000 | Clock: 0x00003947
[ 3.678736] mmc0: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
[ 3.685254] mmc0: sdhci: Int enab: 0x00ff0003 | Sig enab: 0x00ff0003
[ 3.685257] mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
[ 3.685260] mmc0: sdhci: Caps: 0x00000000 | Caps_1: 0x00000000
[ 3.712672] mmc0: sdhci: Cmd: 0x00000000 | Max curr: 0x00000001
[ 3.719186] mmc0: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x00000000
[ 3.725708] mmc0: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000
[ 3.732230] mmc0: sdhci: Host ctl2: 0x00000000
[ 3.736724] mmc0: sdhci: ============================================
[ 3.819205] mmc0: new high speed SDIO card at address 0001
>
>> You don't have another Raspberry Pi 4 by any chance?
> No, i don't.
>
>> Another cause might be the toolchain. Currently I use a not so fresh gcc
>> 11.3.1 from Linaro.
> Previous tries were cross built. I tried a native build with (Gentoo
> packages) gcc 14.2.1_p20241221, binutils 2.44, and glibc 2.40-r8; but
> got same result.
> Will do a software upgrade overnight to try with more up to date build
> system.
I will try to update my toolchain, but this will take some time.
>
>> Except of this, I noticed that your configuration doesn't enable
>> DWC2_DUAL_ROLE and the LEDS_TRIGGER.
> I have no use of them (and i have a lot of things to disable, but i
> prefer to do that starting with a working system).
I this case you can disable DWC2 completely, because USB host is
provided by xhci driver. LEDS_TRIGGER is used for the ACT LED as heartbeat.
>
> Regards.
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Searching for firmware timeout cause (was: [PATCH] firmware/raspberrypi: raise timeout to 3s)
2025-05-16 11:17 ` Stefan Wahren
@ 2025-05-16 14:41 ` Etienne Buira
2025-05-16 15:20 ` Searching for firmware timeout cause Stefan Wahren
0 siblings, 1 reply; 16+ messages in thread
From: Etienne Buira @ 2025-05-16 14:41 UTC (permalink / raw)
To: Stefan Wahren
Cc: Etienne Buira, Florian Fainelli, Uwe Kleine-König,
bcm-kernel-feedback-list, Greg Kroah-Hartman, linux-arm-kernel,
linux-kernel, linux-rpi-kernel
On Fri, May 16, 2025 at 01:17:41PM +0200, Stefan Wahren wrote:
> Am 16.05.25 um 00:27 schrieb Etienne Buira:
> > Hi Stefan
> >
> > On Thu, May 15, 2025 at 07:48:04PM +0200, Stefan Wahren wrote:
> >> Hi Etienne,
> >>
> >> Am 15.05.25 um 13:48 schrieb Etienne Buira:
> >>> On Thu, May 15, 2025 at 12:31:38PM +0200, Stefan Wahren wrote:
> >>>> Am 15.05.25 um 11:44 schrieb Etienne Buira:
> >>>>> Hi Stefan, and thank you for your interest.
> >>>>>
> >>>>> On Thu, May 15, 2025 at 09:42:43AM +0200, Stefan Wahren wrote:
> >>>>>> Hi Etienne,
> >>>>>>
> >>>>>> Am 15.05.25 um 08:41 schrieb Etienne Buira:
> >>>>>>> On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
> >>>>>>>> Hi Etienne,
> >>>>>>>>
> >>>>>>>> Am 12.05.25 um 18:30 schrieb Etienne Buira:
> >>>>>>> ../..
> >>>>>>>> Out of curiosity and because i never saw this issue, could you please
> >>>>>>>> provide more details?
> >>>>>>>> There is nothing connected to HDMI 0 & 1 ?
> >>>>>>>> Which firmware version are you running?
> >>>>>> Please provide the dmesg output, so we can extract the firmware version.
> >>>>> Firmware version is 2025-02-17T20:03:07, i also attach the full gzipped
> >>>>> dmesg, as long as a patch of extra traces used.
> >>>>> I did not specifically test other firmware versions for the timeout
> >>>>> issue (but i did for video output).
> >>>> Thanks, i'll try to reproduce.
> >>>>
> >>>> Sorry, i forgot but is this reproducible with a recent stable 6.12.x kernel?
> >>> Just reproduced with pristine 6.12.28.
> >>>
> >> okay, i've update the firmware on my older Raspberry Pi 4 to the same
> >> version as yours. But even with your configuration i don't see this kind
> >> of fallout. So I think we shouldn't apply this patch until we really
> >> know what's going on.
> > Ok, thank you, did you make sure a powered hdmi sink were connected? I
> > noticed there is no timeout if no hdmi is plugged (but there were when
> > monitor were powered off, maybe specific to my monitor).
> Yes, HDMI monitor was connected to HDMI 0 and powered on. Raspberry Pi
> OS started as expected.
>
> The fact that your SDIO interface triggers a warning, which I also don't
> get let me think this is not just related to HDMI interface.
>
> [ 3.603736] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
> [ 3.603739] mmc0: sdhci: Sys addr: 0x00000000 | Version: 0x00009902
> [ 3.646852] mmc0: sdhci: Blk size: 0x00000000 | Blk cnt: 0x00000000
> [ 3.646856] mmc0: sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
> [ 3.646859] mmc0: sdhci: Present: 0x01ff0001 | Host ctl: 0x00000000
> [ 3.665697] mmc0: sdhci: Power: 0x0000000f | Blk gap: 0x00000000
> [ 3.672214] mmc0: sdhci: Wake-up: 0x00000000 | Clock: 0x00003947
> [ 3.678736] mmc0: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
> [ 3.685254] mmc0: sdhci: Int enab: 0x00ff0003 | Sig enab: 0x00ff0003
> [ 3.685257] mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
> [ 3.685260] mmc0: sdhci: Caps: 0x00000000 | Caps_1: 0x00000000
> [ 3.712672] mmc0: sdhci: Cmd: 0x00000000 | Max curr: 0x00000001
> [ 3.719186] mmc0: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x00000000
> [ 3.725708] mmc0: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000
> [ 3.732230] mmc0: sdhci: Host ctl2: 0x00000000
> [ 3.736724] mmc0: sdhci: ============================================
> [ 3.819205] mmc0: new high speed SDIO card at address 0001
Hi Stefan
I think this warning is because there is nothing in SD slot (i boot from
usb).
> >
> >> You don't have another Raspberry Pi 4 by any chance?
> > No, i don't.
> >
> >> Another cause might be the toolchain. Currently I use a not so fresh gcc
> >> 11.3.1 from Linaro.
> > Previous tries were cross built. I tried a native build with (Gentoo
> > packages) gcc 14.2.1_p20241221, binutils 2.44, and glibc 2.40-r8; but
> > got same result.
> > Will do a software upgrade overnight to try with more up to date build
> > system.
> I will try to update my toolchain, but this will take some time.
Ok, thank you.
I updated the whole thing, but no change in toolchain versions. I'm
trying to get a gcc11 based one.
> >
> >> Except of this, I noticed that your configuration doesn't enable
> >> DWC2_DUAL_ROLE and the LEDS_TRIGGER.
> > I have no use of them (and i have a lot of things to disable, but i
> > prefer to do that starting with a working system).
> I this case you can disable DWC2 completely, because USB host is
> provided by xhci driver. LEDS_TRIGGER is used for the ACT LED as heartbeat.
Ok, thank you.
Regards.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Searching for firmware timeout cause
2025-05-16 14:41 ` Searching for firmware timeout cause (was: [PATCH] firmware/raspberrypi: raise timeout to 3s) Etienne Buira
@ 2025-05-16 15:20 ` Stefan Wahren
0 siblings, 0 replies; 16+ messages in thread
From: Stefan Wahren @ 2025-05-16 15:20 UTC (permalink / raw)
To: Etienne Buira, Florian Fainelli, Uwe Kleine-König,
Raspberry Pi Kernel Maintenance, Phil Elwell
Cc: bcm-kernel-feedback-list, linux-arm-kernel, linux-rpi-kernel,
Greg Kroah-Hartman
[add Phil & Raspberry Pi list, drop lkml]
Am 16.05.25 um 16:41 schrieb Etienne Buira:
> On Fri, May 16, 2025 at 01:17:41PM +0200, Stefan Wahren wrote:
>> Am 16.05.25 um 00:27 schrieb Etienne Buira:
>>> Hi Stefan
>>>
>>> On Thu, May 15, 2025 at 07:48:04PM +0200, Stefan Wahren wrote:
>>>> Hi Etienne,
>>>>
>>>> Am 15.05.25 um 13:48 schrieb Etienne Buira:
>>>>> On Thu, May 15, 2025 at 12:31:38PM +0200, Stefan Wahren wrote:
>>>>>> Am 15.05.25 um 11:44 schrieb Etienne Buira:
>>>>>>> Hi Stefan, and thank you for your interest.
>>>>>>>
>>>>>>> On Thu, May 15, 2025 at 09:42:43AM +0200, Stefan Wahren wrote:
>>>>>>>> Hi Etienne,
>>>>>>>>
>>>>>>>> Am 15.05.25 um 08:41 schrieb Etienne Buira:
>>>>>>>>> On Wed, May 14, 2025 at 06:20:32PM +0200, Stefan Wahren wrote:
>>>>>>>>>> Hi Etienne,
>>>>>>>>>>
>>>>>>>>>> Am 12.05.25 um 18:30 schrieb Etienne Buira:
>>>>>>>>> ../..
>>>>>>>>>> Out of curiosity and because i never saw this issue, could you please
>>>>>>>>>> provide more details?
>>>>>>>>>> There is nothing connected to HDMI 0 & 1 ?
>>>>>>>>>> Which firmware version are you running?
>>>>>>>> Please provide the dmesg output, so we can extract the firmware version.
>>>>>>> Firmware version is 2025-02-17T20:03:07, i also attach the full gzipped
>>>>>>> dmesg, as long as a patch of extra traces used.
>>>>>>> I did not specifically test other firmware versions for the timeout
>>>>>>> issue (but i did for video output).
>>>>>> Thanks, i'll try to reproduce.
>>>>>>
>>>>>> Sorry, i forgot but is this reproducible with a recent stable 6.12.x kernel?
>>>>> Just reproduced with pristine 6.12.28.
>>>>>
>>>> okay, i've update the firmware on my older Raspberry Pi 4 to the same
>>>> version as yours. But even with your configuration i don't see this kind
>>>> of fallout. So I think we shouldn't apply this patch until we really
>>>> know what's going on.
>>> Ok, thank you, did you make sure a powered hdmi sink were connected? I
>>> noticed there is no timeout if no hdmi is plugged (but there were when
>>> monitor were powered off, maybe specific to my monitor).
>> Yes, HDMI monitor was connected to HDMI 0 and powered on. Raspberry Pi
>> OS started as expected.
>>
>> The fact that your SDIO interface triggers a warning, which I also don't
>> get let me think this is not just related to HDMI interface.
>>
>> [ 3.603736] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
>> [ 3.603739] mmc0: sdhci: Sys addr: 0x00000000 | Version: 0x00009902
>> [ 3.646852] mmc0: sdhci: Blk size: 0x00000000 | Blk cnt: 0x00000000
>> [ 3.646856] mmc0: sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
>> [ 3.646859] mmc0: sdhci: Present: 0x01ff0001 | Host ctl: 0x00000000
>> [ 3.665697] mmc0: sdhci: Power: 0x0000000f | Blk gap: 0x00000000
>> [ 3.672214] mmc0: sdhci: Wake-up: 0x00000000 | Clock: 0x00003947
>> [ 3.678736] mmc0: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
>> [ 3.685254] mmc0: sdhci: Int enab: 0x00ff0003 | Sig enab: 0x00ff0003
>> [ 3.685257] mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
>> [ 3.685260] mmc0: sdhci: Caps: 0x00000000 | Caps_1: 0x00000000
>> [ 3.712672] mmc0: sdhci: Cmd: 0x00000000 | Max curr: 0x00000001
>> [ 3.719186] mmc0: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x00000000
>> [ 3.725708] mmc0: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000
>> [ 3.732230] mmc0: sdhci: Host ctl2: 0x00000000
>> [ 3.736724] mmc0: sdhci: ============================================
>> [ 3.819205] mmc0: new high speed SDIO card at address 0001
> Hi Stefan
>
> I think this warning is because there is nothing in SD slot (i boot from
> usb).
Okay, this was the reason why i wasn't able to reproduce. I usually boot
from SD card.
After connecting my USB SD card reader to a USB 3.0 port (not USB 2.0
port), I'm able to reproduce the firmware "timeout".
@Phil Do you have a explanation why USB 3.0 Boot on Raspberry Pi 4 could
cause such a delayed reponse (> 1 s) for Firmware transaction 0x00030066?
@Etienne Actually an empty SD card shouldn't trigger such a register
dump, but that's a different issue.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH] firmware/raspberrypi: raise timeout to 3s
2025-05-15 6:34 ` Etienne Buira
@ 2025-05-21 8:55 ` Stefan Wahren
2025-05-21 10:04 ` [PATCH v3] " Etienne Buira
0 siblings, 1 reply; 16+ messages in thread
From: Stefan Wahren @ 2025-05-21 8:55 UTC (permalink / raw)
To: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
Hi Etienne,
please always increase the version of your patch, in case you change
something.
Am 15.05.25 um 08:34 schrieb Etienne Buira:
> Raspberry firmware driver expected said firmware to answer by 1 second.
> That seems to work fine for most cases, but with
> RPI_FIRMWARE_NOTIFY_DISPLAY_DONE, that IIUC may need to reconfigure a
> monitor, i end up reliably having timeouts:
> [ 2.861407] ------------[ cut here ]------------
> [ 2.865512] Firmware transaction 0x00030066 timeout
I think we can strip down the trace to this line.
> [ 2.865549] WARNING: CPU: 3 PID: 42 at drivers/firmware/raspberrypi.c:128 rpi_firmware_property_list+0x21c/0x29c
> [ 2.880751] CPU: 3 UID: 0 PID: 42 Comm: kworker/u16:1 Not tainted 6.15.0-rc6 #1 PREEMPT
> [ 2.888944] Hardware name: Raspberry Pi 4 Model B Rev 1.5 (DT)
> [ 2.894848] Workqueue: events_unbound deferred_probe_work_func
> [ 2.900752] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
> [ 2.907801] pc : rpi_firmware_property_list+0x21c/0x29c
> [ 2.913089] lr : rpi_firmware_property_list+0x21c/0x29c
> [ 2.918376] sp : ffffffc0803139c0
> [ 2.921725] x29: ffffffc0803139e0 x28: ffffff8040bbef50 x27: ffffff80410c0f40
> [ 2.928953] x26: ffffffd7055d9e28 x25: ffffffc0801e0008 x24: 0000000000001000
> [ 2.936179] x23: ffffff80410c1080 x22: 000000000000000a x21: ffffff80410c0f00
> [ 2.943405] x20: 000000000000000c x19: ffffffc0801e0000 x18: ffffffc08030d0a0
> [ 2.950632] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
> [ 2.957858] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
> [ 2.965085] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
> [ 2.972311] x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000
> [ 2.979537] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
> [ 2.986764] x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000
> [ 2.993992] Call trace:
> [ 2.996458] rpi_firmware_property_list+0x21c/0x29c (P)
> [ 3.001747] rpi_firmware_property+0x70/0xd8
> [ 3.006064] vc4_drm_bind+0x12c/0x378
> [ 3.009765] try_to_bring_up_aggregate_device+0x22c/0x308
> [ 3.015230] __component_add+0xec/0x224
> [ 3.019106] component_add+0x14/0x30
> [ 3.022720] vc4_hdmi_dev_probe+0x1c/0x40
> [ 3.026773] platform_probe+0x68/0xf0
> [ 3.030474] really_probe+0xc0/0x3ac
> [ 3.034088] __driver_probe_device+0x7c/0x174
> [ 3.038495] driver_probe_device+0x40/0x100
> [ 3.042725] __device_attach_driver+0x10c/0x1e0
> [ 3.047308] bus_for_each_drv+0x88/0x100
> [ 3.051273] __device_attach+0xa0/0x1c8
> [ 3.055151] device_initial_probe+0x14/0x30
> [ 3.059381] bus_probe_device+0xc8/0xcc
> [ 3.063259] deferred_probe_work_func+0xb8/0x12c
> [ 3.067930] process_one_work+0x160/0x2d4
> [ 3.071983] worker_thread+0x2d8/0x400
> [ 3.075773] kthread+0x12c/0x208
> [ 3.079034] ret_from_fork+0x10/0x20
> [ 3.082647] ---[ end trace 0000000000000000 ]---
>
> Raising the timeout to 3 seconds (ought to be enough®) doesn't trigger
> timeouts anymore for me and proceeds to the next failure.
Based on the recent findings, please provide more context in the commit
message and add a link to the firmware issue:
Link: https://github.com/raspberrypi/firmware/issues/1970
> Signed-off-by: Etienne Buira <etienne.buira@free.fr>
> ---
Please add the patch change log here as documented in
https://www.kernel.org/doc/html/latest/process/submitting-patches.html
> drivers/firmware/raspberrypi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
> index 7ecde6921a0a..8c45a152e3ba 100644
> --- a/drivers/firmware/raspberrypi.c
> +++ b/drivers/firmware/raspberrypi.c
> @@ -58,7 +58,7 @@ rpi_firmware_transaction(struct rpi_firmware *fw, u32 chan, u32 data)
> reinit_completion(&fw->c);
> ret = mbox_send_message(fw->chan, &message);
> if (ret >= 0) {
> - if (wait_for_completion_timeout(&fw->c, HZ)) {
> + if (wait_for_completion_timeout(&fw->c, 3 * HZ)) {
> ret = 0;
> } else {
> ret = -ETIMEDOUT;
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH v3] firmware/raspberrypi: raise timeout to 3s
2025-05-21 8:55 ` Stefan Wahren
@ 2025-05-21 10:04 ` Etienne Buira
2025-05-21 13:05 ` Stefan Wahren
0 siblings, 1 reply; 16+ messages in thread
From: Etienne Buira @ 2025-05-21 10:04 UTC (permalink / raw)
To: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
Raspberry firmware driver expected said firmware to answer by 1 second.
However, some firmware versions are buggy and can take longer with
RPI_FIRMWARE_NOTIFY_DISPLAY_DONE.
[ 2.861407] ------------[ cut here ]------------
[ 2.865512] Firmware transaction 0x00030066 timeout
Raising the timeout to 3 seconds (ought to be enough®) doesn't trigger
timeouts anymore for me and proceeds to the next failure.
Some details about firmware debugging are available here:
Link: https://github.com/raspberrypi/firmware/issues/1970
Signed-off-by: Etienne Buira <etienne.buira@free.fr>
---
v2: coding style
v3: commit message
Stefan, feel free to edit to your liking if needed, or even take
ownership of such one-liner, that would not be stealing.
drivers/firmware/raspberrypi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
index 7ecde6921a0a..8c45a152e3ba 100644
--- a/drivers/firmware/raspberrypi.c
+++ b/drivers/firmware/raspberrypi.c
@@ -58,7 +58,7 @@ rpi_firmware_transaction(struct rpi_firmware *fw, u32 chan, u32 data)
reinit_completion(&fw->c);
ret = mbox_send_message(fw->chan, &message);
if (ret >= 0) {
- if (wait_for_completion_timeout(&fw->c, HZ)) {
+ if (wait_for_completion_timeout(&fw->c, 3 * HZ)) {
ret = 0;
} else {
ret = -ETIMEDOUT;
--
2.48.1
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH v3] firmware/raspberrypi: raise timeout to 3s
2025-05-21 10:04 ` [PATCH v3] " Etienne Buira
@ 2025-05-21 13:05 ` Stefan Wahren
0 siblings, 0 replies; 16+ messages in thread
From: Stefan Wahren @ 2025-05-21 13:05 UTC (permalink / raw)
To: Florian Fainelli, bcm-kernel-feedback-list, Greg Kroah-Hartman,
Uwe Kleine-König, Etienne Buira, linux-rpi-kernel,
linux-arm-kernel, linux-kernel
Am 21.05.25 um 12:04 schrieb Etienne Buira:
> Raspberry firmware driver expected said firmware to answer by 1 second.
> However, some firmware versions are buggy and can take longer with
> RPI_FIRMWARE_NOTIFY_DISPLAY_DONE.
> [ 2.861407] ------------[ cut here ]------------
> [ 2.865512] Firmware transaction 0x00030066 timeout
>
> Raising the timeout to 3 seconds (ought to be enough®) doesn't trigger
> timeouts anymore for me and proceeds to the next failure.
>
> Some details about firmware debugging are available here:
> Link: https://github.com/raspberrypi/firmware/issues/1970
>
> Signed-off-by: Etienne Buira <etienne.buira@free.fr>
Reviewed-by: Stefan Wahren <wahrenst@gmx.net>
Thanks
>
> ---
> v2: coding style
> v3: commit message
>
> Stefan, feel free to edit to your liking if needed, or even take
> ownership of such one-liner, that would not be stealing.
>
> drivers/firmware/raspberrypi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
> index 7ecde6921a0a..8c45a152e3ba 100644
> --- a/drivers/firmware/raspberrypi.c
> +++ b/drivers/firmware/raspberrypi.c
> @@ -58,7 +58,7 @@ rpi_firmware_transaction(struct rpi_firmware *fw, u32 chan, u32 data)
> reinit_completion(&fw->c);
> ret = mbox_send_message(fw->chan, &message);
> if (ret >= 0) {
> - if (wait_for_completion_timeout(&fw->c, HZ)) {
> + if (wait_for_completion_timeout(&fw->c, 3 * HZ)) {
> ret = 0;
> } else {
> ret = -ETIMEDOUT;
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2025-05-21 13:45 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-12 16:30 [PATCH] firmware/raspberrypi: raise timeout to 3s Etienne Buira
2025-05-14 16:20 ` Stefan Wahren
2025-05-15 6:34 ` Etienne Buira
2025-05-21 8:55 ` Stefan Wahren
2025-05-21 10:04 ` [PATCH v3] " Etienne Buira
2025-05-21 13:05 ` Stefan Wahren
2025-05-15 6:41 ` [PATCH] " Etienne Buira
2025-05-15 7:42 ` Stefan Wahren
2025-05-15 9:44 ` Etienne Buira
2025-05-15 10:31 ` Stefan Wahren
2025-05-15 11:48 ` Etienne Buira
2025-05-15 17:48 ` Stefan Wahren
2025-05-15 22:27 ` Etienne Buira
2025-05-16 11:17 ` Stefan Wahren
2025-05-16 14:41 ` Searching for firmware timeout cause (was: [PATCH] firmware/raspberrypi: raise timeout to 3s) Etienne Buira
2025-05-16 15:20 ` Searching for firmware timeout cause Stefan Wahren
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).