Message ID | 1522407312-16345-1-git-send-email-bryan.odonoghue@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | configs: warp7: Fix CAAM on boot with tip-of-tree | expand |
Hi Bryan, On Fri, Mar 30, 2018 at 7:55 AM, Bryan O'Donoghue <bryan.odonoghue@linaro.org> wrote: > Booting the following image with tip-of-tree we get a CAAM DECO error (and > subsequent crash due to a kernel bug in 4.1). For booting NXP based kernel you should use warp7_secure_defconfig instead, which selects CONFIG_ARMV7_BOOT_SEC_DEFAULT=y. Please see commit 375d199114c1 ("warp7: Add a secure mode target"). Also if using CONFIG_ARMV7_BOOT_SEC_DEFAULT=y is safe for booting both mainline and NXP kernels then I think you are patch is OK and we can get rid of warp7_secure_defconfig. I don't have access to my warp7 board at the moment to give it a try. Please confirm that this patch can successfully boot both mainline and NXP kernels. Thanks
On 30/03/18 15:53, Fabio Estevam wrote: > Hi Bryan, > > On Fri, Mar 30, 2018 at 7:55 AM, Bryan O'Donoghue > <bryan.odonoghue@linaro.org> wrote: >> Booting the following image with tip-of-tree we get a CAAM DECO error (and >> subsequent crash due to a kernel bug in 4.1). > > For booting NXP based kernel you should use warp7_secure_defconfig > instead, which selects CONFIG_ARMV7_BOOT_SEC_DEFAULT=y. > > Please see commit 375d199114c1 ("warp7: Add a secure mode target"). > > Also if using CONFIG_ARMV7_BOOT_SEC_DEFAULT=y is safe for booting both > mainline and NXP kernels then I think you are patch is OK and we can > get rid of warp7_secure_defconfig. > > I don't have access to my warp7 board at the moment to give it a try. > > Please confirm that this patch can successfully boot both mainline and > NXP kernels. > > Thanks > Hi Fabio, I can confirm I can boot the NXP 4.1, Linaro and a mainline 4.16-rcx kernels with CONFIG_ARMV7_BOOT_SEC_DEFAULT=y I'll reconfirm to be sure and redo this patch CONFIG_ARMV7_BOOT_SEC_DEFAULT=y and subtract warp7_secure_defconfig
diff --git a/configs/warp7_defconfig b/configs/warp7_defconfig index 29c4512..228f7d9 100644 --- a/configs/warp7_defconfig +++ b/configs/warp7_defconfig @@ -2,6 +2,7 @@ CONFIG_ARM=y CONFIG_ARCH_MX7=y CONFIG_SYS_TEXT_BASE=0x87800000 CONFIG_TARGET_WARP7=y +CONFIG_ARMV7_BOOT_SEC_DEFAULT=y # CONFIG_ARMV7_VIRT is not set CONFIG_IMX_RDC=y CONFIG_IMX_BOOTAUX=y
Booting the following image with tip-of-tree we get a CAAM DECO error (and subsequent crash due to a kernel bug in 4.1). http://freescale.github.io/#download -> BoardsWaRPboard community - WaRP - Wearable Reference PlatformFSL Community BSP 2.3fsl-image-multimediawayland Image: fsl-image-multimedia-imx7s-warp-20180323-90.rootfs.sdcard Error: caam 30900000.caam: Entropy delay = 3200 caam 30900000.caam: failed to acquire DECO 0 <snip> caam 30900000.caam: failed to acquire DECO 0 caam 30900000.caam: Entropy delay = 12400 caam 30900000.caam: failed to acquire DECO 0 caam 30900000.caam: failed to instantiate RNG ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at /home/jenkins/workspace/fsl-community-bsp-pyro_xwayland_2/build/tmp/work-shared/imx7s-warp/kernel-source/mm/vmalloc.c:1465 caam_remove+0x6) Trying to vfree() nonexistent vm area (88047000) Modules linked in: CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.1.36-4.1-1.0.x-imx-warp7+ga543d1b #1 Hardware name: Freescale i.MX7 Dual (Device Tree) [<80015d54>] (unwind_backtrace) from [<80012688>] (show_stack+0x10/0x14) [<80012688>] (show_stack) from [<8076e810>] (dump_stack+0x78/0x8c) [<8076e810>] (dump_stack) from [<800346a0>] (warn_slowpath_common+0x80/0xb0) [<800346a0>] (warn_slowpath_common) from [<80034700>] (warn_slowpath_fmt+0x30/0x40) [<80034700>] (warn_slowpath_fmt) from [<8054c278>] (caam_remove+0x6c/0x3f4) [<8054c278>] (caam_remove) from [<8054ce74>] (caam_probe+0x874/0xfa8) [<8054ce74>] (caam_probe) from [<80382a7c>] (platform_drv_probe+0x48/0xa4) [<80382a7c>] (platform_drv_probe) from [<80381328>] (driver_probe_device+0x174/0x2a8) [<80381328>] (driver_probe_device) from [<8038152c>] (__driver_attach+0x8c/0x90) [<8038152c>] (__driver_attach) from [<8037f9d4>] (bus_for_each_dev+0x68/0x9c) [<8037f9d4>] (bus_for_each_dev) from [<80380a68>] (bus_add_driver+0xf4/0x1e8) [<80380a68>] (bus_add_driver) from [<80381b38>] (driver_register+0x78/0xf4) [<80381b38>] (driver_register) from [<80009738>] (do_one_initcall+0x8c/0x1d0) [<80009738>] (do_one_initcall) from [<80a66dac>] (kernel_init_freeable+0x140/0x1d0) [<80a66dac>] (kernel_init_freeable) from [<8076aa38>] (kernel_init+0x8/0xe8) [<8076aa38>] (kernel_init) from [<8000f468>] (ret_from_fork+0x14/0x2c) ---[ end trace d5f941204ed8cb28 ]--- caam: probe of 30900000.caam failed with error -11 Unable to handle kernel NULL pointer dereference at virtual address 00000004 pgd = 80004000 [00000004] *pgd=00000000 Internal error: Oops: 805 [#1] PREEMPT SMP ARM <snip> [<8055cdf8>] (caam_sm_startup) from [<80aa83c8>] (caam_sm_init+0x50/0x58) [<80aa83c8>] (caam_sm_init) from [<80009738>] (do_one_initcall+0x8c/0x1d0) [<80009738>] (do_one_initcall) from [<80a66dac>] (kernel_init_freeable+0x140/0x1d0) [<80a66dac>] (kernel_init_freeable) from [<8076aa38>] (kernel_init+0x8/0xe8) [<8076aa38>] (kernel_init) from [<8000f468>] (ret_from_fork+0x14/0x2c) Code: e59d300c e2832010 e5843008 e5834068 (e58a2004) ---[ end trace d5f941204ed8cb29 ]--- Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b Fix: Enable the CAAM correctly by setting CONFIG_ARMV7_BOOT_SEC_DEFAULT=y in the upstream defconfig. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Breno Lima <breno.lima@nxp.com> --- configs/warp7_defconfig | 1 + 1 file changed, 1 insertion(+)