Re: New branch 5.4-2.1.x-imx for linux-fslc


Andrey Zhizhikin
 

On Mon, Aug 10, 2020 at 5:33 PM Philippe Schenker
<philippe.schenker@...> wrote:

On Mon, 2020-08-10 at 16:10 +0200, Andrey Zhizhikin wrote:
Hey Philippe,

On Mon, Aug 10, 2020 at 1:52 PM Philippe Schenker
<philippe.schenker@...> wrote:
On Mon, 2020-08-10 at 12:42 +0200, Andrey Zhizhikin wrote:
Hello Philippe,

On Mon, Aug 10, 2020 at 12:01 PM Philippe Schenker via
lists.yoctoproject.org
<philippe.schenker=toradex.com@...> wrote:
Hi,

Toradex is currently working on integrating the new NXP release
'L5.4.24_2.1.0'. For this we created a new kernel branch '5.4-
2.1.x-
imx'
based on NXP's kernel 'imx_5.4.24_2.1.0'.
We already merged patches from stable linux 5.4.47 into '5.4-
2.1.x-
imx'.
This is great news! I was half the way of working on the same
update,
but now since you have the merge done - I can take your version
instead.

@Otavio: I sincerely ask you if you could place the branch '5.4-
2.1.x-
imx' that resides currently in my private github account:

https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fphilschenker%2Flinux-fslc%2Ftree%2F5.4-2.1.x-imx&;data=01%7C01%7Cphilippe.schenker%40toradex.com%7C1b2edaea486b43f0d2bf08d83d1a29be%7Cd99958660d9b42518315093f062abab4%7C0&amp;sdata=BZDTVKY%2BQJDwIgsBjAeRshdTw2i7Ksh0RjGtw92ZZHw%3D&amp;reserved=0
I'll grab this one to test on i.MX8M Mini EVK now and try it out.
I've tried to build the branch from your repo with latest master of
meta-freescale, and saw couple of issue with imx8mmevk machine:

1. imx-gpu-sdk recipe fails to build, as it requires the header which
is most probably missing in the kernel:
make: *** No rule to make target
'/development/projects/master/build-output/work/cortexa53-crypto-
mx8mm-fsl-linux/imx-gpu-sdk/5.0.2-r0/recipe-
sysroot/usr/include/bits/sys_errlist.h',
needed by
'build/Yocto/obj/Release/source/FslBase/Bits/ByteArrayUtil.o'.
Stop.
I guess any user-space stuff need updating to versions that NXP provides
with BSP 'L5.4.24_2.1.0'.

OE-core updated glibc which is the provider of 'sys_errlist.h' so maybe
that is the reason for build failure?
Correct! My bad: I did a pull of OE-Core and then your Kernel branch,
which I should not have been doing in the first place. This issue is
not from Kernel, it is a pure glibc one. Thanks for pointing it out!



