[PATCH v9 00/20] imx: add i.MX95 support
Alice Guo (OSS)
alice.guo at oss.nxp.com
Fri Apr 11 10:06:43 CEST 2025
From: Alice Guo <alice.guo at nxp.com>
Changes for v9:
- remove the "firmware: scmi: smt: Interrupt communication enable" patch from
this patch-set and sent it separately
https://patchwork.ozlabs.org/project/uboot/patch/20250401075635.3802640-1-alice.guo@oss.nxp.com/
- use scmi_proto_driver_get() function to get SCMI protocol driver, which
dependents on two patches which have not been applied
https://patchwork.ozlabs.org/project/uboot/patch/20250322014444.174796-1-marex@denx.de/
https://patchwork.ozlabs.org/project/uboot/patch/20250409075352.535194-1-alice.guo@oss.nxp.com/
- query SCMI clock management protocol version in .probe() once and cache the
value in private data
- explain u32 protocols[] in struct scmi_base_discover_list_protocols_out in
commit log
- make debug prints in read_auth_image() a bit more informative
- keep the list of "config IMX8_ROMAPI" sorted
- correct spelling errors in imx95_container.txt
Signed-off-by: Alice Guo <alice.guo at nxp.com>
Alice Guo (11):
firmware: scmi: use scmi_proto_driver_get() function to get SCMI
protocol driver
pinctrl: nxp: add a pin controller driver based on SCMI pin control
protocol
firmware: scmi_agent: add SCMI pin control protocol support
clk: scmi: check the clock state/parent/rate control permissions
sandbox: add SCMI clock control permissions to sandbox
cpu: imx95: add i.MX95 support
imx: Kconfig: IMX8_ROMAPI is not configured for i.MX95
binman: add a new entry type for packing DDR PHY firmware images
tools: imx8image: add i.MX95 support
doc: imx: add document for i.MX95 Image Container Format
Makefile: add some files to CLEAN_FILES
Peng Fan (4):
scmi_protocols: add SCMI misc protocol protocol_id and message_id for
getting the ROM passover data
scmi_protocols: add SCMI Performance domain management protocol
message IDs
clk: scmi: add the command CLOCK_PARENT_SET
imx9: scmi: add i.MX95 SoC and clock related code
Ye Li (5):
scmi_protocols: update struct scmi_base_discover_list_protocols_out
spl: imx: use trampoline buffer to load images to secure region
imx9: add i.MX95 Kconfig and Makefile
imx: container: add V2X container support for i.MX95
imx95_evk: add i.MX95 19x19 EVK board basic support
Makefile | 3 +-
arch/arm/dts/imx95-19x19-evk-u-boot.dtsi | 62 ++
arch/arm/dts/imx95-u-boot.dtsi | 188 +++++
arch/arm/include/asm/arch-imx/cpu.h | 2 +
arch/arm/include/asm/arch-imx9/clock.h | 10 +
arch/arm/include/asm/arch-imx9/imx-regs.h | 6 +
arch/arm/include/asm/arch-imx9/sys_proto.h | 1 +
arch/arm/include/asm/mach-imx/sys_proto.h | 39 +
arch/arm/mach-imx/Kconfig | 2 +-
arch/arm/mach-imx/image-container.c | 119 ++-
arch/arm/mach-imx/imx9/Kconfig | 15 +
arch/arm/mach-imx/imx9/Makefile | 9 +-
arch/arm/mach-imx/imx9/scmi/Makefile | 6 +
arch/arm/mach-imx/imx9/scmi/clock.c | 70 ++
arch/arm/mach-imx/imx9/scmi/clock_scmi.c | 133 ++++
arch/arm/mach-imx/imx9/scmi/container.cfg | 10 +
arch/arm/mach-imx/imx9/scmi/imximage.cfg | 15 +
arch/arm/mach-imx/imx9/scmi/soc.c | 749 ++++++++++++++++++
arch/sandbox/include/asm/scmi_test.h | 4 +-
board/freescale/imx95_evk/Kconfig | 12 +
board/freescale/imx95_evk/MAINTAINERS | 6 +
board/freescale/imx95_evk/Makefile | 11 +
board/freescale/imx95_evk/imx95_19x19_evk.env | 91 +++
board/freescale/imx95_evk/imx95_evk.c | 36 +
board/freescale/imx95_evk/spl.c | 69 ++
common/spl/Kconfig | 6 +
common/spl/spl_imx_container.c | 41 +-
configs/imx95_19x19_evk_defconfig | 152 ++++
doc/board/nxp/imx95_evk.rst | 114 +++
doc/board/nxp/index.rst | 1 +
doc/imx/imx95_container.txt | 136 ++++
drivers/clk/clk_scmi.c | 204 ++++-
drivers/cpu/imx8_cpu.c | 2 +
drivers/firmware/scmi/base.c | 24 +-
drivers/firmware/scmi/sandbox-scmi_agent.c | 56 +-
drivers/firmware/scmi/scmi_agent-uclass.c | 34 +-
drivers/pinctrl/nxp/Kconfig | 13 +
drivers/pinctrl/nxp/Makefile | 1 +
drivers/pinctrl/nxp/pinctrl-imx-scmi.c | 162 ++++
drivers/power/domain/scmi-power-domain.c | 8 +
drivers/power/regulator/scmi_regulator.c | 8 +
drivers/reset/reset-scmi.c | 8 +
include/configs/imx95_evk.h | 24 +
include/imx8image.h | 19 +-
include/scmi_agent-uclass.h | 2 +
include/scmi_protocols.h | 104 ++-
tools/binman/entries.rst | 10 +
tools/binman/etype/nxp_header_ddrfw.py | 29 +
tools/binman/ftest.py | 11 +
tools/binman/test/346_nxp_ddrfw_imx95.dts | 24 +
tools/imx8image.c | 147 +++-
tools/imx9_image.sh | 8 +
52 files changed, 2916 insertions(+), 100 deletions(-)
create mode 100644 arch/arm/dts/imx95-19x19-evk-u-boot.dtsi
create mode 100644 arch/arm/dts/imx95-u-boot.dtsi
create mode 100644 arch/arm/mach-imx/imx9/scmi/Makefile
create mode 100644 arch/arm/mach-imx/imx9/scmi/clock.c
create mode 100644 arch/arm/mach-imx/imx9/scmi/clock_scmi.c
create mode 100644 arch/arm/mach-imx/imx9/scmi/container.cfg
create mode 100644 arch/arm/mach-imx/imx9/scmi/imximage.cfg
create mode 100644 arch/arm/mach-imx/imx9/scmi/soc.c
create mode 100644 board/freescale/imx95_evk/Kconfig
create mode 100644 board/freescale/imx95_evk/MAINTAINERS
create mode 100644 board/freescale/imx95_evk/Makefile
create mode 100644 board/freescale/imx95_evk/imx95_19x19_evk.env
create mode 100644 board/freescale/imx95_evk/imx95_evk.c
create mode 100644 board/freescale/imx95_evk/spl.c
create mode 100644 configs/imx95_19x19_evk_defconfig
create mode 100644 doc/board/nxp/imx95_evk.rst
create mode 100644 doc/imx/imx95_container.txt
create mode 100644 drivers/pinctrl/nxp/pinctrl-imx-scmi.c
create mode 100644 include/configs/imx95_evk.h
create mode 100644 tools/binman/etype/nxp_header_ddrfw.py
create mode 100644 tools/binman/test/346_nxp_ddrfw_imx95.dts
--
2.43.0
More information about the U-Boot
mailing list