Re: i.MX8MN Errors on 5.6-RC7

From: Adam Ford
Date: Sat Mar 28 2020 - 08:37:50 EST


On Sat, Mar 28, 2020 at 7:07 AM Anson Huang <anson.huang@xxxxxxx> wrote:
>
> Hi, Adam
>
> > Subject: i.MX8MN Errors on 5.6-RC7
> >
> > I am getting a few errors on the i.MX8MN:
> >
> > [ 0.000368] Failed to get clock for /timer@306a0000
> > [ 0.000380] Failed to initialize '/timer@306a0000': -22
> > [ 7.203447] caam 30900000.caam: Failed to get clk 'ipg': -2
> > [ 7.334741] caam 30900000.caam: Failed to request all necessary clocks
> > [ 7.438651] caam: probe of 30900000.caam failed with error -2
> > [ 7.854193] imx-cpufreq-dt: probe of imx-cpufreq-dt failed with error -2
> >
> > I was curious to know if anyone else is seeing similar errors. I already
> > submitted a proposed fix for a DMA timeout (not shown here) which
> > matched work already done on i.MX8MQ and i.MX8MM.
> >
> > I am not seeing huge differences between 8MM and 8MN in the nodes which
> > address the timer, caam or imx-cpufreq-dt.
> >
> > If anyone has any suggestions, I'd love to try them.
>

Fabio,

I tried your ATF suggestion, and it fixed some issues and introduced others:

[ 0.767679] ------------[ cut here ]------------
[ 0.767687] coherent pool not initialised!
[ 0.767714] WARNING: CPU: 3 PID: 1 at kernel/dma/remap.c:190
dma_alloc_from_pool+0x94/0xa0
[ 0.767718] Modules linked in:
[ 0.767728] CPU: 3 PID: 1 Comm: swapper/0 Not tainted
5.6.0-rc7-00471-g97c33f1ada5c-dirty #5
[ 0.767732] Hardware name: Beacon EmbeddedWorks i.MX8M Nano
Development Kit (DT)
[ 0.767738] pstate: 60000005 (nZCv daif -PAN -UAO)
[ 0.767744] pc : dma_alloc_from_pool+0x94/0xa0
[ 0.767749] lr : dma_alloc_from_pool+0x94/0xa0
[ 0.767753] sp : ffff80001003ba10
[ 0.767756] x29: ffff80001003ba10 x28: ffff00007c868080
[ 0.767762] x27: 0000000fffffffe0 x26: ffff00007fbdd080
[ 0.767768] x25: 0000000000000000 x24: ffff800010161b3c
[ 0.767774] x23: 0000000000001000 x22: ffff00007c86bd38
[ 0.767780] x21: ffff8000112ba000 x20: ffff00007f6ed410
[ 0.767785] x19: 0000000000000000 x18: 0000000000000010
[ 0.767791] x17: 00000000000045e0 x16: 00000000000045d0
[ 0.767796] x15: ffff00007f470470 x14: ffffffffffffffff
[ 0.767802] x13: ffff80009003b777 x12: ffff80001003b77f
[ 0.767807] x11: ffff8000118e1000 x10: ffff800011abc658
[ 0.767813] x9 : 0000000000000000 x8 : 6573696c61697469
[ 0.767818] x7 : 6e6920746f6e206c x6 : 00000000000000a9
[ 0.767824] x5 : 0000000000000000 x4 : 0000000000000000
[ 0.767829] x3 : 00000000ffffffff x2 : ffff8000118e1b80
[ 0.767835] x1 : 3a4437124c5a6b00 x0 : 0000000000000000
[ 0.767840] Call trace:
[ 0.767847] dma_alloc_from_pool+0x94/0xa0
[ 0.767853] dma_direct_alloc_pages+0x1a4/0x1e0
[ 0.767858] dma_direct_alloc+0xc/0x20
[ 0.767863] dma_alloc_attrs+0x7c/0xf0
[ 0.767870] sdma_probe+0x3d4/0x7f0
[ 0.767877] platform_drv_probe+0x50/0xa0
[ 0.767885] really_probe+0xd4/0x320
[ 0.767891] driver_probe_device+0x54/0xf0
[ 0.767897] device_driver_attach+0x6c/0x80
[ 0.767903] __driver_attach+0x54/0xd0
[ 0.767908] bus_for_each_dev+0x6c/0xc0
[ 0.767914] driver_attach+0x20/0x30
[ 0.767919] bus_add_driver+0x140/0x1f0
[ 0.767925] driver_register+0x60/0x110
[ 0.767930] __platform_driver_register+0x44/0x50
[ 0.767938] sdma_driver_init+0x18/0x20
[ 0.767944] do_one_initcall+0x50/0x190
[ 0.767950] kernel_init_freeable+0x1cc/0x23c
[ 0.767958] kernel_init+0x10/0x100
[ 0.767963] ret_from_fork+0x10/0x18
[ 0.767972] ---[ end trace 796b8d949d96f5f6 ]---


Anson,

> Which board did you try? I just run it on i.MX8MN-EVK board, no such failure:
I have a board from Beacon EmbeddedWorks based on the i.MX8MN which is
nearly identical to the i.MX8MM which doesn't exhibit any of these
errors.

I tried Fabio's suggestion of switching the version of ATF which did
fix the Bluetooth communication errors I was getting, but I didn't
show them before.

Unfortunately, I don't have the i.MX8MN-EVK right now, I'm working on
trying to get one.

Can I ask which version of U-Boot and ATF you're using? I am
wondering if I need to update something else.

adam
>
> root@imx8mnevk:~# uname -a
> Linux imx8mnevk 5.6.0-rc7 #621 SMP PREEMPT Sat Mar 28 19:56:30 CST 2020 aarch64 aarch64 aarch64 GNU/Linux
> root@imx8mnevk:~# dmesg | grep fail
> [ 0.719353] imx-sdma 302b0000.dma-controller: Direct firmware load for imx/sdma/sdma-imx7d.bin failed with error -2
> [ 0.941304] calling net_failover_init+0x0/0x8 @ 1
> [ 0.941310] initcall net_failover_init+0x0/0x8 returned 0 after 0 usecs
> [ 1.135885] calling failover_init+0x0/0x24 @ 1
> [ 1.135897] initcall failover_init+0x0/0x24 returned 0 after 6 usecs
> root@imx8mnevk:~#
>
> Thanks,
> Anson