[PATCH v11 00/14] Add CAAM driver model support

Gaurav Jain gaurav.jain at nxp.com
Thu Mar 24 07:20:24 CET 2022


This patchset adds the support for following:
1) CAAM Driver model for all i.MX, layerscape, PPC platforms.
2) Added crypto node in device tree files.
3) fix build issue for mx6sabre: Remove SPL DTB related configs and SPL_OF_CONTROL.

i.MX platforms:
i.MX6, i.MX7, i.MX7ULP, i.MX8MM/MN/MP/MQ, i.MX8QM/QXP

Layerscape platforms:
LS1021, LS1012, LS1028, LS1043, LS1046, LS1088, LS2088, LX2160, LX2162

Powerpc platforms:
P3041, P4080, P5040, P2041, T1024, T1042, T2080, T4240

changes since v10:
 - rebase to latest master
 - iMX8M: removed JR0 disablement code for imx8m.

changes since v9:
 - added IS_ENABLED(CONFIG_FSL_CAAM) check before probing CAAM driver.
 - FSL_CAAM enablement is moved to defconfigs for layerscape, powerpc.

changes since v8:
 - rebase to latest master
 - removed patch "crypto/fsl: Improve hwrng performance in kernel".
 - moved FSL_CAAM config to board defconfig for Layerscape platforms.
 - moved MISC config select to "config FSL_CAAM" as "select MISC if DM".

changes since v7:
 - rebase to latest master
 - corrected the order of include files as per coding style in jr.c.
   https://www.denx.de/wiki/U-Boot/CodingStyle
 - added brackets around #defines for -ve number in jr.h
 - added comments for struct caam_regs in jr.h

changes since v6:
 - rebase to latest master
 - added caam_jr_ioctl() operation which calls run_descriptor_jr().
 - removed CONFIG_ARCH_IMX8 config from JR driver.
 - removed FSL_BLOB config

changes since v5:
 - rebase to latest master
 - updated BIT() macro for JRDID in drivers/crypto/fsl/jr.h
 - removed auto select FSL_BLOB from CMD_BLOB config.
 - removed patch for blob key encryption key(bkek), random number generation.
 - updated patch description for improving hwrng performance in kernel.
 - removed sec_init() from kontron/sl28.
 - for LS1028A architecture, enable CAAM only for LS1028AQDS and LS1028ARDB.

changes since v4:
 - rebase to latest master
 - updated caam_jr_probe() with livetree APIs.
 - imx8m: moved jr0 disable code to *-uboot.dtsi files.

changes since v3:
 - rebase to latest master
 - fixed build error when new file arch/powerpc/include/asm/u-boot-ppc.h is
   included from assembly files.
 - removed arch/arm/dts/fsl-ls1028a.dtsi as it is conflicting with the series
   https://lore.kernel.org/u-boot/20211013161427.612033-1-michael@walle.cc/

Gaurav Jain (13):
  crypto/fsl: Add support for CAAM Job ring driver model
  i.MX8M: crypto: updated device tree for supporting DM in SPL
  crypto/fsl: i.MX8M: Enable Job ring driver model.
  i.MX6: Enable Job ring driver model.
  i.MX7: Enable Job ring driver model.
  i.MX7ULP: Enable Job ring driver model.
  i.MX8: Add crypto node in device tree
  crypto/fsl: i.MX8: Enable Job ring driver model.
  Layerscape: Add crypto node in device tree
  Layerscape: Enable Job ring driver model.
  PPC: Add crypto node in device tree
  PPC: Enable Job ring driver model.
  update CAAM MAINTAINER

