Message ID | 20190611122903.27950-1-igor.opaniuk@gmail.com |
---|---|
State | Awaiting Upstream |
Delegated to: | Stefano Babic |
Headers | show |
Series | [U-Boot,1/1] colibri_imx7_emmc: enable CONFIG_ARMV7_BOOT_SEC_DEFAULT | expand |
On 11.06.2019 14:29, Igor Opaniuk wrote: > From: Igor Opaniuk <igor.opaniuk@toradex.com> > > Enable CONFIG_ARMV7_BOOT_SEC_DEFAULT by default to avoid a kernel > crash when booting NXP linux kernels in non-secure world, > when job ring device allocation is done by CAAM hw accelerator driver: I rather prefer if mainline U-Boot prefers what makes sense for mainline kernel (and that is non-secure). Booting in secure mode can be also done using bootm_boot_mode environment variable. -- Stefan > > caam 30900000.caam: job rings = 3, qi = 0 > caam_jr 30901000.jr0: failed to flush job ring 0 > caam_jr: probe of 30901000.jr0 failed with error -5 > caam_jr 30902000.jr1: failed to flush job ring 1 > caam_jr: probe of 30902000.jr1 failed with error -5 > caam_jr 30903000.jr2: failed to flush job ring 2 > caam_jr: probe of 30903000.jr2 failed with error -5 > caam algorithms registered in /proc/crypto > Job Ring Device allocation for transform failed > caam 30900000.caam: caam pkc algorithms registered in /proc/crypto > Unable to handle kernel NULL pointer dereference at virtual address 00000010 > pgd = c0004000 > [00000010] *pgd=00000000 > Internal error: Oops: 5 [#1] PREEMPT SMP ARM > Modules linked in: > CPU: 0 PID: 1 Comm: swapper/0 Tainted: > Hardware name: Freescale i.MX7 Dual (Device Tree) > task: ec0d8000 task.stack: ec0ce000 > PC is at caam_sm_startup+0x3f8/0x4f4 > > Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> > --- > configs/colibri_imx7_emmc_defconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/configs/colibri_imx7_emmc_defconfig > b/configs/colibri_imx7_emmc_defconfig > index 2fa9f1f532..0ce56a8df9 100644 > --- a/configs/colibri_imx7_emmc_defconfig > +++ b/configs/colibri_imx7_emmc_defconfig > @@ -76,3 +76,4 @@ CONFIG_FASTBOOT_CMD_OEM_FORMAT=y > CONFIG_USB_FUNCTION_FASTBOOT=y > CONFIG_FASTBOOT_BUF_ADDR=0x82000000 > CONFIG_FASTBOOT_BUF_SIZE=0x10000000 > +CONFIG_ARMV7_BOOT_SEC_DEFAULT=y
Hi Stefan, On Tue, Jun 11, 2019 at 3:52 PM Stefan Agner <stefan@agner.ch> wrote: > > On 11.06.2019 14:29, Igor Opaniuk wrote: > > From: Igor Opaniuk <igor.opaniuk@toradex.com> > > > > Enable CONFIG_ARMV7_BOOT_SEC_DEFAULT by default to avoid a kernel > > crash when booting NXP linux kernels in non-secure world, > > when job ring device allocation is done by CAAM hw accelerator driver: > > I rather prefer if mainline U-Boot prefers what makes sense for mainline > kernel (and that is non-secure). > > Booting in secure mode can be also done using bootm_boot_mode Just tested with env var (wasn't aware about this var) - it works also, thanks for the suggestion. Testing was done with the default pre-built NXP kernel from Kynetics AOSP package for Colibri iMX7, probably I'll just add a command for setting a proper value for bootm_boot_mode before parsing/booting stuff from Android Boot Image (where Kynetics people usually are putting NXP kernels inside); So just ignore this patch, thanks! > environment variable. > > -- > Stefan > > > > > caam 30900000.caam: job rings = 3, qi = 0 > > caam_jr 30901000.jr0: failed to flush job ring 0 > > caam_jr: probe of 30901000.jr0 failed with error -5 > > caam_jr 30902000.jr1: failed to flush job ring 1 > > caam_jr: probe of 30902000.jr1 failed with error -5 > > caam_jr 30903000.jr2: failed to flush job ring 2 > > caam_jr: probe of 30903000.jr2 failed with error -5 > > caam algorithms registered in /proc/crypto > > Job Ring Device allocation for transform failed > > caam 30900000.caam: caam pkc algorithms registered in /proc/crypto > > Unable to handle kernel NULL pointer dereference at virtual address 00000010 > > pgd = c0004000 > > [00000010] *pgd=00000000 > > Internal error: Oops: 5 [#1] PREEMPT SMP ARM > > Modules linked in: > > CPU: 0 PID: 1 Comm: swapper/0 Tainted: > > Hardware name: Freescale i.MX7 Dual (Device Tree) > > task: ec0d8000 task.stack: ec0ce000 > > PC is at caam_sm_startup+0x3f8/0x4f4 > > > > Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> > > --- > > configs/colibri_imx7_emmc_defconfig | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/configs/colibri_imx7_emmc_defconfig > > b/configs/colibri_imx7_emmc_defconfig > > index 2fa9f1f532..0ce56a8df9 100644 > > --- a/configs/colibri_imx7_emmc_defconfig > > +++ b/configs/colibri_imx7_emmc_defconfig > > @@ -76,3 +76,4 @@ CONFIG_FASTBOOT_CMD_OEM_FORMAT=y > > CONFIG_USB_FUNCTION_FASTBOOT=y > > CONFIG_FASTBOOT_BUF_ADDR=0x82000000 > > CONFIG_FASTBOOT_BUF_SIZE=0x10000000 > > +CONFIG_ARMV7_BOOT_SEC_DEFAULT=y
> From: Igor Opaniuk <igor.opaniuk@toradex.com> > Enable CONFIG_ARMV7_BOOT_SEC_DEFAULT by default to avoid a kernel > crash when booting NXP linux kernels in non-secure world, > when job ring device allocation is done by CAAM hw accelerator driver: > caam 30900000.caam: job rings = 3, qi = 0 > caam_jr 30901000.jr0: failed to flush job ring 0 > caam_jr: probe of 30901000.jr0 failed with error -5 > caam_jr 30902000.jr1: failed to flush job ring 1 > caam_jr: probe of 30902000.jr1 failed with error -5 > caam_jr 30903000.jr2: failed to flush job ring 2 > caam_jr: probe of 30903000.jr2 failed with error -5 > caam algorithms registered in /proc/crypto > Job Ring Device allocation for transform failed > caam 30900000.caam: caam pkc algorithms registered in /proc/crypto > Unable to handle kernel NULL pointer dereference at virtual address 00000010 > pgd = c0004000 > [00000010] *pgd=00000000 > Internal error: Oops: 5 [#1] PREEMPT SMP ARM > Modules linked in: > CPU: 0 PID: 1 Comm: swapper/0 Tainted: > Hardware name: Freescale i.MX7 Dual (Device Tree) > task: ec0d8000 task.stack: ec0ce000 > PC is at caam_sm_startup+0x3f8/0x4f4 > Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Applied to u-boot-imx, master, thanks ! Best regards, Stefano Babic
diff --git a/configs/colibri_imx7_emmc_defconfig b/configs/colibri_imx7_emmc_defconfig index 2fa9f1f532..0ce56a8df9 100644 --- a/configs/colibri_imx7_emmc_defconfig +++ b/configs/colibri_imx7_emmc_defconfig @@ -76,3 +76,4 @@ CONFIG_FASTBOOT_CMD_OEM_FORMAT=y CONFIG_USB_FUNCTION_FASTBOOT=y CONFIG_FASTBOOT_BUF_ADDR=0x82000000 CONFIG_FASTBOOT_BUF_SIZE=0x10000000 +CONFIG_ARMV7_BOOT_SEC_DEFAULT=y