merged.

Bruce

In message: [linux-yocto] [kernel v5.10/standard/nxp-sdk-5.4/nxp-imx8][PATCH] 
arm64: dts: imx8: Move usb3_lpcg to IMX_SC_R_USB_2 domain
on 07/05/2021 Xiaolei Wang wrote:

> Because the usb3_aclk device is created during the probe of clk-imx8qxp 
> driver,
> but the usb3_lpcg is added to the dpm_list in the parsing of dtb.
> Therefore, the usb3_aclk enters the suspend first when the system is 
> suspended.
> Since the usb3_lpcg depends on the usb3_aclk, when the usb3_lpcg enters the
> suspend When the register cannot be accessed normally, the following calltrace
> appears:
> 
> Internal error: synchronous external abort: 96000210 [#1] PREEMPT SMP
> Modules linked in:
> CPU: 1 PID: 409 Comm: sh Not tainted 5.10.25-yocto-standard #1
> Hardware name: Freescale i.MX8QM MEK (DT)
> pstate: 20000005 (nzCv daif -PAN -UAO -TCO BTYPE=--)
> pc : imx_clk_lpcg_scu_suspend+0x44/0x60
> lr : imx_clk_lpcg_scu_suspend+0x3c/0x60
> sp : ffff8000133bba30
> x29: ffff8000133bba30 x28: 0000000000000002
> x27: ffff80001088fac4 x26: ffff8000119b1200
> x25: ffff8000117da49c x24: ffff800011926400
> x23: ffff800011a8cf60 x22: 0000000000000000
> x21: ffff000810b71410 x20: ffff000810b71410
> x19: ffff000810ef0680 x18: 0000000000000020
> x17: 0000000000000000 x16: 0000000000000000
> x15: 0f130d005a0f171d x14: 75732066666f7265
> x13: 0000000000000000 x12: 0000000000000003
> x11: 0101010101010101 x10: 0000000000000930
> x9 : 7f7f7f7f7f7f7f7f x8 : 626f6b5e686c6367
> x7 : 1d170f5a000d130f x6 : 0f130d005a0f171d
> x5 : 0000000000000000 x4 : ab9b119afb0b1b60
> x3 : 0000000000000043 x2 : 0000000000000009
> x1 : ffff000810ef0708 x0 : ffff800012f80000
> Call trace:
>  imx_clk_lpcg_scu_suspend+0x44/0x60
>  pm_generic_suspend_noirq+0x38/0x50
>  genpd_finish_suspend+0xb8/0x150
>  genpd_suspend_noirq+0x20/0x30
>  dpm_run_callback+0x50/0x1c0
>  __device_suspend_noirq+0xec/0x244
>  dpm_noirq_suspend_devices+0x11c/0x320
>  dpm_suspend_noirq+0x30/0xa4
>  suspend_devices_and_enter+0x3b0/0x8a0
>  pm_suspend+0x288/0x330
>  state_store+0x98/0x120
>  kobj_attr_store+0x1c/0x30
>  sysfs_kf_write+0x50/0x60
>  kernfs_fop_write_iter+0x124/0x1b4
>  new_sync_write+0xf4/0x190
>  vfs_write+0x21c/0x280
>  ksys_write+0x78/0x104
>  __arm64_sys_write+0x28/0x3c
>  el0_svc_common.constprop.0+0x9c/0x1f0
>  do_el0_svc+0x78/0xa0
>  el0_svc+0x20/0x30
>  el0_sync_handler+0x1a4/0x1b0
>  el0_sync+0x174/0x180
> Code: d2800122 97fd4d7a 34000080 f9400e60 (b9400000)
> ---[ end trace 22db9b04ad434a5d ]---
> 
> In order fix this issue, moving the usb3_lpcg to the same power domain as 
> usb3_aclk,
> so that we can make sure that the power is not off when the usb3_lpcg is 
> suspending.
> 
> Signed-off-by: Xiaolei Wang <[email protected]>
> ---
>  arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi 
> b/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
> index 4eb51cad186d..f83a30a138ee 100644
> --- a/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8-ss-conn.dtsi
> @@ -330,7 +330,7 @@ usb3_lpcg: clock-controller@5b280000 {
>                                    "usb3_core_pclk",
>                                    "usb3_phy_clk",
>                                    "usb3_aclk";
> -             power-domains = <&pd IMX_SC_R_USB_2_PHY>;
> +             power-domains = <&pd IMX_SC_R_USB_2>;
>       };
>  
>       rawnand_0_lpcg: clock-controller@5b290000 {
> -- 
> 2.25.1
> 
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#9861): 
https://lists.yoctoproject.org/g/linux-yocto/message/9861
Mute This Topic: https://lists.yoctoproject.org/mt/82646848/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to