Ye Li (1):
  mx6sabre: Remove unnecessary SPL configs

 MAINTAINERS                                   |   6 +
 arch/arm/Kconfig                              |   9 +-
 arch/arm/cpu/armv7/ls102xa/cpu.c              |  18 +
 arch/arm/cpu/armv8/fsl-layerscape/cpu.c       |  11 +-
 arch/arm/dts/fsl-imx8dx.dtsi                  |  61 ++-
 arch/arm/dts/fsl-imx8qm-mek-u-boot.dtsi       |  34 +-
 arch/arm/dts/fsl-imx8qm.dtsi                  |  61 ++-
 arch/arm/dts/fsl-imx8qxp-mek-u-boot.dtsi      |  34 +-
 arch/arm/dts/fsl-ls1012a.dtsi                 |  46 ++-
 arch/arm/dts/fsl-ls1043a.dtsi                 |  45 ++-
 arch/arm/dts/fsl-ls1046a.dtsi                 |  44 +++
 arch/arm/dts/fsl-ls1088a.dtsi                 |  39 ++
 arch/arm/dts/fsl-ls2080a.dtsi                 |  39 ++
 arch/arm/dts/fsl-lx2160a.dtsi                 |  41 +-
 arch/arm/dts/imx7ulp.dtsi                     |  24 ++
 arch/arm/dts/imx8mm-evk-u-boot.dtsi           |  18 +-
 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi      |  18 +-
 arch/arm/dts/imx8mp-evk-u-boot.dtsi           |  18 +-
 arch/arm/dts/ls1021a.dtsi                     |  40 ++
 arch/arm/include/asm/arch-imx8/imx-regs.h     |   5 +-
 arch/arm/mach-imx/cmd_dek.c                   |   1 +
 arch/arm/mach-imx/imx8/Kconfig                |   7 +
 arch/arm/mach-imx/imx8/cpu.c                  |  18 +-
 arch/arm/mach-imx/imx8m/Kconfig               |  13 +
 arch/arm/mach-imx/imx8m/soc.c                 |  11 +-
 arch/arm/mach-imx/mx6/Kconfig                 |  10 +
 arch/arm/mach-imx/mx6/soc.c                   |  13 +-
 arch/arm/mach-imx/mx7/Kconfig                 |   1 +
 arch/arm/mach-imx/mx7/soc.c                   |  12 +-
 arch/arm/mach-imx/mx7ulp/Kconfig              |   2 +
 arch/arm/mach-imx/mx7ulp/soc.c                |  18 +
 arch/powerpc/cpu/mpc85xx/cpu_init.c           |  19 +-
 arch/powerpc/dts/p2041si-post.dtsi            |   1 +
 arch/powerpc/dts/p3041si-post.dtsi            |   1 +
 arch/powerpc/dts/p4080si-post.dtsi            |   1 +
 arch/powerpc/dts/p5040si-post.dtsi            |   1 +
 arch/powerpc/dts/qoriq-sec4.0-0.dtsi          |  74 ++++
 arch/powerpc/dts/qoriq-sec4.2-0.dtsi          |  83 ++++
 arch/powerpc/dts/qoriq-sec5.2-0.dtsi          |  92 +++++
 arch/powerpc/dts/t1023si-post.dtsi            |   1 +
 arch/powerpc/dts/t1042si-post.dtsi            |   1 +
 arch/powerpc/dts/t2080si-post.dtsi            |   1 +
 arch/powerpc/dts/t4240si-post.dtsi            |   1 +
 arch/powerpc/include/asm/u-boot-ppc.h         |  17 +
 arch/powerpc/include/asm/u-boot.h             |   1 +
 board/freescale/imx8mm_evk/spl.c              |  10 +-
 board/freescale/imx8mn_evk/spl.c              |   9 +-
 board/freescale/imx8mp_evk/spl.c              |  14 +-
 board/freescale/imx8mq_evk/spl.c              |   8 +-
 board/freescale/imx8qm_mek/spl.c              |   6 +-
 board/freescale/imx8qxp_mek/spl.c             |   6 +-
 board/freescale/ls1012afrdm/ls1012afrdm.c     |   7 +-
 board/freescale/ls1012aqds/ls1012aqds.c       |   6 +-
 board/freescale/ls1012ardb/ls1012ardb.c       |   6 +-
 board/freescale/ls1021aiot/ls1021aiot.c       |   6 +-
 board/freescale/ls1021aqds/ls1021aqds.c       |   6 +-
 board/freescale/ls1021atsn/ls1021atsn.c       |   7 +-
 board/freescale/ls1021atwr/ls1021atwr.c       |   8 +-
 board/freescale/ls1028a/ls1028a.c             |   6 +-
 board/freescale/ls1043ardb/ls1043ardb.c       |   6 +-
 board/freescale/ls1046afrwy/ls1046afrwy.c     |   7 +-
 board/freescale/ls1046aqds/ls1046aqds.c       |   7 +-
 board/freescale/ls1046ardb/ls1046ardb.c       |   6 +-
 board/freescale/ls1088a/ls1088a.c             |   4 -
 board/freescale/ls2080aqds/ls2080aqds.c       |   6 +-
 board/freescale/ls2080ardb/ls2080ardb.c       |   9 +-
 board/freescale/lx2160a/lx2160a.c             |   5 -
 board/kontron/sl28/sl28.c                     |   3 -
 configs/P2041RDB_NAND_defconfig               |   1 +
 configs/P2041RDB_SDCARD_defconfig             |   1 +
 configs/P2041RDB_SPIFLASH_defconfig           |   1 +
 configs/P2041RDB_defconfig                    |   1 +
 configs/P3041DS_NAND_defconfig                |   1 +
 configs/P3041DS_SDCARD_defconfig              |   1 +
 configs/P3041DS_SPIFLASH_defconfig            |   1 +
 configs/P3041DS_defconfig                     |   1 +
 configs/P4080DS_SDCARD_defconfig              |   1 +
 configs/P4080DS_SPIFLASH_defconfig            |   1 +
 configs/P4080DS_defconfig                     |   1 +
 configs/P5040DS_NAND_defconfig                |   1 +
 configs/P5040DS_SDCARD_defconfig              |   1 +
 configs/P5040DS_SPIFLASH_defconfig            |   1 +
 configs/P5040DS_defconfig                     |   1 +
 configs/T1024RDB_NAND_defconfig               |   1 +
 configs/T1024RDB_SDCARD_defconfig             |   1 +
 configs/T1024RDB_SPIFLASH_defconfig           |   1 +
 configs/T1024RDB_defconfig                    |   1 +
 configs/T1042D4RDB_NAND_defconfig             |   1 +
 configs/T1042D4RDB_SDCARD_defconfig           |   1 +
 configs/T1042D4RDB_SPIFLASH_defconfig         |   1 +
 configs/T1042D4RDB_defconfig                  |   1 +
 configs/T2080QDS_NAND_defconfig               |   1 +
 configs/T2080QDS_SDCARD_defconfig             |   1 +
 configs/T2080QDS_SPIFLASH_defconfig           |   1 +
 configs/T2080QDS_SRIO_PCIE_BOOT_defconfig     |   1 +
 configs/T2080QDS_defconfig                    |   1 +
 configs/T2080RDB_NAND_defconfig               |   1 +
 configs/T2080RDB_SDCARD_defconfig             |   1 +
 configs/T2080RDB_SPIFLASH_defconfig           |   1 +
 configs/T2080RDB_defconfig                    |   1 +
 configs/T2080RDB_revD_NAND_defconfig          |   1 +
 configs/T2080RDB_revD_SDCARD_defconfig        |   1 +
 configs/T2080RDB_revD_SPIFLASH_defconfig      |   1 +
 configs/T2080RDB_revD_defconfig               |   1 +
 configs/T4240RDB_SDCARD_defconfig             |   1 +
 configs/T4240RDB_defconfig                    |   1 +
 configs/ls1021aiot_qspi_defconfig             |   1 +
 configs/ls1021aiot_sdcard_defconfig           |   1 +
 configs/ls1021aqds_ddr4_nor_defconfig         |   1 +
 configs/ls1021aqds_ddr4_nor_lpuart_defconfig  |   1 +
 configs/ls1021aqds_nand_defconfig             |   1 +
 configs/ls1021aqds_nor_defconfig              |   1 +
 configs/ls1021aqds_nor_lpuart_defconfig       |   1 +
 configs/ls1021aqds_qspi_defconfig             |   1 +
 configs/ls1021aqds_sdcard_ifc_defconfig       |   1 +
 configs/ls1021aqds_sdcard_qspi_defconfig      |   1 +
 configs/ls1021atsn_qspi_defconfig             |   1 +
 configs/ls1021atsn_sdcard_defconfig           |   1 +
 configs/ls1021atwr_nor_defconfig              |   1 +
 configs/ls1021atwr_nor_lpuart_defconfig       |   1 +
 configs/ls1021atwr_qspi_defconfig             |   1 +
 ...s1021atwr_sdcard_ifc_SECURE_BOOT_defconfig |   1 +
 configs/ls1021atwr_sdcard_ifc_defconfig       |   1 +
 configs/ls1021atwr_sdcard_qspi_defconfig      |   1 +
 configs/ls1043aqds_defconfig                  |   1 +
 configs/ls1043aqds_lpuart_defconfig           |   1 +
 configs/ls1043aqds_nand_defconfig             |   1 +
 configs/ls1043aqds_nor_ddr3_defconfig         |   1 +
 configs/ls1043aqds_qspi_defconfig             |   1 +
 configs/ls1043aqds_sdcard_ifc_defconfig       |   1 +
 configs/ls1043aqds_sdcard_qspi_defconfig      |   1 +
 configs/ls1043aqds_tfa_defconfig              |   1 +
 configs/ls1043ardb_defconfig                  |   1 +
 configs/ls1043ardb_nand_defconfig             |   1 +
 configs/ls1043ardb_sdcard_defconfig           |   1 +
 configs/ls1043ardb_tfa_defconfig              |   1 +
 configs/ls1046afrwy_tfa_defconfig             |   1 +
 configs/ls1046aqds_defconfig                  |   1 +
 configs/ls1046aqds_lpuart_defconfig           |   1 +
 configs/ls1046aqds_nand_defconfig             |   1 +
 configs/ls1046aqds_qspi_defconfig             |   1 +
 configs/ls1046aqds_sdcard_ifc_defconfig       |   1 +
 configs/ls1046aqds_sdcard_qspi_defconfig      |   1 +
 configs/ls1046aqds_tfa_defconfig              |   1 +
 configs/ls1046ardb_emmc_defconfig             |   1 +
 configs/ls1046ardb_qspi_defconfig             |   1 +
 configs/ls1046ardb_qspi_spl_defconfig         |   1 +
 configs/ls1046ardb_sdcard_defconfig           |   1 +
 configs/ls1046ardb_tfa_defconfig              |   1 +
 configs/mx6sabreauto_defconfig                |   2 -
 configs/mx6sabresd_defconfig                  |   4 -
 drivers/crypto/fsl/Kconfig                    |   3 +-
 drivers/crypto/fsl/jr.c                       | 364 ++++++++++++------
 drivers/crypto/fsl/jr.h                       |  31 +-
 include/fsl_sec.h                             |  12 +-
 155 files changed, 1413 insertions(+), 253 deletions(-)
 create mode 100644 arch/powerpc/dts/qoriq-sec4.0-0.dtsi
 create mode 100644 arch/powerpc/dts/qoriq-sec4.2-0.dtsi
 create mode 100644 arch/powerpc/dts/qoriq-sec5.2-0.dtsi
 create mode 100644 arch/powerpc/include/asm/u-boot-ppc.h

-- 
2.17.1



More information about the U-Boot mailing list