2. Kernel panics on the startup, there is something related to FEC
driver:
[ 0.994893] Unable to handle kernel paging request at virtual
address 0000000000023779
[ 1.002814] Mem abort info:
[ 1.005614] ESR = 0x96000004
[ 1.008668] EC = 0x25: DABT (current EL), IL = 32 bits
[ 1.013983] SET = 0, FnV = 0
[ 1.017040] EA = 0, S1PTW = 0
[ 1.020178] Data abort info:
[ 1.023062] ISV = 0, ISS = 0x00000004
[ 1.026901] CM = 0, WnR = 0
[ 1.029872] [0000000000023779] user address but active_mm is
swapper
[ 1.036262] Internal error: Oops: 96000004 [#1] PREEMPT SMP
[ 1.041833] Modules linked in:
[ 1.044891] CPU: 2 PID: 1 Comm: swapper/0 Not tainted
5.4.47+g1310c126dd1e #1
[ 1.052022] Hardware name: FSL i.MX8MM EVK board (DT)
[ 1.057073] pstate: 80000005 (Nzcv daif -PAN -UAO)
[ 1.061868] pc : fec_probe+0x280/0x1340
[ 1.065703] lr : fec_probe+0x80/0x1340
[ 1.069449] sp : ffff80001003baf0
[ 1.072761] x29: ffff80001003baf0 x28: 0000000000000000
[ 1.078072] x27: 0000000000000000 x26: ffff80001114d9b8
[ 1.083383] x25: 0000000000000000 x24: ffff000076090000
[ 1.088694] x23: ffff00007dc03bd8 x22: ffff000076404c10
[ 1.094005] x21: ffff000076404c00 x20: ffff0000762f8000
[ 1.099316] x19: ffff0000762f87c0 x18: 0000000000000020
[ 1.104626] x17: 0000000000000001 x16: 0000000000000019
[ 1.109937] x15: ffff000076090470 x14: 0000000000000000
[ 1.115248] x13: ffff000076090000 x12: 0000000000000000
[ 1.120559] x11: 0101010101010101 x10: 7f7f7f7f7f7f7f7f
[ 1.125870] x9 : 49fffeff06fefeff x8 : 7f7f7f7f7f7f7f7f
[ 1.131180] x7 : 01fefefefefefeff x6 : 8080808080808000
[ 1.136491] x5 : 0080808080808080 x4 : 0000000000000000
[ 1.141802] x3 : ffff80001114ea48 x2 : 0000000000000000
[ 1.147113] x1 : ffff000076090000 x0 : 0000000000023779
[ 1.152424] Call trace:
[ 1.154871] fec_probe+0x280/0x1340
[ 1.158361] platform_drv_probe+0x50/0xa0
[ 1.162371] really_probe+0xd8/0x410
[ 1.165946] driver_probe_device+0x54/0xe4
[ 1.170042] device_driver_attach+0xb4/0xc0
[ 1.174225] __driver_attach+0x80/0x114
[ 1.178060] bus_for_each_dev+0x6c/0xbc
[ 1.181895] driver_attach+0x20/0x30
[ 1.185469] bus_add_driver+0xfc/0x1e0
[ 1.189218] driver_register+0x74/0x120
[ 1.193052] __platform_driver_register+0x44/0x50
[ 1.197756] fec_driver_init+0x18/0x20
[ 1.201506] do_one_initcall+0x50/0x190
[ 1.205343] kernel_init_freeable+0x194/0x22c
[ 1.209700] kernel_init+0x10/0x100
[ 1.213188] ret_from_fork+0x10/0x18
[ 1.216765] Code: 2a1303e2 b940afe1 b900b3f3 17ffff75 (b9400000)
[ 1.222866] ---[ end trace 31a90d201ff67100 ]---
[ 1.227505] Kernel panic - not syncing: Attempted to kill init!
exitcode=0x0000000b
[ 1.235161] SMP: stopping secondary CPUs
[ 1.239085] Kernel Offset: disabled
[ 1.242572] CPU features: 0x0002,2000200c
[ 1.246579] Memory Limit: none
[ 1.249634] ---[ end Kernel panic - not syncing: Attempted to kill
init! exitcode=0x0000000b ]---
Thanks for pointing this out, I could reproduce the issue and checked.
There were still two commits missing. One revert that we believe is not
applicable to downstream fec_main.c
This one also solved the issue. The other IPU commit was also missing.
Now it works on our side. Can you confirm?
Yeap, Kernel build off commit 1e10771673463a332a7e477fcba0b9488ec5362b
boots fine on i.MX8M Mini EVK. I haven't verified whether graphics and
multimedia are OK, but in general at this state this merge is
absolutely fine!

I believe you can make a PR in https://github.com/Freescale/linux-fslc
for Otavio to have a look at it.

With that said:
Tested-By: Andrey Zhizhikin <andrey.z@...>


Philippe


Have you ported the patch [1] from upstream? Without it - the
latest
master build would fail (it is needed for binutils-2.35).
Hi Andrey,

We were building binutils-2.34 so didn't notice this issue. I've
cherry-
picked the patch you mentioned.
That's great, I've synced up the tree to your latest commit and the
perf build build went through.

Philippe
into the repository

https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FFreescale%2Flinux-fslc&;data=01%7C01%7Cphilippe.schenker%40toradex.com%7C1b2edaea486b43f0d2bf08d83d1a29be%7Cd99958660d9b42518315093f062abab4%7C0&amp;sdata=qkHhXyQfUuvj1C9u3FbPaqrmx6TsszVHpiRi9azUyR0%3D&amp;reserved=0

Thanks and best regards,
Philippe
[1]:
https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Ftorvalds%2Flinux.git%2Fcommit%2F%3Fid%3D39efdd94e314336f4acbac4c07e0f37bdc3bef71&;data=01%7C01%7Cphilippe.schenker%40toradex.com%7C1b2edaea486b43f0d2bf08d83d1a29be%7Cd99958660d9b42518315093f062abab4%7C0&amp;sdata=gDSV0ochz6GpX1DQ6EU%2Bn6BtpvDVBNbgPkWGWEqNegY%3D&amp;reserved=0


--
Regards,
Andrey.

Join meta-freescale@lists.yoctoproject.org to automatically receive all group messages.