Skip to content
Snippets Groups Projects
  • Robin Gong's avatar
    LF-4435: dmaengine: imx-sdma: fix kernel dump during MP3 decoding · d751c3d6
    Robin Gong authored
    
    update base_bd_ptr for channel0 after bd0 descriptor allocated again.
    Otherwise, sdma may hang if the stale/wrong bd0 data touched by channel0
    as below:
    
    [  221.334360] imx-sdma 30e10000.dma-controller: Timeout waiting for CH0 ready
    [  221.341333] imx-sdma 30e10000.dma-controller: save context error!
    [  221.347437] PM: dpm_run_callback(): sdma_suspend+0x0/0x160 returns -110
    [  221.354054] PM: Device 30e10000.dma-controller failed to suspend late: error -110
    [  221.361937] PM: late suspend of devices failed
    [  221.370127] ------------[ cut here ]------------
    [  221.374745] lcdif_pixel_clk already disabled
    [  221.379050] WARNING: CPU: 0 PID: 4510 at drivers/clk/clk.c:952 clk_core_disable+0xa4/0xb0
    [  221.387222] Modules linked in: snvs_ui(O) fsl_jr_uio caam_jr caamkeyblob_desc caamhash_desc caamalg_desc crypto_engine rng_core authenc libdes crct10dif_ce imx8_media_dev(C) flexcan can_dev caam secvio error fuse [last unloaded: snvs_ui]
    [  221.408283] CPU: 0 PID: 4510 Comm: rtc_wakeup.sh Tainted: G         C O      5.10.52-lts-5.10.y+g5788c4507376 #1
    [  221.418451] Hardware name: NXP i.MX8MPlus EVK board (DT)
    [  221.423761] pstate: 40000085 (nZcv daIf -PAN -UAO -TCO BTYPE=--)
    [  221.429764] pc : clk_core_disable+0xa4/0xb0
    [  221.433943] lr : clk_core_disable+0xa4/0xb0
    [  221.438122] sp : ffff800012fdb820
    [  221.441433] x29: ffff800012fdb820 x28: 0000000000000000
    [  221.446743] x27: 0000000000000008 x26: ffff800011621f60
    [  221.452053] x25: ffff0000c4b7f000 x24: ffff80001128d138
    [  221.457364] x23: 0000000000000038 x22: ffff0000c18fea00
    [  221.462674] x21: ffff800011d0ba70 x20: ffff0000c1873a00
    [  221.467984] x19: ffff0000c1873a00 x18: 0000000000000030
    [  221.473294] x17: 0000000000000000 x16: 0000000000000000
    [  221.478604] x15: ffff0000c48d12b8 x14: ffffffffffffffff
    [  221.483913] x13: ffff800011b51780 x12: 000000000000095a
    [  221.489223] x11: 000000000000031e x10: ffff800011ba9780
    [  221.494534] x9 : 00000000fffff000 x8 : ffff800011b51780
    [  221.499844] x7 : ffff800011ba9780 x6 : 0000000000000000
    [  221.505154] x5 : ffff00017f3ee900 x4 : 0000000000000000
    [  221.510464] x3 : 0000000000000027 x2 : 0000000000000023
    [  221.515774] x1 : f7f28654584c0c00 x0 : 0000000000000000
    [  221.521085] Call trace:
    [  221.523529]  clk_core_disable+0xa4/0xb0
    [  221.527363]  clk_disable+0x34/0x50
    [  221.530764]  lcdifv3_set_mode+0x40/0x2f0
    [  221.534685]  lcdifv3_crtc_atomic_enable+0x88/0xcc
    [  221.539387]  drm_atomic_helper_commit_modeset_enables+0x200/0x250
    [  221.545478]  lcdifv3_drm_atomic_commit_tail+0x30/0x70
    [  221.550526]  commit_tail+0xa0/0x180
    [  221.554012]  drm_atomic_helper_commit+0x160/0x390
    [  221.558714]  drm_atomic_commit+0x4c/0x60
    [  221.562633]  drm_atomic_helper_commit_duplicated_state+0xf0/0x10c
    [  221.568723]  drm_atomic_helper_resume+0x94/0x170
    [  221.573338]  drm_mode_config_helper_resume+0x24/0x90
    [  221.578299]  imx_drm_resume+0x14/0x20
    [  221.581959]  platform_pm_resume+0x30/0x70
    [  221.585968]  dpm_run_callback.constprop.0+0x3c/0xe4
    [  221.590842]  device_resume+0x88/0x180
    [  221.594501]  dpm_resume+0xe8/0x220
    [  221.597900]  dpm_resume_end+0x18/0x30
    [  221.601562]  suspend_devices_and_enter+0x1a4/0x5a0
    [  221.606349]  pm_suspend+0x2e0/0x34c
    [  221.609835]  state_store+0x8c/0x110
    [  221.613323]  kobj_attr_store+0x1c/0x30
    [  221.617070]  sysfs_kf_write+0x48/0x60
    [  221.620730]  kernfs_fop_write_iter+0x118/0x1ac
    [  221.625171]  new_sync_write+0xe8/0x180
    [  221.628917]  vfs_write+0x244/0x2a4
    [  221.632316]  ksys_write+0x6c/0x100
    [  221.635714]  __arm64_sys_write+0x20/0x30
    [  221.639636]  el0_svc_common.constprop.0+0x78/0x1a0
    [  221.644423]  do_el0_svc+0x24/0x90
    [  221.647737]  el0_svc+0x14/0x20
    [  221.650789]  el0_sync_handler+0x1a4/0x1b0
    [  221.654796]  el0_sync+0x180/0x1c0
    [  221.658107] ---[ end trace c48b0b0e987f7565 ]---
    [  221.662752] ------------[ cut here ]------------
    
    Signed-off-by: default avatarRobin Gong <yibin.gong@nxp.com>
    Reviewed-by: default avatarShengjiu Wang <shengjiu.wang@nxp.com>
    Acked-by: default avatarJason Liu <jason.hui.liu@nxp.com>
    d751c3d6
Code owners
Assign users and groups as approvers for specific file changes. Learn more.