[Letux-kernel] New branches (was Re: jz4780 CI20 v5.8 (was jz4730))

H. Nikolaus Schaller hns at goldelico.com
Sat Jul 18 08:45:21 CEST 2020


Hi Paul.

> Am 17.07.2020 um 18:36 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
> 
>> The JZ4780 branch should have a working LCD controller, but the HDMI signal is 
>> still not yet working. However, I did fix the hotplug event kernel panic.
>> 
>> Both branches compile successfully but obviously need testing!
> 
> I'll cherry-pick your latest patches for letux-5.8-rc6 which likely comes
> on Monday.
> 
> You can try another rebase on top of that - so that all material merged
> into letux-5.8-rc6 will go away.
> 
> Or you can add new commit on top of your branches and let me know.

I have now built the kernel (plus my patches with additional printk).

It boots, enables the display (backlight only). And now handles unplug and
replug without kernel panic.

The only thing is that the irq handler is called permanently and triggering
a lot of activities in the background...

I am not sure if it is standard-operation to call e.g. drm_atomic_add_encoder_bridges

But I am not sure if it is not introduced by my printk() code which may
slow down some worker thread too much.

BR,
Nikolaus



[  278.537281] ingenic_drm_irq_handler
[  278.554699] ingenic_drm_irq_handler
[  278.572157] ingenic_drm_irq_handler
[  278.589629] ingenic_drm_irq_handler
[  278.607065] ingenic_drm_irq_handler
[  278.624530] ingenic_drm_irq_handler
[  278.642007] ingenic_drm_irq_handler
[  278.659457] ingenic_drm_irq_handler
[  278.676915] ingenic_drm_irq_handler
[  278.694377] ingenic_drm_irq_handler
[  278.711837] ingenic_drm_irq_handler
[  278.729301] ingenic_drm_irq_handler
[  278.659379] ingenic_drm_irq_handler
[  278.676855] ingenic_drm_irq_handler
[  278.694301] ingenic_drm_irq_handler
[  278.711797] ingenic_drm_irq_handler
[  278.729226] ingenic_drm_irq_handler
[  278.746682] ingenic_drm_irq_handler
[  278.764137] ingenic_drm_irq_handler
[  278.769321] systemd-journald[726]: /dev/kmsg buffer overrun, some messages lost.
[  278.781594] ingenic_drm_irq_handler
[  278.799062] ingenic_drm_irq_handler
[  278.816517] ingenic_drm_irq_handler
[  278.833978] ingenic_drm_irq_handler
[  278.851447] ingenic_drm_irq_handler
[  278.868913] ingenic_drm_irq_handler
[  278.886369] ingenic_drm_irq_handler
[  278.903849] ingenic_drm_irq_handler
[  278.921290] ingenic_drm_irq_handler
[  278.938785] ingenic_drm_irq_handler
[  278.956223] ingenic_drm_irq_handler
[  278.973686] ingenic_drm_irq_handler
[  278.991146] ingenic_drm_irq_handler
[  279.000893] __drm_fb_helper_restore_fbdev_mode_unlocked
[  279.006169] __drm_fb_helper_restore_fbdev_mode_unlocked 1
[  279.008597] ingenic_drm_irq_handler
[  279.011590] __drm_fb_helper_restore_fbdev_mode_unlocked 2
[  279.021186] drm_client_modeset_commit_locked
[  279.025547] drm_client_modeset_commit_locked 1
[  279.026055] ingenic_drm_irq_handler
[  279.030023] drm_client_modeset_commit_atomic
[  279.038845] [drm:drm_atomic_state_init [drm]] Allocated atomic state 345c241e
[  279.043538] ingenic_drm_irq_handler
[  279.046206] drm_client_modeset_commit_atomic 1
[  279.054623] drm_client_modeset_commit_atomic 2
[  279.059167] drm_client_modeset_commit_atomic 3
[  279.060991] ingenic_drm_irq_handler
[  279.064595] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:31:plane-0] 01f4de6e state to 345c241e
[  279.077607] [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:32:crtc-0] f014a6a9 state to 345c241e
[  279.078439] ingenic_drm_irq_handler
[  279.086723] drm_client_modeset_commit_atomic 4
[  279.095323] drm_client_modeset_commit_atomic 5
[  279.095905] ingenic_drm_irq_handler
[  279.100250] [drm:drm_atomic_set_fb_for_plane [drm]] Set [FB:37] for [PLANE:31:plane-0] state 01f4de6e
[  279.113650] [drm:drm_atomic_add_affected_connectors [drm]] Adding all current connectors for [CRTC:32:crtc-0] to 345c241e
[  279.113657] ingenic_drm_irq_handler
[  279.129174] [drm:drm_atomic_get_connector_state [drm]] Added [CONNECTOR:34:HDMI-A-1] d90b7d6d state to 345c241e
[  279.130835] ingenic_drm_irq_handler
[  279.139938] [drm:drm_atomic_set_crtc_for_connector [drm]] Link [CONNECTOR:34:HDMI-A-1] state d90b7d6d to [NOCRTC]
[  279.148302] ingenic_drm_irq_handler
[  279.153613] [drm:drm_atomic_set_crtc_for_connector [drm]] Link [CONNECTOR:34:HDMI-A-1] state d90b7d6d to [CRTC:32:crtc-0]
[  279.165767] ingenic_drm_irq_handler
[  279.167893] drm_client_modeset_commit_atomic 5b ret=0
[  279.176338] drm_client_modeset_commit_atomic 6
[  279.180814] drm_client_modeset_commit_atomic 7
[  279.183230] ingenic_drm_irq_handler
[  279.185290] drm_atomic_commit
[  279.192201] [drm:drm_atomic_check_only [drm]] checking 345c241e
[  279.198386] [drm:drm_atomic_helper_check_modeset [drm_kms_helper]] Updating routing for [CONNECTOR:34:HDMI-A-1]
[  279.200687] ingenic_drm_irq_handler
[  279.208671] [drm:drm_atomic_helper_check_modeset [drm_kms_helper]] [CONNECTOR:34:HDMI-A-1] keeps [ENCODER:33:DPI-33], now on [CRTC:32:crtc-0]
[  279.218142] ingenic_drm_irq_handler
[  279.225211] [drm:drm_atomic_add_encoder_bridges [drm]] Adding all bridges for [encoder:33:DPI-33] to 345c241e
[  279.235614] ingenic_drm_irq_handler
[  279.238717] [drm:drm_atomic_get_private_obj_state [drm]] Added new private object ba50c3bb state 65cfe1ff to 345c241e
[  279.253071] [drm:drm_atomic_add_encoder_bridges [drm]] Adding all bridges for [encoder:33:DPI-33] to 345c241e
[  279.253081] ingenic_drm_irq_handler
[  279.266775] dw-hdmi-jz4780 10180000.hdmi: input format 0x100a, output format 0x0001
[  279.270534] ingenic_drm_irq_handler
[  279.274587] ingenic_drm_encoder_atomic_check
[  279.282475] ingenic_drm_crtc_atomic_check
[  279.286543] drm_atomic_commit ret=0
[  279.287969] ingenic_drm_irq_handler
[  279.290482] [drm:drm_atomic_commit [drm]] committing 345c241e
[  279.299439] drm_atomic_commit 2
[  279.302669] drm_atomic_helper_commit_planes
[  279.305438] ingenic_drm_irq_handler
[  279.306927] CPU: 1 PID: 1942 Comm: Xorg.wrap Tainted: G        W         5.8.0-rc5-letux-l400+ #2966
[  279.319619] Stack : 00000000 80b70000 00000000 800871b8 00000007 00000001 65685f63 00000009
[  279.322917] ingenic_drm_irq_handler
[  279.328035]         809c36f4 8df37ba4 00000000 00006549 80a60000 00000001 8df37b38 c26afd53
[  279.339959]         00000000 00000000 8099fec0 00000000 00000000 00000001 2d787574 3030346c
[  279.340366] ingenic_drm_irq_handler
[  279.348371]         bff4ffd7 807e9dd0 0000000f 20202020 80a60000 80000000 00000001 80ab0000
[  279.357827] ingenic_drm_irq_handler
[  279.360298]         c09f3b10 00000000 00000000 00000000 00000003 804690e4 00000004 80b60004
[  279.372229]         ...
[  279.374701] Call Trace:
[  279.375283] ingenic_drm_irq_handler
[  279.377182] [<8001d0b0>] show_stack+0x6c/0x12c
[  279.377209] [<804333cc>] dump_stack+0xa4/0xd8
[  279.389809] [<c09ea294>] drm_atomic_helper_commit_planes+0x74/0x34c [drm_kms_helper]
[  279.392755] ingenic_drm_irq_handler
[  279.397961] [<c09ea5b0>] drm_atomic_helper_commit_tail+0x44/0xb0 [drm_kms_helper]
[  279.408999] [<c09ea708>] commit_tail+0xec/0x218 [drm_kms_helper]
[  279.410203] ingenic_drm_irq_handler
[  279.415377] [<c09ea9a4>] drm_atomic_helper_commit+0x160/0x19c [drm_kms_helper]
[  279.426405] [<c1c1e908>] drm_client_modeset_commit_atomic+0x254/0x368 [drm]
[  279.427651] ingenic_drm_irq_handler
[  279.434061] [<c1c1eabc>] drm_client_modeset_commit_locked+0xa0/0x214 [drm]
[  279.444455] [<c1c1ec70>] drm_client_modeset_commit+0x40/0x70 [drm]
[  279.445131] ingenic_drm_irq_handler
[  279.451119] [<c09f0de4>] __drm_fb_helper_restore_fbdev_mode_unlocked+0xc4/0x148 [drm_kms_helper]
[  279.462593] ingenic_drm_irq_handler
[  279.463357] [<c09f0ea0>] drm_fbdev_client_restore+0x18/0x28 [drm_kms_helper]
[  279.386797] [<c1c1e060>] drm_client_dev_restore+0x9c/0x108 [drm]
[  279.392654] ingenic_drm_irq_handler
[  279.393335] [<c1befdb8>] drm_release+0xac/0x100 [drm]
[  279.401802] [<8019c23c>] __fput+0x108/0x228
[  279.406023] [<80054298>] task_work_run+0xa0/0xd8
[  279.410119] ingenic_drm_irq_handler
[  279.410678] [<8001c38c>] do_notify_resume+0x270/0x2d4
[  279.419266] [<80016a44>] work_notifysig+0x10/0x18
[  279.424310] drm_atomic_helper_commit_planes atomic_begin
[  279.427590] ingenic_drm_irq_handler
[  279.429767] drm_atomic_helper_commit_planes drm_atomic_plane_disabling
[  279.440014] ingenic_drm_plane_atomic_update
[  279.444255] drm_atomic_helper_commit_planes atomic_flush
[  279.445046] ingenic_drm_irq_handler
[  279.449595] drm_atomic_helper_commit_planes funcs=c02fdcb8
[  279.449606] drm_atomic_helper_commit_planes funcs->atomic_flush=c02fc7a8
[  279.462509] ingenic_drm_irq_handler
[  279.465546] drm_atomic_helper_commit_planes active_only=0
[  279.387231] drm_atomic_helper_commit_planes new_crtc_state->active=1
[  279.392590] ingenic_drm_irq_handler
[  279.393729] ingenic_drm_crtc_atomic_flush: 8f8efc00
[  279.402197] ingenic_drm_crtc_update_timings
[  279.406434] ingenic_drm_crtc_update_ctrl
[  279.410038] ingenic_drm_irq_handler
[  279.410517] drm_atomic_helper_commit_planes done
[  279.427515] ingenic_drm_irq_handler
[  279.431618] [drm:drm_atomic_state_default_clear [drm]] Clearing atomic state 345c241e
[  279.439939] [drm:__drm_atomic_state_free [drm]] Freeing atomic state 345c241e
[  279.444970] ingenic_drm_irq_handler
[  279.447122] drm_client_modeset_commit_atomic 8 ret=0
[  279.455629] drm_client_modeset_commit_locked 3 ret=0
[  279.460621] __drm_fb_helper_restore_fbdev_mode_unlocked 3 ret=0
[  279.462454] ingenic_drm_irq_handler
[  279.466570] __drm_fb_helper_restore_fbdev_mode_unlocked 4
[  279.479890] ingenic_drm_irq_handler
[  279.497354] ingenic_drm_irq_handler
[  279.514830] ingenic_drm_irq_handler
[  279.532273] ingenic_drm_irq_handler
[  279.549731] ingenic_drm_irq_handler
[  279.567198] ingenic_drm_irq_handler
[  279.584670] ingenic_drm_irq_handler
[  279.602137] ingenic_drm_irq_handler
[  279.619599] ingenic_drm_irq_handler
[  279.637050] ingenic_drm_irq_handler
[  279.654513] ingenic_drm_irq_handler
[  279.671981] ingenic_drm_irq_handler
[  279.689446] ingenic_drm_irq_handler
[  279.706879] ingenic_drm_irq_handler
[  279.724357] ingenic_drm_irq_handler
[  279.741818] ingenic_drm_irq_handler
[  279.759286] ingenic_drm_irq_handler
[  279.776726] ingenic_drm_irq_handler
[  279.794190] ingenic_drm_irq_handler
[  279.811658] ingenic_drm_irq_handler
[  279.829105] ingenic_drm_irq_handler
[  279.846585] ingenic_drm_irq_handler
[  279.864043] ingenic_drm_irq_handler
[  279.881514] ingenic_drm_irq_handler
[  279.898953] ingenic_drm_irq_handler
[  279.916421] ingenic_drm_irq_handler
[  279.933881] ingenic_drm_irq_handler
[  279.951350] ingenic_drm_irq_handler
[  279.968798] ingenic_drm_irq_handler
[  279.986274] ingenic_drm_irq_handler
[  280.003718] ingenic_drm_irq_handler
[  280.021182] ingenic_drm_irq_handler
[  280.038647] ingenic_drm_irq_handler
[  280.056107] ingenic_drm_irq_handler
[  280.073573] ingenic_drm_irq_handler
[  280.091025] ingenic_drm_irq_handler
[  280.108489] ingenic_drm_irq_handler
[  280.125946] ingenic_drm_irq_handler
[  280.143411] ingenic_drm_irq_handler
[  280.160854] ingenic_drm_irq_handler
[  280.178319] ingenic_drm_irq_handler
[  280.182033] __drm_fb_helper_restore_fbdev_mode_unlocked
[  280.187670] __drm_fb_helper_restore_fbdev_mode_unlocked 1
[  280.193119] __drm_fb_helper_restore_fbdev_mode_unlocked 2
[  280.195762] ingenic_drm_irq_handler
[  280.198553] drm_client_modeset_commit_locked
[  280.206645] drm_client_modeset_commit_locked 1
[  280.211137] drm_client_modeset_commit_atomic
[  280.213225] ingenic_drm_irq_handler
[  280.215877] [drm:drm_atomic_state_init [drm]] Allocated atomic state bfad2b81
[  280.226717] drm_client_modeset_commit_atomic 1
[  280.230693] ingenic_drm_irq_handler
[  280.231529] drm_client_modeset_commit_atomic 2
[  280.239207] drm_client_modeset_commit_atomic 3
[  280.244694] [drm:drm_atomic_get_plane_state [drm]] Added [PLANE:31:plane-0] 6074e48e state to bfad2b81
[  280.248174] ingenic_drm_irq_handler
[  280.254613] [drm:drm_atomic_get_crtc_state [drm]] Added [CRTC:32:crtc-0] d0d6aa0e state to bfad2b81
[  280.265629] ingenic_drm_irq_handler
[  280.267151] drm_client_modeset_commit_atomic 4
[  280.275826] drm_client_modeset_commit_atomic 5
[  280.282110] [drm:drm_atomic_set_fb_for_plane [drm]] Set [FB:37] for [PLANE:31:plane-0] state 6074e48e
[  280.283101] ingenic_drm_irq_handler
[  280.293302] [drm:drm_atomic_add_affected_connectors [drm]] Adding all current connectors for [CRTC:32:crtc-0] to bfad2b81
[  280.300547] ingenic_drm_irq_handler
[  280.219231] [drm:drm_atomic_get_connector_state [drm]] Added [CONNECTOR:34:HDMI-A-1] 0c378f73 state to bfad2b81
[  280.230638] ingenic_drm_irq_handler
[  280.233209] [drm:drm_atomic_set_crtc_for_connector [drm]] Link [CONNECTOR:34:HDMI-A-1] state 0c378f73 to [NOCRTC]
[  280.246639] [drm:drm_atomic_set_crtc_for_connector [drm]] Link [CONNECTOR:34:HDMI-A-1] state 0c378f73 to [CRTC:32:crtc-0]
[  280.248126] ingenic_drm_irq_handler
[  280.258015] drm_client_modeset_commit_atomic 5b ret=0
[  280.265565] ingenic_drm_irq_handler
[  280.266733] drm_client_modeset_commit_atomic 6
[  280.275018] drm_client_modeset_commit_atomic 7
[  280.279623] drm_atomic_commit
[  280.283338] [drm:drm_atomic_check_only [drm]] checking bfad2b81
[  280.283343] ingenic_drm_irq_handler
[  280.293227] [drm:drm_atomic_helper_check_modeset [drm_kms_helper]] Updating routing for [CONNECTOR:34:HDMI-A-1]
[  280.300451] ingenic_drm_irq_handler
[  280.304614] [drm:drm_atomic_helper_check_modeset [drm_kms_helper]] [CONNECTOR:34:HDMI-A-1] keeps [ENCODER:33:DPI-33], now on [CRTC:32:crtc-0]
[  280.317910] ingenic_drm_irq_handler
[  280.321181] [drm:drm_atomic_add_encoder_bridges [drm]] Adding all bridges for [encoder:33:DPI-33] to bfad2b81
[  280.335655] [drm:drm_atomic_get_private_obj_state [drm]] Added new private object ba50c3bb state 3ae8f227 to bfad2b81
[  280.335661] ingenic_drm_irq_handler
[  280.264270] [drm:drm_atomic_add_encoder_bridges [drm]] Adding all bridges for [encoder:33:DPI-33] to bfad2b81
[  280.265481] ingenic_drm_irq_handler
[  280.274295] dw-hdmi-jz4780 10180000.hdmi: input format 0x100a, output format 0x0001
[  280.282937] ingenic_drm_irq_handler
[  280.285678] ingenic_drm_encoder_atomic_check
[  280.293469] ingenic_drm_crtc_atomic_check
[  280.297559] drm_atomic_commit ret=0
[  280.300399] ingenic_drm_irq_handler
[  280.301646] [drm:drm_atomic_commit [drm]] committing bfad2b81




More information about the Letux-kernel mailing list