diff options
| author | Tom Rini <[email protected]> | 2026-01-05 15:12:02 -0600 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2026-01-05 15:12:02 -0600 |
| commit | c344087025a4c296468a1d5aeb61078a58baa59e (patch) | |
| tree | f5a7ba04c352b3e3cb79065096ea43480f7bda2f /include | |
| parent | 127a42c7257a6ffbbd1575ed1cbaa8f5408a44b3 (diff) | |
| parent | 6cdd7597a2fbfc1572c1b0af23d3daf1cefa2de7 (diff) | |
Merge branch 'next'
Diffstat (limited to 'include')
83 files changed, 621 insertions, 730 deletions
diff --git a/include/bcd.h b/include/bcd.h index 9ecd328284e..289810b99b7 100644 --- a/include/bcd.h +++ b/include/bcd.h @@ -17,7 +17,9 @@ static inline unsigned int bcd2bin(unsigned int val) static inline unsigned int bin2bcd(unsigned int val) { - return (((val / 10) << 4) | (val % 10)); + const unsigned int t = (val * 103) >> 10; + + return (t << 4) | (val - t * 10); } #endif /* _BCD_H */ diff --git a/include/configs/ae350.h b/include/configs/ae350.h index 23e4801379d..43b1878b520 100644 --- a/include/configs/ae350.h +++ b/include/configs/ae350.h @@ -83,7 +83,6 @@ #include <config_distro_bootcmd.h> #define CFG_EXTRA_ENV_SETTINGS \ - "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ "kernel_addr_r=0x00600000\0" \ "kernel_comp_addr_r=0x04600000\0" \ diff --git a/include/configs/am335x_shc.h b/include/configs/am335x_shc.h index 55d5190b221..afbad9c2c4d 100644 --- a/include/configs/am335x_shc.h +++ b/include/configs/am335x_shc.h @@ -25,7 +25,6 @@ "loadaddr=0x80200000\0" \ "kloadaddr=0x84000000\0" \ "fdtaddr=0x85000000\0" \ - "fdt_high=0xffffffff\0" \ "rdaddr=0x81000000\0" \ "bootfile=uImage\0" \ "fdtfile=am335x-shc.dtb\0" \ diff --git a/include/configs/aquila-am69.h b/include/configs/aquila-am69.h new file mode 100644 index 00000000000..36553d4295b --- /dev/null +++ b/include/configs/aquila-am69.h @@ -0,0 +1,15 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* + * Configuration header file for Aquila AM69 SoM + * + * Copyright (C) 2025 Toradex - https://www.toradex.com/ + */ + +#ifndef __CONFIG_AQUILA_AM69_H +#define __CONFIG_AQUILA_AM69_H + +/* DDR Configuration */ +#define CFG_SYS_SDRAM_BASE 0x80000000 +#define CFG_SYS_SDRAM_BASE1 0x880000000 + +#endif /* __CONFIG_AQUILA_AM69_H */ diff --git a/include/configs/bcmstb.h b/include/configs/bcmstb.h index c9280927b3c..ca59c364cd7 100644 --- a/include/configs/bcmstb.h +++ b/include/configs/bcmstb.h @@ -71,8 +71,8 @@ extern phys_addr_t prior_stage_fdt_address; * * We want to keep the ramdisk and FDT in the FIT image in-place, to * accommodate stblinux's bmem and CMA regions. To accomplish this, - * we set initrd_high and fdt_high to 0xffffffff, and the load and - * entry addresses of the FIT ramdisk entry to 0x0. + * we set initrd_high to 0xffffffff, bootm_size to 0x7000000 and the + * load and entry addresses of the FIT ramdisk entry to 0x0. * * Overwriting the prior stage bootloader causes memory instability, * so the compressed initramfs needs to fit between the load address @@ -121,7 +121,7 @@ extern phys_addr_t prior_stage_fdt_address; #define CFG_EXTRA_ENV_SETTINGS \ "fdtsaveaddr=" __stringify(CONFIG_SYS_FDT_SAVE_ADDRESS) "\0" \ "initrd_high=0xffffffff\0" \ - "fdt_high=0xffffffff\0" + "bootm_size=0x7000000\0" /* * Set fdtaddr to prior stage-provided DTB in board_late_init, when diff --git a/include/configs/bk4r1.h b/include/configs/bk4r1.h index 6d24c5decd5..4a0b9edf457 100644 --- a/include/configs/bk4r1.h +++ b/include/configs/bk4r1.h @@ -57,7 +57,6 @@ /* Extra env settings (including the target-defined ones if any) */ #define CFG_EXTRA_ENV_SETTINGS \ BK4_EXTRA_ENV_SETTINGS \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "blimg_file=u-boot.vyb\0" \ "blimg_addr=0x81000000\0" \ diff --git a/include/configs/cl-som-imx7.h b/include/configs/cl-som-imx7.h index 8c363137b4f..baf7bbf0ad4 100644 --- a/include/configs/cl-som-imx7.h +++ b/include/configs/cl-som-imx7.h @@ -35,7 +35,6 @@ "storagebootcmd=echo Booting from ${storagetype} ...; run ${storagetype}args; run doboot;\0" \ "kernel=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdtfile=imx7d-sbc-imx7.dtb\0" \ "fdtaddr=0x83000000\0" \ diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h index f7fd4c517b4..966f7596750 100644 --- a/include/configs/cm_fx6.h +++ b/include/configs/cm_fx6.h @@ -31,7 +31,6 @@ /* Environment */ #define CFG_EXTRA_ENV_SETTINGS \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_addr_r=0x18000000\0" \ "ramdisk_addr_r=0x13000000\0" \ diff --git a/include/configs/dart_6ul.h b/include/configs/dart_6ul.h index 2b329b4065c..7c4c869f771 100644 --- a/include/configs/dart_6ul.h +++ b/include/configs/dart_6ul.h @@ -65,7 +65,6 @@ /* Default environment */ #define CFG_EXTRA_ENV_SETTINGS \ - "fdt_high=0xffffffff\0" \ "console=ttymxc0,115200n8\0" \ "addcon=setenv bootargs ${bootargs} console=${console},${baudrate}\0" \ "fit_addr=0x82000000\0" \ diff --git a/include/configs/display5.h b/include/configs/display5.h index 19d71d6066f..c311b35bb97 100644 --- a/include/configs/display5.h +++ b/include/configs/display5.h @@ -175,7 +175,6 @@ "fdtaddr=0x12800000\0" \ "console=ttymxc4,115200 quiet cma=256M\0" \ "fdtfile=imx6q-display5.dtb\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "kernel_file=fitImage\0" \ "fitImg_fw_sz=0x2200\0" \ diff --git a/include/configs/el6x_common.h b/include/configs/el6x_common.h deleted file mode 100644 index 78af42d0450..00000000000 --- a/include/configs/el6x_common.h +++ /dev/null @@ -1,58 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ -/* - * Copyright (C) Stefano Babic <[email protected]> - * - * Configuration settings for the E+L i.MX6Q DO82 board. - */ - -#ifndef __EL6Q_COMMON_CONFIG_H -#define __EL6Q_COMMON_CONFIG_H - -#include <linux/stringify.h> - -#include "mx6_common.h" - -/* MMC Configs */ -#define CFG_SYS_FSL_ESDHC_ADDR 0 -#define CFG_SYS_FSL_USDHC_NUM 2 - -/* PMIC */ -#define CFG_POWER_PFUZE100_I2C_ADDR 0x08 - -/* Commands */ - -#define CFG_MXC_UART_BASE UART2_BASE - -#define CFG_EXTRA_ENV_SETTINGS \ - "board=EL6Q\0" \ - "cma_size="__stringify(EL6Q_CMA_SIZE)"\0" \ - "chp_size="__stringify(EL6Q_COHERENT_POOL_SIZE)"\0" \ - "console=" CONSOLE_DEV "\0" \ - "fdtfile=undefined\0" \ - "fdt_high=0xffffffff\0" \ - "fdt_addr_r=0x18000000\0" \ - "fdt_addr=0x18000000\0" \ - "findfdt=setenv fdtfile " CONFIG_DEFAULT_FDT_FILE "\0" \ - "kernel_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ - "scriptaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ - "pxefile_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ - BOOTENV - -#define BOOT_TARGET_DEVICES(func) \ - func(MMC, mmc, 0) \ - func(MMC, mmc, 1) \ - func(PXE, PXE, na) \ - func(DHCP, dhcp, na) - -#include <config_distro_bootcmd.h> - -/* Physical Memory Map */ -#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR - -#define CFG_SYS_SDRAM_BASE PHYS_SDRAM -#define CFG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR -#define CFG_SYS_INIT_RAM_SIZE IRAM_SIZE - -/* environment organization */ - -#endif /* __EL6Q_COMMON_CONFIG_H */ diff --git a/include/configs/hikey.h b/include/configs/hikey.h index 36bf22b1870..3b49079881a 100644 --- a/include/configs/hikey.h +++ b/include/configs/hikey.h @@ -47,7 +47,6 @@ "kernel_addr_r=0x00080000\0" \ "fdtfile=hi6220-hikey.dtb\0" \ "fdt_addr_r=0x02000000\0" \ - "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ BOOTENV diff --git a/include/configs/hikey960.h b/include/configs/hikey960.h index 40d5e653c3f..9cbdbd9a934 100644 --- a/include/configs/hikey960.h +++ b/include/configs/hikey960.h @@ -34,7 +34,6 @@ "fdt_addr_r=0x10000000\0" \ "kernel_addr_r=0x11000000\0" \ "scriptaddr=0x00020000\0" \ - "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ BOOTENV diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h index 3d5701c636c..f81ae428420 100644 --- a/include/configs/imx6-engicam.h +++ b/include/configs/imx6-engicam.h @@ -30,7 +30,6 @@ "splashimage=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ "image=uImage\0" \ "fit_image=fit.itb\0" \ - "fdt_high=0xffffffff\0" \ "fdt_addr=" FDT_ADDR "\0" \ "boot_fdt=try\0" \ "mmcpart=1\0" \ diff --git a/include/configs/imx6dl-mamoj.h b/include/configs/imx6dl-mamoj.h index 8abb58b0691..1a48bf646b6 100644 --- a/include/configs/imx6dl-mamoj.h +++ b/include/configs/imx6dl-mamoj.h @@ -24,7 +24,6 @@ "scriptaddr=0x14000000\0" \ "fdt_addr_r=0x13000000\0" \ "kernel_addr_r=0x10008000\0" \ - "fdt_high=0xffffffff\0" \ "dfu_alt_info_spl=spl raw 0x2 0x400\0" \ "dfu_alt_info_uboot=u-boot raw 0x8a 0x11400\0" \ BOOTENV diff --git a/include/configs/imx8mq_phanbell.h b/include/configs/imx8mq_phanbell.h index a30d0da5050..972f9def551 100644 --- a/include/configs/imx8mq_phanbell.h +++ b/include/configs/imx8mq_phanbell.h @@ -34,7 +34,6 @@ "image=Image\0" \ "console=ttymxc0,115200\0" \ "fdt_addr=0x43000000\0" \ - "fdt_high=0xffffffffffffffff\0" \ "boot_fdt=try\0" \ "fdt_file=imx8mq-phanbell.dtb\0" \ "initrd_addr=0x43800000\0" \ diff --git a/include/configs/imx8qm_mek.h b/include/configs/imx8qm_mek.h index 24e7aa96ec1..5776c8ede75 100644 --- a/include/configs/imx8qm_mek.h +++ b/include/configs/imx8qm_mek.h @@ -29,7 +29,6 @@ "panel=NULL\0" \ "console=ttyLP0,${baudrate} earlycon=lpuart32,0x5a060000,${baudrate}\0" \ "fdt_addr=0x83000000\0" \ - "fdt_high=0xffffffffffffffff\0" \ "boot_fdt=try\0" \ "fdt_file=undefined\0" \ "initrd_addr=0x83800000\0" \ diff --git a/include/configs/imx8qxp_mek.h b/include/configs/imx8qxp_mek.h index abc3603bacf..846b422b0f2 100644 --- a/include/configs/imx8qxp_mek.h +++ b/include/configs/imx8qxp_mek.h @@ -29,7 +29,6 @@ "panel=NULL\0" \ "console=ttyLP0\0" \ "fdt_addr=0x83000000\0" \ - "fdt_high=0xffffffffffffffff\0" \ "boot_fdt=try\0" \ "fdt_file=undefined\0" \ "initrd_addr=0x83800000\0" \ diff --git a/include/configs/imx8ulp_evk.h b/include/configs/imx8ulp_evk.h index 9308f5234f4..edfd6f70815 100644 --- a/include/configs/imx8ulp_evk.h +++ b/include/configs/imx8ulp_evk.h @@ -21,30 +21,6 @@ #define CFG_FEC_MXC_PHYADDR 1 #endif -#ifdef CONFIG_DISTRO_DEFAULTS -#define BOOT_TARGET_DEVICES(func) \ - func(MMC, mmc, 0) - -#include <config_distro_bootcmd.h> -#else -#define BOOTENV -#endif - -/* Initial environment variables */ -#define CFG_EXTRA_ENV_SETTINGS \ - BOOTENV \ - "scriptaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ - "kernel_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ - "image=Image\0" \ - "console=ttyLP1,115200 earlycon\0" \ - "fdt_addr_r=0x83000000\0" \ - "boot_fit=no\0" \ - "fdtfile=imx8ulp-evk.dtb\0" \ - "initrd_addr=0x83800000\0" \ - "bootm_size=0x10000000\0" \ - "mmcpart=1\0" \ - "mmcroot=/dev/mmcblk2p2 rootwait rw\0" \ - /* Link Definitions */ #define CFG_SYS_INIT_RAM_ADDR 0x80000000 diff --git a/include/configs/imx91_frdm.h b/include/configs/imx91_frdm.h new file mode 100644 index 00000000000..6d051ed88a5 --- /dev/null +++ b/include/configs/imx91_frdm.h @@ -0,0 +1,25 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * Copyright 2025 NXP + */ + +#ifndef __IMX91_FRDM_H +#define __IMX91_FRDM_H + +#include <linux/sizes.h> +#include <linux/stringify.h> +#include <asm/arch/imx-regs.h> + +#define CFG_SYS_UBOOT_BASE \ + (QSPI0_AMBA_BASE + CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512) + +#define CFG_SYS_INIT_RAM_ADDR 0x80000000 +#define CFG_SYS_INIT_RAM_SIZE 0x200000 + +#define CFG_SYS_SDRAM_BASE 0x80000000 +#define PHYS_SDRAM 0x80000000 +#define PHYS_SDRAM_SIZE SZ_2G /* 2GB DDR */ + +#define WDOG_BASE_ADDR WDG3_BASE_ADDR + +#endif diff --git a/include/configs/kontron-osm-s-mx8mp.h b/include/configs/kontron-osm-s-mx8mp.h new file mode 100644 index 00000000000..24b07842bb6 --- /dev/null +++ b/include/configs/kontron-osm-s-mx8mp.h @@ -0,0 +1,30 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * Copyright (C) 2023 Kontron Electronics GmbH + * + * Configuration settings for the Kontron OSM-S/BL i.MX8M Plus boards and modules. + */ +#ifndef __KONTRON_MX8MP_CONFIG_H +#define __KONTRON_MX8MP_CONFIG_H + +#include <asm/arch/imx-regs.h> +#include <linux/sizes.h> + +/* RAM */ +#define PHYS_SDRAM DDR_CSD1_BASE_ADDR +#define PHYS_SDRAM_SIZE (SZ_2G + SZ_1G) +#define PHYS_SDRAM_2 0x100000000 +#define PHYS_SDRAM_2_SIZE (SZ_1G + SZ_4G) +#define CFG_SYS_SDRAM_BASE PHYS_SDRAM + +#define CFG_SYS_INIT_RAM_ADDR 0x40000000 +#define CFG_SYS_INIT_RAM_SIZE SZ_512K + +/* Board and environment settings */ + +#ifdef CONFIG_USB_EHCI_HCD +#define CFG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) +#define CFG_MXC_USB_FLAGS 0 +#endif + +#endif /* __KONTRON_MX8MP_CONFIG_H */ diff --git a/include/configs/kontron-osm-s-mx93.h b/include/configs/kontron-osm-s-mx93.h new file mode 100644 index 00000000000..ab2b42298c8 --- /dev/null +++ b/include/configs/kontron-osm-s-mx93.h @@ -0,0 +1,30 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * Copyright (C) 2024 Kontron Electronics GmbH + * + * Configuration settings for the Kontron OSM-S/BL i.MX93 boards and modules. + */ +#ifndef __KONTRON_MX93_CONFIG_H +#define __KONTRON_MX93_CONFIG_H + +#include <asm/arch/imx-regs.h> +#include <linux/sizes.h> + +/* RAM */ +#define PHYS_SDRAM 0x80000000 +#define PHYS_SDRAM_SIZE (SZ_2G) +#define CFG_SYS_SDRAM_BASE PHYS_SDRAM + +#define CFG_SYS_INIT_RAM_ADDR 0x80000000 +#define CFG_SYS_INIT_RAM_SIZE SZ_2M + +/* Board and environment settings */ + +#ifdef CONFIG_USB_EHCI_HCD +#define CFG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) +#define CFG_MXC_USB_FLAGS 0 +#endif + +#define WDOG_BASE_ADDR WDG3_BASE_ADDR + +#endif /* __KONTRON_MX93_CONFIG_H */ diff --git a/include/configs/kp_imx53.h b/include/configs/kp_imx53.h index 78c6c67ab99..bb136b7e129 100644 --- a/include/configs/kp_imx53.h +++ b/include/configs/kp_imx53.h @@ -18,7 +18,6 @@ #define CFG_EXTRA_ENV_SETTINGS \ "console=ttymxc1,115200\0" \ "fdt_addr=0x75000000\0" \ - "fdt_high=0xffffffff\0" \ "scriptaddr=0x74000000\0" \ "kernel_file=fitImage\0"\ "silent=1\0"\ diff --git a/include/configs/kp_imx6q_tpc.h b/include/configs/kp_imx6q_tpc.h index c0cb3db23e7..e89e9601ae8 100644 --- a/include/configs/kp_imx6q_tpc.h +++ b/include/configs/kp_imx6q_tpc.h @@ -19,7 +19,6 @@ #define CFG_EXTRA_ENV_SETTINGS \ "console=ttymxc0,115200\0" \ "fdt_addr=0x18000000\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "kernel_addr_r=0x10008000\0" \ "fdt_addr_r=0x13000000\0" \ diff --git a/include/configs/liteboard.h b/include/configs/liteboard.h index 2934c76a662..a90d02c049f 100644 --- a/include/configs/liteboard.h +++ b/include/configs/liteboard.h @@ -24,7 +24,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \ "fdt_addr=0x83000000\0" \ diff --git a/include/configs/ls1012afrdm.h b/include/configs/ls1012afrdm.h index 4243a21f1f1..8059092fac8 100644 --- a/include/configs/ls1012afrdm.h +++ b/include/configs/ls1012afrdm.h @@ -19,7 +19,6 @@ #undef CFG_EXTRA_ENV_SETTINGS #define CFG_EXTRA_ENV_SETTINGS \ "verify=no\0" \ - "fdt_high=0xffffffffffffffff\0" \ "kernel_addr=0x01000000\0" \ "scriptaddr=0x80000000\0" \ "fdtheader_addr_r=0x80100000\0" \ diff --git a/include/configs/ls1043a_common.h b/include/configs/ls1043a_common.h index a02c752bbcf..4c695388d2f 100644 --- a/include/configs/ls1043a_common.h +++ b/include/configs/ls1043a_common.h @@ -90,7 +90,6 @@ /* Initial environment variables */ #define CFG_EXTRA_ENV_SETTINGS \ "hwconfig=fsl_ddr:bank_intlv=auto\0" \ - "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ "kernel_addr=0x61000000\0" \ "scriptaddr=0x80000000\0" \ diff --git a/include/configs/mccmon6.h b/include/configs/mccmon6.h index b64bf93bcb7..9f401718bfb 100644 --- a/include/configs/mccmon6.h +++ b/include/configs/mccmon6.h @@ -35,7 +35,6 @@ #define CFG_EXTRA_ENV_SETTINGS \ "console=ttymxc0,115200 quiet\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "boot_os=yes\0" \ "kernelsize=0x300000\0" \ diff --git a/include/configs/mx53cx9020.h b/include/configs/mx53cx9020.h index 70aa140036f..2bd1426c7d9 100644 --- a/include/configs/mx53cx9020.h +++ b/include/configs/mx53cx9020.h @@ -40,7 +40,6 @@ "scriptaddr=0x74000000\0" \ "ramdisk_addr_r=0x80000000\0" \ "kernel_addr_r=0x72000000\0" \ - "fdt_high=0xffffffff\0" \ "console=ttymxc1,115200\0" \ "stdin=serial\0" \ "stdout=serial,vidconsole\0" \ diff --git a/include/configs/mx6sabre_common.h b/include/configs/mx6sabre_common.h index c8e5757d0bb..ef2848b71f3 100644 --- a/include/configs/mx6sabre_common.h +++ b/include/configs/mx6sabre_common.h @@ -47,7 +47,6 @@ "dfu_alt_info_spl=spl raw 0x400\0" \ "dfu_alt_info_img=u-boot raw 0x10000\0" \ "dfu_alt_info=spl raw 0x400\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "splashimage=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ "mmcdev=" __stringify(CONFIG_ENV_MMC_DEVICE_INDEX) "\0" \ diff --git a/include/configs/mx6slevk.h b/include/configs/mx6slevk.h index d4e66a39882..24019be7a3e 100644 --- a/include/configs/mx6slevk.h +++ b/include/configs/mx6slevk.h @@ -19,7 +19,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=imx6sl-evk.dtb\0" \ "fdt_addr=0x88000000\0" \ diff --git a/include/configs/mx6sllevk.h b/include/configs/mx6sllevk.h index 1ffad5931c4..38a7dd6061e 100644 --- a/include/configs/mx6sllevk.h +++ b/include/configs/mx6sllevk.h @@ -17,7 +17,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=imx6sll-evk.dtb\0" \ "fdt_addr=0x83000000\0" \ diff --git a/include/configs/mx6sxsabreauto.h b/include/configs/mx6sxsabreauto.h index 36d82e81d5d..db8d483ad72 100644 --- a/include/configs/mx6sxsabreauto.h +++ b/include/configs/mx6sxsabreauto.h @@ -16,7 +16,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=imx6sx-sabreauto.dtb\0" \ "fdt_addr=0x88000000\0" \ diff --git a/include/configs/mx6sxsabresd.h b/include/configs/mx6sxsabresd.h index 844becbfd2c..bb04ca3a98e 100644 --- a/include/configs/mx6sxsabresd.h +++ b/include/configs/mx6sxsabresd.h @@ -39,7 +39,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=imx6sx-sdb.dtb\0" \ "fdt_addr=0x88000000\0" \ diff --git a/include/configs/mx6ul_14x14_evk.h b/include/configs/mx6ul_14x14_evk.h index 203a037e342..e5f8d736900 100644 --- a/include/configs/mx6ul_14x14_evk.h +++ b/include/configs/mx6ul_14x14_evk.h @@ -34,7 +34,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=undefined\0" \ "fdt_addr=0x83000000\0" \ diff --git a/include/configs/mx6ullevk.h b/include/configs/mx6ullevk.h index 353267dddec..88b535e1bd0 100644 --- a/include/configs/mx6ullevk.h +++ b/include/configs/mx6ullevk.h @@ -27,7 +27,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=undefined\0" \ "fdt_addr=0x83000000\0" \ diff --git a/include/configs/mx7dsabresd.h b/include/configs/mx7dsabresd.h index f5ab4720750..b08bbe94667 100644 --- a/include/configs/mx7dsabresd.h +++ b/include/configs/mx7dsabresd.h @@ -57,7 +57,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttymxc0\0" \ - "fdt_high=0xffffffff\0" \ "finduuid=part uuid mmc 0:1 uuid\0" \ "initrd_high=0xffffffff\0" \ "fdtfile=imx7d-sdb.dtb\0" \ diff --git a/include/configs/mx7ulp_com.h b/include/configs/mx7ulp_com.h index 139536547de..d27e9d2eaa1 100644 --- a/include/configs/mx7ulp_com.h +++ b/include/configs/mx7ulp_com.h @@ -31,7 +31,6 @@ #define CFG_EXTRA_ENV_SETTINGS \ "image=zImage\0" \ "console=ttyLP0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=imx7ulp-com.dtb\0" \ "fdt_addr=0x63000000\0" \ diff --git a/include/configs/mx7ulp_evk.h b/include/configs/mx7ulp_evk.h index 654537684ba..ace1eee70cf 100644 --- a/include/configs/mx7ulp_evk.h +++ b/include/configs/mx7ulp_evk.h @@ -31,7 +31,6 @@ "script=boot.scr\0" \ "image=zImage\0" \ "console=ttyLP0\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=imx7ulp-evk.dtb\0" \ "fdt_addr=0x63000000\0" \ diff --git a/include/configs/mys_6ulx.h b/include/configs/mys_6ulx.h index ddd46c8f945..35a69f15211 100644 --- a/include/configs/mys_6ulx.h +++ b/include/configs/mys_6ulx.h @@ -32,7 +32,6 @@ #define CFG_EXTRA_ENV_SETTINGS \ "console=ttymxc0,115200n8\0" \ "fdt_addr_r=0x82000000\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "kernel_addr_r=0x81000000\0" \ "pxefile_addr_r=0x87100000\0" \ diff --git a/include/configs/nitrogen6x.h b/include/configs/nitrogen6x.h index 23eefaffc72..cbfbdce48d5 100644 --- a/include/configs/nitrogen6x.h +++ b/include/configs/nitrogen6x.h @@ -60,7 +60,6 @@ #define CFG_EXTRA_ENV_SETTINGS \ "console=ttymxc1\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_addr_r=0x18000000\0" \ "fdtfile=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \ diff --git a/include/configs/novena.h b/include/configs/novena.h index 059b8104e4b..12fb759afe2 100644 --- a/include/configs/novena.h +++ b/include/configs/novena.h @@ -53,7 +53,6 @@ /* Extra U-Boot environment. */ #define CFG_EXTRA_ENV_SETTINGS \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "consdev=ttymxc1\0" \ "baudrate=115200\0" \ diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h index 2cb2e52ad25..788e1d1d5e7 100644 --- a/include/configs/omap3_evm.h +++ b/include/configs/omap3_evm.h @@ -74,7 +74,6 @@ DEFAULT_MMC_TI_ARGS \ DEFAULT_FIT_TI_ARGS \ "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ - "fdt_high=0xffffffff\0" \ "console=ttyO0,115200n8\0" \ "bootdir=/boot\0" \ "bootenv=uEnv.txt\0" \ diff --git a/include/configs/pcl063.h b/include/configs/pcl063.h index 0c96506b5fb..e5f4dadcf46 100644 --- a/include/configs/pcl063.h +++ b/include/configs/pcl063.h @@ -44,7 +44,6 @@ #define CFG_EXTRA_ENV_SETTINGS \ "console=ttymxc0,115200n8\0" \ "fdt_addr_r=0x82000000\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "kernel_addr_r=0x81000000\0" \ "pxefile_addr_r=0x87100000\0" \ diff --git a/include/configs/pcl063_ull.h b/include/configs/pcl063_ull.h index 0f265adc5dc..a1322a2874b 100644 --- a/include/configs/pcl063_ull.h +++ b/include/configs/pcl063_ull.h @@ -62,7 +62,6 @@ /* Default environment */ #define CFG_EXTRA_ENV_SETTINGS \ - "fdt_high=0xffffffff\0" \ "console=ttymxc0,115200n8\0" \ "addcon=setenv bootargs ${bootargs} console=${console},${baudrate}\0" \ "fit_addr=0x82000000\0" \ diff --git a/include/configs/pcm052.h b/include/configs/pcm052.h index 34994016c54..0981b59e10e 100644 --- a/include/configs/pcm052.h +++ b/include/configs/pcm052.h @@ -31,7 +31,6 @@ /* Extra env settings (including the target-defined ones if any) */ #define CFG_EXTRA_ENV_SETTINGS \ PCM052_EXTRA_ENV_SETTINGS \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "blimg_file=u-boot.vyb\0" \ "blimg_addr=0x81000000\0" \ diff --git a/include/configs/pico-imx6.h b/include/configs/pico-imx6.h index f6a7ccfe87c..eb9256a012a 100644 --- a/include/configs/pico-imx6.h +++ b/include/configs/pico-imx6.h @@ -38,7 +38,6 @@ "console=ttymxc0\0" \ "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ BOOTMENU_ENV \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_addr_r=0x18000000\0" \ "fdt_addr=0x18000000\0" \ diff --git a/include/configs/pico-imx6ul.h b/include/configs/pico-imx6ul.h index 37f4c7d8a09..21a536f9fe9 100644 --- a/include/configs/pico-imx6ul.h +++ b/include/configs/pico-imx6ul.h @@ -45,7 +45,6 @@ "image=zImage\0" \ "splashpos=m,m\0" \ "console=ttymxc5\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ "videomode=video=ctfb:x:800,y:480,depth:24,mode:0,pclk:30000,le:46,ri:210,up:22,lo:23,hs:20,vs:10,sync:0,vmode:0\0" \ diff --git a/include/configs/pico-imx7d.h b/include/configs/pico-imx7d.h index 89850d8e4a7..cc5c8b01159 100644 --- a/include/configs/pico-imx7d.h +++ b/include/configs/pico-imx7d.h @@ -56,7 +56,6 @@ "splashpos=m,m\0" \ "splashimage=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ "console=ttymxc4\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \ "videomode=video=ctfb:x:800,y:480,depth:24,mode:0,pclk:30000,le:46,ri:210,up:22,lo:23,hs:20,vs:10,sync:0,vmode:0\0" \ diff --git a/include/configs/pico-imx8mq.h b/include/configs/pico-imx8mq.h index f80773f2bc1..a0d587860d5 100644 --- a/include/configs/pico-imx8mq.h +++ b/include/configs/pico-imx8mq.h @@ -29,7 +29,6 @@ "image=Image\0" \ "console=ttymxc0,115200\0" \ "fdt_addr=0x43000000\0" \ - "fdt_high=0xffffffffffffffff\0" \ "fdt_file=imx8mq-pico-pi.dtb\0" \ "initrd_addr=0x43800000\0" \ "initrd_high=0xffffffffffffffff\0" \ diff --git a/include/configs/sifive-unleashed.h b/include/configs/sifive-unleashed.h index cd8d0438ba6..862c2457024 100644 --- a/include/configs/sifive-unleashed.h +++ b/include/configs/sifive-unleashed.h @@ -37,7 +37,6 @@ "name=system,size=-,bootable,type=${type_guid_gpt_system};" #define CFG_EXTRA_ENV_SETTINGS \ - "fdt_high=0xffffffffffffffff\0" \ "initrd_high=0xffffffffffffffff\0" \ "kernel_addr_r=0x84000000\0" \ "kernel_comp_addr_r=0x88000000\0" \ diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h index 2f08dfed020..a9c0cea4e14 100644 --- a/include/configs/tegra-common-post.h +++ b/include/configs/tegra-common-post.h @@ -50,17 +50,14 @@ #endif #ifdef CONFIG_ARM64 -#define FDT_HIGH "ffffffffffffffff" #define INITRD_HIGH "ffffffffffffffff" #else -#define FDT_HIGH "ffffffff" #define INITRD_HIGH "ffffffff" #endif #define CFG_EXTRA_ENV_SETTINGS \ TEGRA_DEVICE_SETTINGS \ MEM_LAYOUT_ENV_SETTINGS \ - "fdt_high=" FDT_HIGH "\0" \ "initrd_high=" INITRD_HIGH "\0" \ "boot_targets=" BOOT_TARGETS "\0" \ BOARD_EXTRA_ENV_SETTINGS diff --git a/include/configs/tqma6.h b/include/configs/tqma6.h index 329fe3c86ed..5e89cd6937a 100644 --- a/include/configs/tqma6.h +++ b/include/configs/tqma6.h @@ -1,6 +1,8 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* - * Copyright (C) 2013, 2014, 2017 Markus Niebel <[email protected]> + * Copyright (c) 2013-2014, 2017 TQ-Systems GmbH <[email protected]>, + * D-82229 Seefeld, Germany. + * Author: Markus Niebel * * Configuration settings for the TQ-Systems TQMa6<Q,D,DL,S> module. */ @@ -203,7 +205,6 @@ "fdt_addr="__stringify(TQMA6_FDT_ADDRESS)"\0" \ "console=" CONSOLE_DEV "\0" \ "cma_size="__stringify(TQMA6_CMA_SIZE)"\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "rootfsmode=ro\0" \ "addcma=setenv bootargs ${bootargs} cma=${cma_size}\0" \ diff --git a/include/configs/tqma6_mba6.h b/include/configs/tqma6_mba6.h index b5871424bc6..9b9f4150951 100644 --- a/include/configs/tqma6_mba6.h +++ b/include/configs/tqma6_mba6.h @@ -1,6 +1,8 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* - * Copyright (C) 2013 - 2017 Markus Niebel <[email protected]> + * Copyright (c) 2013-2017 TQ-Systems GmbH <[email protected]>, + * D-82229 Seefeld, Germany. + * Author: Markus Niebel * * Configuration settings for the TQ-Systems TQMa6<Q,D,DL,S> module on * MBa6 starter kit diff --git a/include/configs/tqma6_wru4.h b/include/configs/tqma6_wru4.h index 5e21463305a..110bd895a8a 100644 --- a/include/configs/tqma6_wru4.h +++ b/include/configs/tqma6_wru4.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Copyright (C) 2015 Stefan Roese <[email protected]> */ diff --git a/include/configs/udoo.h b/include/configs/udoo.h index d85cf7808c7..a1efa4ff945 100644 --- a/include/configs/udoo.h +++ b/include/configs/udoo.h @@ -17,7 +17,6 @@ #define CFG_EXTRA_ENV_SETTINGS \ "console=ttymxc1,115200\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdtfile=undefined\0" \ "fdt_addr=0x18000000\0" \ diff --git a/include/configs/udoo_neo.h b/include/configs/udoo_neo.h index 4ecd71f9653..8e784e9f0cd 100644 --- a/include/configs/udoo_neo.h +++ b/include/configs/udoo_neo.h @@ -21,7 +21,6 @@ /* Linux only */ #define CFG_EXTRA_ENV_SETTINGS \ "console=ttymxc0,115200\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdtfile=undefined\0" \ "fdt_addr=0x83000000\0" \ diff --git a/include/configs/vexpress_aemv8.h b/include/configs/vexpress_aemv8.h index 5eee13b3fc0..fc4727b4a38 100644 --- a/include/configs/vexpress_aemv8.h +++ b/include/configs/vexpress_aemv8.h @@ -179,7 +179,6 @@ " bootm ${boot_addr_r} ${boot_addr_r} ${fdt_addr_r};" \ "else" \ " if load hostfs - ${kernel_addr_r} ${kernel_name}; then" \ - " setenv fdt_high 0xffffffffffffffff;" \ " setenv initrd_high 0xffffffffffffffff;" \ " if test -n load hostfs - ${fdt_addr_r} ${fdtfile}; then" \ " fdt move $fdtcontroladdr $fdt_addr_r;" \ diff --git a/include/configs/wandboard.h b/include/configs/wandboard.h index 7f764b90098..7015df87b4b 100644 --- a/include/configs/wandboard.h +++ b/include/configs/wandboard.h @@ -21,7 +21,6 @@ "splashpos=m,m\0" \ "splashimage=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \ "fdtfile=undefined\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_addr_r=0x18000000\0" \ "fdt_addr=0x18000000\0" \ diff --git a/include/configs/warp7.h b/include/configs/warp7.h index c79c4e5bafe..eb792c228c7 100644 --- a/include/configs/warp7.h +++ b/include/configs/warp7.h @@ -35,7 +35,6 @@ "image=zImage\0" \ "console=ttymxc0\0" \ "ethact=usb_ether\0" \ - "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "fdt_file=imx7s-warp.dtb\0" \ "fdt_addr=0x83000000\0" \ diff --git a/include/configs/xpress.h b/include/configs/xpress.h deleted file mode 100644 index aa4dd3e9b8d..00000000000 --- a/include/configs/xpress.h +++ /dev/null @@ -1,86 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ -/* - * Copyright (C) 2015-2016 Stefan Roese <[email protected]> - * - * Configuration settings for the CCV xPress board - */ -#ifndef __XPRESS_CONFIG_H -#define __XPRESS_CONFIG_H - -#include "mx6_common.h" -#include <asm/mach-imx/gpio.h> - -#define CFG_MXC_UART_BASE MX6UL_UART7_BASE_ADDR - -/* MMC Configs */ -#define CFG_SYS_FSL_ESDHC_ADDR USDHC2_BASE_ADDR - -/* Miscellaneous configurable options */ - -/* Physical Memory Map */ -#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR -#define PHYS_SDRAM_SIZE (128 << 20) - -#define CFG_SYS_SDRAM_BASE PHYS_SDRAM -#define CFG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR -#define CFG_SYS_INIT_RAM_SIZE IRAM_SIZE - -/* Environment is in stored in the eMMC boot partition */ - -#define CFG_FEC_ENET_DEV 0 -#define CFG_FEC_MXC_PHYADDR 0x0 - -#define CFG_EXTRA_ENV_SETTINGS \ - "script=boot.scr\0" \ - "image=zImage\0" \ - "console=ttymxc6\0" \ - "fdt_high=0xffffffff\0" \ - "initrd_high=0xffffffff\0" \ - "fdt_file=undefined\0" \ - "fdt_addr=0x83000000\0" \ - "boot_fdt=try\0" \ - "ip_dyn=yes\0" \ - "mmcdev="__stringify(CONFIG_ENV_MMC_DEVICE_INDEX)"\0" \ - "mmcpart=1\0" \ - "mmcroot=/dev/mmcblk0p2 rootwait rw\0" \ - "mmcautodetect=yes\0" \ - "mmcargs=setenv bootargs console=${console},${baudrate} " \ - "root=${mmcroot}\0" \ - "loadbootscript=" \ - "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ - "bootscript=echo Running bootscript from mmc ...; " \ - "source\0" \ - "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ - "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ - "mmcboot=echo Booting from mmc ...; " \ - "run mmcargs; " \ - "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ - "if run loadfdt; then " \ - "bootz ${loadaddr} - ${fdt_addr}; " \ - "else " \ - "if test ${boot_fdt} = try; then " \ - "bootz; " \ - "else " \ - "echo WARN: Cannot load the DT; " \ - "fi; " \ - "fi; " \ - "else " \ - "bootz; " \ - "fi;\0" \ - "uboot=ccv/u-boot.imx\0" \ - "uboot_start=0x2\0" \ - "uboot_size=0x3fe\0" \ - "update_uboot=if tftp ${uboot}; then " \ - "if itest ${filesize} > 0; then " \ - "mmc dev 0 1;" \ - "setexpr blkc ${filesize} / 0x200;" \ - "setexpr blkc ${blkc} + 1;" \ - "if itest ${blkc} <= ${uboot_size}; then " \ - "mmc write ${loadaddr} ${uboot_start} " \ - "${blkc};" \ - "fi;" \ - "fi; fi;" \ - "setenv filesize; setenv blkc\0" \ - "update_bootpart=mmc bootbus 0 2 1 2;mmc partconf 0 1 1 0\0" - -#endif /* __XPRESS_CONFIG_H */ diff --git a/include/display.h b/include/display.h index e8d8aaa15fb..26b965daba9 100644 --- a/include/display.h +++ b/include/display.h @@ -26,6 +26,16 @@ struct display_plat { }; /** + * display_read_edid() - Read edid from display + * + * @dev: Device to read from + * @buf: Buffer to read into (should be EDID_SIZE bytes) + * @buf_size: Buffer size (should be EDID_SIZE) + * Return number of bytes read, <= 0 for error + */ +int display_read_edid(struct udevice *dev, u8 *buf, int buf_size); + +/** * display_read_timing() - Read timing information * * @dev: Device to read from diff --git a/include/dm/uclass-id.h b/include/dm/uclass-id.h index eb6416b5917..36b5d87c304 100644 --- a/include/dm/uclass-id.h +++ b/include/dm/uclass-id.h @@ -83,6 +83,8 @@ enum uclass_id { UCLASS_I3C, /* I3C bus */ UCLASS_IDE, /* IDE device */ UCLASS_IOMMU, /* IOMMU */ + UCLASS_INTERCONNECT, /* Interconnect */ + UCLASS_ICC_NODE, /* Interconnect Node */ UCLASS_IRQ, /* Interrupt controller */ UCLASS_KEYBOARD, /* Keyboard input device */ UCLASS_LED, /* Light-emitting diode (LED) */ diff --git a/include/dt-bindings/clock/mediatek,mt8365-clk.h b/include/dt-bindings/clock/mediatek,mt8365-clk.h deleted file mode 100644 index e5cb8a19ab9..00000000000 --- a/include/dt-bindings/clock/mediatek,mt8365-clk.h +++ /dev/null @@ -1,375 +0,0 @@ -/* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) - * - * Copyright (c) 2022 MediaTek Inc. - */ - -#ifndef _DT_BINDINGS_CLK_MT8365_H -#define _DT_BINDINGS_CLK_MT8365_H - -/* TOPCKGEN */ -#define CLK_TOP_CLK_NULL 0 -#define CLK_TOP_I2S0_BCK 1 -#define CLK_TOP_DSI0_LNTC_DSICK 2 -#define CLK_TOP_VPLL_DPIX 3 -#define CLK_TOP_LVDSTX_CLKDIG_CTS 4 -#define CLK_TOP_MFGPLL 5 -#define CLK_TOP_SYSPLL_D2 6 -#define CLK_TOP_SYSPLL1_D2 7 -#define CLK_TOP_SYSPLL1_D4 8 -#define CLK_TOP_SYSPLL1_D8 9 -#define CLK_TOP_SYSPLL1_D16 10 -#define CLK_TOP_SYSPLL_D3 11 -#define CLK_TOP_SYSPLL2_D2 12 -#define CLK_TOP_SYSPLL2_D4 13 -#define CLK_TOP_SYSPLL2_D8 14 -#define CLK_TOP_SYSPLL_D5 15 -#define CLK_TOP_SYSPLL3_D2 16 -#define CLK_TOP_SYSPLL3_D4 17 -#define CLK_TOP_SYSPLL_D7 18 -#define CLK_TOP_SYSPLL4_D2 19 -#define CLK_TOP_SYSPLL4_D4 20 -#define CLK_TOP_UNIVPLL 21 -#define CLK_TOP_UNIVPLL_D2 22 -#define CLK_TOP_UNIVPLL1_D2 23 -#define CLK_TOP_UNIVPLL1_D4 24 -#define CLK_TOP_UNIVPLL_D3 25 -#define CLK_TOP_UNIVPLL2_D2 26 -#define CLK_TOP_UNIVPLL2_D4 27 -#define CLK_TOP_UNIVPLL2_D8 28 -#define CLK_TOP_UNIVPLL2_D32 29 -#define CLK_TOP_UNIVPLL_D5 30 -#define CLK_TOP_UNIVPLL3_D2 31 -#define CLK_TOP_UNIVPLL3_D4 32 -#define CLK_TOP_MMPLL 33 -#define CLK_TOP_MMPLL_D2 34 -#define CLK_TOP_LVDSPLL_D2 35 -#define CLK_TOP_LVDSPLL_D4 36 -#define CLK_TOP_LVDSPLL_D8 37 -#define CLK_TOP_LVDSPLL_D16 38 -#define CLK_TOP_USB20_192M 39 -#define CLK_TOP_USB20_192M_D4 40 -#define CLK_TOP_USB20_192M_D8 41 -#define CLK_TOP_USB20_192M_D16 42 -#define CLK_TOP_USB20_192M_D32 43 -#define CLK_TOP_APLL1 44 -#define CLK_TOP_APLL1_D2 45 -#define CLK_TOP_APLL1_D4 46 -#define CLK_TOP_APLL1_D8 47 -#define CLK_TOP_APLL2 48 -#define CLK_TOP_APLL2_D2 49 -#define CLK_TOP_APLL2_D4 50 -#define CLK_TOP_APLL2_D8 51 -#define CLK_TOP_SYS_26M_D2 52 -#define CLK_TOP_MSDCPLL 53 -#define CLK_TOP_MSDCPLL_D2 54 -#define CLK_TOP_DSPPLL 55 -#define CLK_TOP_DSPPLL_D2 56 -#define CLK_TOP_DSPPLL_D4 57 -#define CLK_TOP_DSPPLL_D8 58 -#define CLK_TOP_APUPLL 59 -#define CLK_TOP_CLK26M_D52 60 -#define CLK_TOP_AXI_SEL 61 -#define CLK_TOP_MEM_SEL 62 -#define CLK_TOP_MM_SEL 63 -#define CLK_TOP_SCP_SEL 64 -#define CLK_TOP_MFG_SEL 65 -#define CLK_TOP_ATB_SEL 66 -#define CLK_TOP_CAMTG_SEL 67 -#define CLK_TOP_CAMTG1_SEL 68 -#define CLK_TOP_UART_SEL 69 -#define CLK_TOP_SPI_SEL 70 -#define CLK_TOP_MSDC50_0_HC_SEL 71 -#define CLK_TOP_MSDC2_2_HC_SEL 72 -#define CLK_TOP_MSDC50_0_SEL 73 -#define CLK_TOP_MSDC50_2_SEL 74 -#define CLK_TOP_MSDC30_1_SEL 75 -#define CLK_TOP_AUDIO_SEL 76 -#define CLK_TOP_AUD_INTBUS_SEL 77 -#define CLK_TOP_AUD_1_SEL 78 -#define CLK_TOP_AUD_2_SEL 79 -#define CLK_TOP_AUD_ENGEN1_SEL 80 -#define CLK_TOP_AUD_ENGEN2_SEL 81 -#define CLK_TOP_AUD_SPDIF_SEL 82 -#define CLK_TOP_DISP_PWM_SEL 83 -#define CLK_TOP_DXCC_SEL 84 -#define CLK_TOP_SSUSB_SYS_SEL 85 -#define CLK_TOP_SSUSB_XHCI_SEL 86 -#define CLK_TOP_SPM_SEL 87 -#define CLK_TOP_I2C_SEL 88 -#define CLK_TOP_PWM_SEL 89 -#define CLK_TOP_SENIF_SEL 90 -#define CLK_TOP_AES_FDE_SEL 91 -#define CLK_TOP_CAMTM_SEL 92 -#define CLK_TOP_DPI0_SEL 93 -#define CLK_TOP_DPI1_SEL 94 -#define CLK_TOP_DSP_SEL 95 -#define CLK_TOP_NFI2X_SEL 96 -#define CLK_TOP_NFIECC_SEL 97 -#define CLK_TOP_ECC_SEL 98 -#define CLK_TOP_ETH_SEL 99 -#define CLK_TOP_GCPU_SEL 100 -#define CLK_TOP_GCPU_CPM_SEL 101 -#define CLK_TOP_APU_SEL 102 -#define CLK_TOP_APU_IF_SEL 103 -#define CLK_TOP_MBIST_DIAG_SEL 104 -#define CLK_TOP_APLL_I2S0_SEL 105 -#define CLK_TOP_APLL_I2S1_SEL 106 -#define CLK_TOP_APLL_I2S2_SEL 107 -#define CLK_TOP_APLL_I2S3_SEL 108 -#define CLK_TOP_APLL_TDMOUT_SEL 109 -#define CLK_TOP_APLL_TDMIN_SEL 110 -#define CLK_TOP_APLL_SPDIF_SEL 111 -#define CLK_TOP_APLL12_CK_DIV0 112 -#define CLK_TOP_APLL12_CK_DIV1 113 -#define CLK_TOP_APLL12_CK_DIV2 114 -#define CLK_TOP_APLL12_CK_DIV3 115 -#define CLK_TOP_APLL12_CK_DIV4 116 -#define CLK_TOP_APLL12_CK_DIV4B 117 -#define CLK_TOP_APLL12_CK_DIV5 118 -#define CLK_TOP_APLL12_CK_DIV5B 119 -#define CLK_TOP_APLL12_CK_DIV6 120 -#define CLK_TOP_AUD_I2S0_M 121 -#define CLK_TOP_AUD_I2S1_M 122 -#define CLK_TOP_AUD_I2S2_M 123 -#define CLK_TOP_AUD_I2S3_M 124 -#define CLK_TOP_AUD_TDMOUT_M 125 -#define CLK_TOP_AUD_TDMOUT_B 126 -#define CLK_TOP_AUD_TDMIN_M 127 -#define CLK_TOP_AUD_TDMIN_B 128 -#define CLK_TOP_AUD_SPDIF_M 129 -#define CLK_TOP_USB20_48M_EN 130 -#define CLK_TOP_UNIVPLL_48M_EN 131 -#define CLK_TOP_LVDSTX_CLKDIG_EN 132 -#define CLK_TOP_VPLL_DPIX_EN 133 -#define CLK_TOP_SSUSB_TOP_CK_EN 134 -#define CLK_TOP_SSUSB_PHY_CK_EN 135 -#define CLK_TOP_CONN_32K 136 -#define CLK_TOP_CONN_26M 137 -#define CLK_TOP_DSP_32K 138 -#define CLK_TOP_DSP_26M 139 -#define CLK_TOP_NR_CLK 140 -#define CLK_TOP_CLK26M 141 -#define CLK_TOP_CLK32K 142 - -/* INFRACFG */ -#define CLK_IFR_PMIC_TMR 0 -#define CLK_IFR_PMIC_AP 1 -#define CLK_IFR_PMIC_MD 2 -#define CLK_IFR_PMIC_CONN 3 -#define CLK_IFR_ICUSB 4 -#define CLK_IFR_GCE 5 -#define CLK_IFR_THERM 6 -#define CLK_IFR_PWM_HCLK 7 -#define CLK_IFR_PWM1 8 -#define CLK_IFR_PWM2 9 -#define CLK_IFR_PWM3 10 -#define CLK_IFR_PWM4 11 -#define CLK_IFR_PWM5 12 -#define CLK_IFR_PWM 13 -#define CLK_IFR_UART0 14 -#define CLK_IFR_UART1 15 -#define CLK_IFR_UART2 16 -#define CLK_IFR_DSP_UART 17 -#define CLK_IFR_GCE_26M 18 -#define CLK_IFR_CQ_DMA_FPC 19 -#define CLK_IFR_BTIF 20 -#define CLK_IFR_SPI0 21 -#define CLK_IFR_MSDC0_HCLK 22 -#define CLK_IFR_MSDC2_HCLK 23 -#define CLK_IFR_MSDC1_HCLK 24 -#define CLK_IFR_DVFSRC 25 -#define CLK_IFR_GCPU 26 -#define CLK_IFR_TRNG 27 -#define CLK_IFR_AUXADC 28 -#define CLK_IFR_CPUM 29 -#define CLK_IFR_AUXADC_MD 30 -#define CLK_IFR_AP_DMA 31 -#define CLK_IFR_DEBUGSYS 32 -#define CLK_IFR_AUDIO 33 -#define CLK_IFR_PWM_FBCLK6 34 -#define CLK_IFR_DISP_PWM 35 -#define CLK_IFR_AUD_26M_BK 36 -#define CLK_IFR_CQ_DMA 37 -#define CLK_IFR_MSDC0_SF 38 -#define CLK_IFR_MSDC1_SF 39 -#define CLK_IFR_MSDC2_SF 40 -#define CLK_IFR_AP_MSDC0 41 -#define CLK_IFR_MD_MSDC0 42 -#define CLK_IFR_MSDC0_SRC 43 -#define CLK_IFR_MSDC1_SRC 44 -#define CLK_IFR_MSDC2_SRC 45 -#define CLK_IFR_PWRAP_TMR 46 -#define CLK_IFR_PWRAP_SPI 47 -#define CLK_IFR_PWRAP_SYS 48 -#define CLK_IFR_MCU_PM_BK 49 -#define CLK_IFR_IRRX_26M 50 -#define CLK_IFR_IRRX_32K 51 -#define CLK_IFR_I2C0_AXI 52 -#define CLK_IFR_I2C1_AXI 53 -#define CLK_IFR_I2C2_AXI 54 -#define CLK_IFR_I2C3_AXI 55 -#define CLK_IFR_NIC_AXI 56 -#define CLK_IFR_NIC_SLV_AXI 57 -#define CLK_IFR_APU_AXI 58 -#define CLK_IFR_NFIECC 59 -#define CLK_IFR_NFIECC_BK 60 -#define CLK_IFR_NFI1X_BK 61 -#define CLK_IFR_NFI_BK 62 -#define CLK_IFR_MSDC2_AP_BK 63 -#define CLK_IFR_MSDC2_MD_BK 64 -#define CLK_IFR_MSDC2_BK 65 -#define CLK_IFR_SUSB_133_BK 66 -#define CLK_IFR_SUSB_66_BK 67 -#define CLK_IFR_SSUSB_SYS 68 -#define CLK_IFR_SSUSB_REF 69 -#define CLK_IFR_SSUSB_XHCI 70 -#define CLK_IFR_NR_CLK 71 - -/* PERICFG */ -#define CLK_PERIAXI 0 -#define CLK_PERI_NR_CLK 1 - -/* APMIXEDSYS */ -#define CLK_APMIXED_ARMPLL 0 -#define CLK_APMIXED_MAINPLL 1 -#define CLK_APMIXED_UNIVPLL 2 -#define CLK_APMIXED_MFGPLL 3 -#define CLK_APMIXED_MSDCPLL 4 -#define CLK_APMIXED_MMPLL 5 -#define CLK_APMIXED_APLL1 6 -#define CLK_APMIXED_APLL2 7 -#define CLK_APMIXED_LVDSPLL 8 -#define CLK_APMIXED_DSPPLL 9 -#define CLK_APMIXED_APUPLL 10 -#define CLK_APMIXED_UNIV_EN 11 -#define CLK_APMIXED_USB20_EN 12 -#define CLK_APMIXED_NR_CLK 13 - -/* GCE */ -#define CLK_GCE_FAXI 0 -#define CLK_GCE_NR_CLK 1 - -/* AUDIOTOP */ -#define CLK_AUD_AFE 0 -#define CLK_AUD_I2S 1 -#define CLK_AUD_22M 2 -#define CLK_AUD_24M 3 -#define CLK_AUD_INTDIR 4 -#define CLK_AUD_APLL2_TUNER 5 -#define CLK_AUD_APLL_TUNER 6 -#define CLK_AUD_SPDF 7 -#define CLK_AUD_HDMI 8 -#define CLK_AUD_HDMI_IN 9 -#define CLK_AUD_ADC 10 -#define CLK_AUD_DAC 11 -#define CLK_AUD_DAC_PREDIS 12 -#define CLK_AUD_TML 13 -#define CLK_AUD_I2S1_BK 14 -#define CLK_AUD_I2S2_BK 15 -#define CLK_AUD_I2S3_BK 16 -#define CLK_AUD_I2S4_BK 17 -#define CLK_AUD_NR_CLK 18 - -/* MIPI_CSI0A */ -#define CLK_MIPI0A_CSR_CSI_EN_0A 0 -#define CLK_MIPI_RX_ANA_CSI0A_NR_CLK 1 - -/* MIPI_CSI0B */ -#define CLK_MIPI0B_CSR_CSI_EN_0B 0 -#define CLK_MIPI_RX_ANA_CSI0B_NR_CLK 1 - -/* MIPI_CSI1A */ -#define CLK_MIPI1A_CSR_CSI_EN_1A 0 -#define CLK_MIPI_RX_ANA_CSI1A_NR_CLK 1 - -/* MIPI_CSI1B */ -#define CLK_MIPI1B_CSR_CSI_EN_1B 0 -#define CLK_MIPI_RX_ANA_CSI1B_NR_CLK 1 - -/* MIPI_CSI2A */ -#define CLK_MIPI2A_CSR_CSI_EN_2A 0 -#define CLK_MIPI_RX_ANA_CSI2A_NR_CLK 1 - -/* MIPI_CSI2B */ -#define CLK_MIPI2B_CSR_CSI_EN_2B 0 -#define CLK_MIPI_RX_ANA_CSI2B_NR_CLK 1 - -/* MCUCFG */ -#define CLK_MCU_BUS_SEL 0 -#define CLK_MCU_NR_CLK 1 - -/* MFGCFG */ -#define CLK_MFG_BG3D 0 -#define CLK_MFG_MBIST_DIAG 1 -#define CLK_MFG_NR_CLK 2 - -/* MMSYS */ -#define CLK_MM_MM_MDP_RDMA0 0 -#define CLK_MM_MM_MDP_CCORR0 1 -#define CLK_MM_MM_MDP_RSZ0 2 -#define CLK_MM_MM_MDP_RSZ1 3 -#define CLK_MM_MM_MDP_TDSHP0 4 -#define CLK_MM_MM_MDP_WROT0 5 -#define CLK_MM_MM_MDP_WDMA0 6 -#define CLK_MM_MM_DISP_OVL0 7 -#define CLK_MM_MM_DISP_OVL0_2L 8 -#define CLK_MM_MM_DISP_RSZ0 9 -#define CLK_MM_MM_DISP_RDMA0 10 -#define CLK_MM_MM_DISP_WDMA0 11 -#define CLK_MM_MM_DISP_COLOR0 12 -#define CLK_MM_MM_DISP_CCORR0 13 -#define CLK_MM_MM_DISP_AAL0 14 -#define CLK_MM_MM_DISP_GAMMA0 15 -#define CLK_MM_MM_DISP_DITHER0 16 -#define CLK_MM_MM_DSI0 17 -#define CLK_MM_MM_DISP_RDMA1 18 -#define CLK_MM_MM_MDP_RDMA1 19 -#define CLK_MM_DPI0_DPI0 20 -#define CLK_MM_MM_FAKE 21 -#define CLK_MM_MM_SMI_COMMON 22 -#define CLK_MM_MM_SMI_LARB0 23 -#define CLK_MM_MM_SMI_COMM0 24 -#define CLK_MM_MM_SMI_COMM1 25 -#define CLK_MM_MM_CAM_MDP 26 -#define CLK_MM_MM_SMI_IMG 27 -#define CLK_MM_MM_SMI_CAM 28 -#define CLK_MM_IMG_IMG_DL_RELAY 29 -#define CLK_MM_IMG_IMG_DL_ASYNC_TOP 30 -#define CLK_MM_DSI0_DIG_DSI 31 -#define CLK_MM_26M_HRTWT 32 -#define CLK_MM_MM_DPI0 33 -#define CLK_MM_LVDSTX_PXL 34 -#define CLK_MM_LVDSTX_CTS 35 -#define CLK_MM_NR_CLK 36 - -/* IMGSYS */ -#define CLK_CAM_LARB2 0 -#define CLK_CAM 1 -#define CLK_CAMTG 2 -#define CLK_CAM_SENIF 3 -#define CLK_CAMSV0 4 -#define CLK_CAMSV1 5 -#define CLK_CAM_FDVT 6 -#define CLK_CAM_WPE 7 -#define CLK_CAM_NR_CLK 8 - -/* VDECSYS */ -#define CLK_VDEC_VDEC 0 -#define CLK_VDEC_LARB1 1 -#define CLK_VDEC_NR_CLK 2 - -/* VENCSYS */ -#define CLK_VENC 0 -#define CLK_VENC_JPGENC 1 -#define CLK_VENC_NR_CLK 2 - -/* APUSYS */ -#define CLK_APU_IPU_CK 0 -#define CLK_APU_AXI 1 -#define CLK_APU_JTAG 2 -#define CLK_APU_IF_CK 3 -#define CLK_APU_EDMA 4 -#define CLK_APU_AHB 5 -#define CLK_APU_NR_CLK 6 - -#endif /* _DT_BINDINGS_CLK_MT8365_H */ diff --git a/include/dt-bindings/power/xlnx-versal-power.h b/include/dt-bindings/power/xlnx-versal-power.h deleted file mode 100644 index 51d1def6773..00000000000 --- a/include/dt-bindings/power/xlnx-versal-power.h +++ /dev/null @@ -1,54 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -/* - * Copyright (C) 2019 - 2021 Xilinx, Inc. - */ - -#ifndef _DT_BINDINGS_VERSAL_POWER_H -#define _DT_BINDINGS_VERSAL_POWER_H - -#define PM_DEV_RPU0_0 (0x18110005U) -#define PM_DEV_RPU0_1 (0x18110006U) -#define PM_DEV_OCM_0 (0x18314007U) -#define PM_DEV_OCM_1 (0x18314008U) -#define PM_DEV_OCM_2 (0x18314009U) -#define PM_DEV_OCM_3 (0x1831400aU) -#define PM_DEV_TCM_0_A (0x1831800bU) -#define PM_DEV_TCM_0_B (0x1831800cU) -#define PM_DEV_TCM_1_A (0x1831800dU) -#define PM_DEV_TCM_1_B (0x1831800eU) -#define PM_DEV_USB_0 (0x18224018U) -#define PM_DEV_GEM_0 (0x18224019U) -#define PM_DEV_GEM_1 (0x1822401aU) -#define PM_DEV_SPI_0 (0x1822401bU) -#define PM_DEV_SPI_1 (0x1822401cU) -#define PM_DEV_I2C_0 (0x1822401dU) -#define PM_DEV_I2C_1 (0x1822401eU) -#define PM_DEV_CAN_FD_0 (0x1822401fU) -#define PM_DEV_CAN_FD_1 (0x18224020U) -#define PM_DEV_UART_0 (0x18224021U) -#define PM_DEV_UART_1 (0x18224022U) -#define PM_DEV_GPIO (0x18224023U) -#define PM_DEV_TTC_0 (0x18224024U) -#define PM_DEV_TTC_1 (0x18224025U) -#define PM_DEV_TTC_2 (0x18224026U) -#define PM_DEV_TTC_3 (0x18224027U) -#define PM_DEV_SWDT_FPD (0x18224029U) -#define PM_DEV_OSPI (0x1822402aU) -#define PM_DEV_QSPI (0x1822402bU) -#define PM_DEV_GPIO_PMC (0x1822402cU) -#define PM_DEV_I2C_PMC (0x1822402dU) -#define PM_DEV_SDIO_0 (0x1822402eU) -#define PM_DEV_SDIO_1 (0x1822402fU) -#define PM_DEV_RTC (0x18224034U) -#define PM_DEV_ADMA_0 (0x18224035U) -#define PM_DEV_ADMA_1 (0x18224036U) -#define PM_DEV_ADMA_2 (0x18224037U) -#define PM_DEV_ADMA_3 (0x18224038U) -#define PM_DEV_ADMA_4 (0x18224039U) -#define PM_DEV_ADMA_5 (0x1822403aU) -#define PM_DEV_ADMA_6 (0x1822403bU) -#define PM_DEV_ADMA_7 (0x1822403cU) -#define PM_DEV_AMS_ROOT (0x18224055U) -#define PM_DEV_AI (0x18224072U) - -#endif diff --git a/include/efi_selftest.h b/include/efi_selftest.h index 1b708849bcb..874f8b5efe7 100644 --- a/include/efi_selftest.h +++ b/include/efi_selftest.h @@ -19,6 +19,7 @@ extern const struct efi_system_table *st_systable; extern const struct efi_boot_services *st_boottime; +extern const struct efi_runtime_services *st_runtime; /** * efi_st_printf() - print a message @@ -150,13 +151,11 @@ u16 efi_st_get_key(void); /** * efi_st_query_variable_common - Common variable tests for boottime/runtime * - * @runtime: Pointer to services table * @attributes: Attributes used * * Return: EFI_ST_SUCCESS/FAILURE */ -int efi_st_query_variable_common(struct efi_runtime_services *runtime, - u32 attributes); +int efi_st_query_variable_common(u32 attributes); /** * struct efi_unit_test - EFI unit test diff --git a/include/env/adi/adi_boot.env b/include/env/adi/adi_boot.env index 7f0dfe15ff9..db4148b1af9 100644 --- a/include/env/adi/adi_boot.env +++ b/include/env/adi/adi_boot.env @@ -20,10 +20,8 @@ ethaddr=02:80:ad:20:31:e8 eth1addr=02:80:ad:20:31:e9 uart_console=CONFIG_UART_CONSOLE #ifdef CONFIG_SC59X_64 -fdt_high=0xffffffffffffffff initrd_high=0xffffffffffffffff #else -fdt_high=0xffffffff initrd_high=0xffffffff #endif diff --git a/include/fb_block.h b/include/fb_block.h new file mode 100644 index 00000000000..189c708e2f0 --- /dev/null +++ b/include/fb_block.h @@ -0,0 +1,105 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * Copyright (C) 2024 The Android Open Source Project + */ + +#ifndef _FB_BLOCK_H_ +#define _FB_BLOCK_H_ + +struct blk_desc; +struct disk_partition; + +/** + * fastboot_block_get_part_info() - Lookup block partition by name + * + * @part_name: Named partition to lookup + * @dev_desc: Pointer to returned blk_desc pointer + * @part_info: Pointer to returned struct disk_partition + * @response: Pointer to fastboot response buffer + * Return: 0 on success, -ve on error + */ +int fastboot_block_get_part_info(const char *part_name, + struct blk_desc **dev_desc, + struct disk_partition *part_info, + char *response); + +/** + * fastboot_block_raw_erase() - Erase raw block device partition + * + * @dev_desc: Block device we're going write to + * @info: Partition we're going write to + * @part_name: Name of partition we're going write to + * @alignment: erase start and size alignment, specify 0 to ignore + * @response: Pointer to fastboot response buffer + */ +void fastboot_block_raw_erase(struct blk_desc *dev_desc, struct disk_partition *info, + const char *part_name, uint alignment, char *response); + +/** + * fastboot_block_raw_erase_disk() - Erase raw block device + * + * @dev_desc: Block device we're going write to + * @disk_name: Name of disk we're going write to + * @response: Pointer to fastboot response buffer + */ +void fastboot_block_raw_erase_disk(struct blk_desc *dev_desc, const char *disk_name, + char *response); + +/** + * fastboot_block_erase() - Erase partition on block device for fastboot + * + * @part_name: Named partition to erase + * @response: Pointer to fastboot response buffer + */ +void fastboot_block_erase(const char *part_name, char *response); + +/** + * fastboot_block_write_raw_disk() - Write raw image to block device + * + * @dev_desc: Block device we're going write to + * @disk_name: Name of disk we're going write to + * @buffer: Downloaded buffer pointer + * @download_bytes: Size of content on downloaded buffer pointer + * @response: Pointer to fastboot response buffer + */ +void fastboot_block_write_raw_disk(struct blk_desc *dev_desc, const char *disk_name, + void *buffer, u32 download_bytes, char *response); + +/** + * fastboot_block_write_raw_image() - Write raw image to block device partition + * + * @dev_desc: Block device we're going write to + * @info: Partition we're going write to + * @part_name: Name of partition we're going write to + * @buffer: Downloaded buffer pointer + * @download_bytes: Size of content on downloaded buffer pointer + * @response: Pointer to fastboot response buffer + */ +void fastboot_block_write_raw_image(struct blk_desc *dev_desc, + struct disk_partition *info, const char *part_name, + void *buffer, u32 download_bytes, char *response); + +/** + * fastboot_block_write_sparse_image() - Write sparse image to block device partition + * + * @dev_desc: Block device we're going write to + * @info: Partition we're going write to + * @part_name: Name of partition we're going write to + * @buffer: Downloaded buffer pointer + * @response: Pointer to fastboot response buffer + */ +void fastboot_block_write_sparse_image(struct blk_desc *dev_desc, struct disk_partition *info, + const char *part_name, void *buffer, char *response); + +/** + * fastboot_block_flash_write() - Write image to block device for fastboot + * + * @part_name: Named partition to write image to + * @download_buffer: Pointer to image data + * @download_bytes: Size of image data + * @response: Pointer to fastboot response buffer + */ +void fastboot_block_flash_write(const char *part_name, void *download_buffer, + u32 download_bytes, char *response); + +#endif // _FB_BLOCK_H_ diff --git a/include/i2c.h b/include/i2c.h index 91917f54be9..b2572076236 100644 --- a/include/i2c.h +++ b/include/i2c.h @@ -550,19 +550,6 @@ int i2c_get_chip_by_phandle(const struct udevice *parent, const char *prop_name, struct udevice **devp); /** - * i2c_chip_of_to_plat() - Decode standard I2C platform data - * - * This decodes the chip address from a device tree node and puts it into - * its dm_i2c_chip structure. This should be called in your driver's - * of_to_plat() method. - * - * @blob: Device tree blob - * @node: Node offset to read from - * @spi: Place to put the decoded information - */ -int i2c_chip_of_to_plat(struct udevice *dev, struct dm_i2c_chip *chip); - -/** * i2c_dump_msgs() - Dump a list of I2C messages * * This may be useful for debugging. diff --git a/include/image.h b/include/image.h index 9a1c828416d..34efac6056d 100644 --- a/include/image.h +++ b/include/image.h @@ -234,6 +234,7 @@ enum image_type_t { IH_TYPE_STARFIVE_SPL, /* StarFive SPL image */ IH_TYPE_TFA_BL31, /* TFA BL31 image */ IH_TYPE_STM32IMAGE_V2, /* STMicroelectronics STM32 Image V2.0 */ + IH_TYPE_AMLIMAGE, /* Amlogic Boot Image */ IH_TYPE_COUNT, /* Number of image types */ }; @@ -1105,6 +1106,8 @@ int booti_setup(ulong image, ulong *relocated_addr, ulong *size, #define FIT_SCRIPT_PROP "script" #define FIT_PHASE_PROP "phase" #define FIT_TFA_BL31_PROP "tfa-bl31" +#define FIT_TEE_PROP "tee" +#define FIT_COMPAT_PROP "compatible" #define FIT_MAX_HASH_LEN HASH_MAX_DIGEST_SIZE diff --git a/include/interconnect-uclass.h b/include/interconnect-uclass.h new file mode 100644 index 00000000000..d942ddec41b --- /dev/null +++ b/include/interconnect-uclass.h @@ -0,0 +1,136 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (c) 2025 Linaro Limited + */ + +#ifndef _INTERCONNECT_UCLASS_H +#define _INTERCONNECT_UCLASS_H + +#include <interconnect.h> + +#define icc_units_to_bps(bw) ((bw) * 1000ULL) + +struct udevice; + +/** + * struct icc_req - constraints that are attached to each node + * + * @req_node: entry in list of requests for the particular @node + * @node: the interconnect node to which this constraint applies + * @enabled: indicates whether the path with this request is enabled + * @tag: path tag (optional) + * @avg_bw: an integer describing the average bandwidth in kBps + * @peak_bw: an integer describing the peak bandwidth in kBps + */ +struct icc_req { + struct hlist_node req_node; + struct icc_node *node; + bool enabled; + u32 tag; + u32 avg_bw; + u32 peak_bw; +}; + +/** + * struct icc_path - An interconnect path + * + * @dev: Device who requested the path + * @num_nodes: number of nodes (hops) in the path + * @reqs: array of the requests applicable to this path of nodes + */ +struct icc_path { + struct udevice *dev; + size_t num_nodes; + struct icc_req reqs[]; +}; + +/** + * struct icc_provider - interconnect provider (controller) entity that might + * provide multiple interconnect controls + * + * @inter_set: whether inter-provider pairs will be configured with @set + * @xlate_num_nodes: provider-specific nodes counts for mapping nodes from phandle arguments + * @xlate_nodes: provider-specific array for mapping nodes from phandle arguments + */ +struct icc_provider { + bool inter_set; + unsigned int xlate_num_nodes; + struct icc_node **xlate_nodes; +}; + +/** + * struct icc_node - entity that is part of the interconnect topology + * + * @dev: points to the interconnect provider of this node + * @links: a list of targets pointing to where we can go next when traversing + * @num_links: number of links to other interconnect nodes + * @users: count of active users + * @node_list: the list entry in the parent provider's "nodes" list + * @search_list: list used when walking the nodes graph + * @reverse: pointer to previous node when walking the nodes graph + * @is_traversed: flag that is used when walking the nodes graph + * @req_list: a list of QoS constraint requests associated with this node + * @avg_bw: aggregated value of average bandwidth requests from all consumers + * @peak_bw: aggregated value of peak bandwidth requests from all consumers + * @data: pointer to private data + */ +struct icc_node { + struct udevice *dev; + ulong *links; + size_t num_links; + int users; + + struct list_head node_list; + struct list_head search_list; + struct icc_node *reverse; + u8 is_traversed:1; + struct hlist_head req_list; + u32 avg_bw; + u32 peak_bw; + void *data; +}; + +/** + * struct interconnect_ops - Interconnect uclass operations + * + * @of_xlate: provider-specific callback for mapping nodes from phandle arguments + * @set: pointer to device specific set operation function + * @pre_aggregate: pointer to device specific function that is called + * before the aggregation begins (optional) + * @aggregate: pointer to device specific aggregate operation function + */ +struct interconnect_ops { + struct icc_node *(*of_xlate)(struct udevice *dev, + const struct ofnode_phandle_args *args); + int (*set)(struct icc_node *src, struct icc_node *dst); + void (*pre_aggregate)(struct icc_node *node); + int (*aggregate)(struct icc_node *node, u32 tag, u32 avg_bw, + u32 peak_bw, u32 *agg_avg, u32 *agg_peak); +}; + +/** + * icc_node_create() - create a node + * + * @dev: Provider device + * @id: node id, can be a numeric ID or pointer casted to ulong + * @name: node name + * + * Return: icc_node pointer on success, or ERR_PTR() on error + */ +struct icc_node *icc_node_create(struct udevice *dev, + ulong id, const char *name); + +/** + * icc_link_create() - create a link between two nodes + * @node: source node id + * @dst_id: destination node id + * + * Create a link between two nodes. The nodes might belong to different + * interconnect providers and the @dst_id node might not exist, the link + * will be done at runtime in `icc_path_find()`. + * + * Return: 0 on success, or an error code otherwise + */ +int icc_link_create(struct icc_node *node, const ulong dst_id); + +#endif diff --git a/include/interconnect.h b/include/interconnect.h new file mode 100644 index 00000000000..11ed30d79d6 --- /dev/null +++ b/include/interconnect.h @@ -0,0 +1,155 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (c) 2025 Linaro Limited + */ + +#ifndef _INTERCONNECT_H +#define _INTERCONNECT_H + +#include <linux/errno.h> + +struct udevice; + +/* macros for converting to icc units */ +#define Bps_to_icc(x) ((x) / 1000) +#define kBps_to_icc(x) (x) +#define MBps_to_icc(x) ((x) * 1000) +#define GBps_to_icc(x) ((x) * 1000 * 1000) +#define bps_to_icc(x) (1) +#define kbps_to_icc(x) ((x) / 8 + ((x) % 8 ? 1 : 0)) +#define Mbps_to_icc(x) ((x) * 1000 / 8) +#define Gbps_to_icc(x) ((x) * 1000 * 1000 / 8) + +struct icc_path; + +/** + * of_icc_get - Get an Interconnect path from a DT node based on name + * + * This function will search for a path between two endpoints and return an + * icc_path handle on success. Use icc_put() to release constraints when they + * are not needed anymore. + * If the interconnect API is disabled, NULL is returned and the consumer + * drivers will still build. Drivers are free to handle this specifically, + * but they don't have to. + * + * @dev: The client device. + * @name: Name of the interconnect endpoint pair. + * Return: icc_path pointer on success or ERR_PTR() on error. NULL is returned + * when the API is disabled or the "interconnects" DT property is missing. + */ +#if CONFIG_IS_ENABLED(INTERCONNECT) +struct icc_path *of_icc_get(struct udevice *dev, const char *name); +#else +static inline +struct icc_path *of_icc_get(struct udevice *dev, const char *name) +{ + return NULL; +} +#endif + +/** + * of_icc_get - Get an Interconnect path from a DT node based on index + * + * This function will search for a path between two endpoints and return an + * icc_path handle on success. Use icc_put() to release constraints when they + * are not needed anymore. + * If the interconnect API is disabled, NULL is returned and the consumer + * drivers will still build. Drivers are free to handle this specifically, + * but they don't have to. + * + * @dev: The client device. + * @idx: Index of the interconnect endpoint pair. + * Return: icc_path pointer on success or ERR_PTR() on error. NULL is returned + * when the API is disabled or the "interconnects" DT property is missing. + */ +#if CONFIG_IS_ENABLED(INTERCONNECT) +struct icc_path *of_icc_get_by_index(struct udevice *dev, int idx); +#else +static inline +struct icc_path *of_icc_get_by_index(struct udevice *dev, int idx) +{ + return NULL; +} +#endif + +/** + * icc_put - release the reference to the Interconnect path. + * + * Use this function to release the constraints on a path when the path is + * no longer needed. The constraints will be re-aggregated. + * + * @path: An interconnect path + * Return: 0 if OK, or a negative error code. + */ +#if CONFIG_IS_ENABLED(INTERCONNECT) +int icc_put(struct icc_path *path); +#else +static inline int icc_put(struct icc_path *path) +{ + return 0; +} +#endif + +/** + * icc_enable - Enable an Interconnect path. + * + * This will enable all the endpoints in the path, using the + * bandwidth set by the `icc_set_bw()` call. Otherwise a zero + * bandwidth will be set. Usually used after a call to `icc_disable()`. + * + * @path: An interconnect path + * Return: 0 if OK, or a negative error code. -ENOSYS if not implemented. + */ +#if CONFIG_IS_ENABLED(INTERCONNECT) +int icc_enable(struct icc_path *path); +#else +static inline int icc_enable(struct icc_path *path) +{ + return -ENOSYS; +} +#endif + +/** + * icc_disable - Disable an Interconnect path. + * + * This will disable all the endpoints in the path, effectively setting + * a zero bandwidth. Calling `icc_enable()` will restore the bandwidth set + * by calling `icc_set_bw()`. + * + * @path: An interconnect path + * Return: 0 if OK, or a negative error code. -ENOSYS if not implemented. + */ +#if CONFIG_IS_ENABLED(INTERCONNECT) +int icc_disable(struct icc_path *path); +#else +static inline int icc_disable(struct icc_path *path) +{ + return -ENOSYS; +} +#endif + +/** + * icc_set_bw - set bandwidth constraints on an interconnect path. + * + * This function is used by an interconnect consumer to express its own needs + * in terms of bandwidth for a previously requested path between two endpoints. + * The requests are aggregated and each node is updated accordingly. The entire + * path is locked by a mutex to ensure that the set() is completed. + * The @path can be NULL when the "interconnects" DT properties is missing, + * which will mean that no constraints will be set. + * + * @path: An interconnect path + * @avg_bw: Average bandwidth request in kBps + * @peak_bw: Peak bandwidth in request kBps + * Return: 0 if OK, or a negative error code. -ENOSYS if not implemented. + */ +#if CONFIG_IS_ENABLED(INTERCONNECT) +int icc_set_bw(struct icc_path *path, u32 avg_bw, u32 peak_bw); +#else +static inline int icc_set_bw(struct icc_path *path, u32 avg_bw, u32 peak_bw) +{ + return -ENOSYS; +} +#endif + +#endif diff --git a/include/ipu_pixfmt.h b/include/ipu_pixfmt.h index 866ead0ec71..a485d713805 100644 --- a/include/ipu_pixfmt.h +++ b/include/ipu_pixfmt.h @@ -11,6 +11,7 @@ #ifndef __IPU_PIXFMT_H__ #define __IPU_PIXFMT_H__ +#include <dm/device.h> #include <linux/list.h> #include <linux/fb.h> @@ -62,6 +63,6 @@ int ipuv3_fb_init(struct fb_videomode const *mode, uint8_t disp, uint32_t pixfmt); -void ipuv3_fb_shutdown(void); +void ipuv3_fb_shutdown(struct udevice *dev); #endif diff --git a/include/linux/bitops.h b/include/linux/bitops.h index f826d7f3b34..29e0da48de8 100644 --- a/include/linux/bitops.h +++ b/include/linux/bitops.h @@ -148,6 +148,17 @@ static inline unsigned long hweight_long(unsigned long w) return sizeof(w) == 4 ? generic_hweight32(w) : generic_hweight64(w); } +/** + * rol32 - rotate a 32-bit value left + * @word: value to rotate + * @shift: bits to roll + */ + +static inline __u32 rol32(__u32 word, unsigned int shift) +{ + return (word << (shift & 31)) | (word >> ((-shift) & 31)); +} + #include <asm/bitops.h> /* linux/include/asm-generic/bitops/non-atomic.h */ diff --git a/include/miiphy.h b/include/miiphy.h index 96afe5f4030..817d77add37 100644 --- a/include/miiphy.h +++ b/include/miiphy.h @@ -29,9 +29,6 @@ int miiphy_reset(const char *devname, unsigned char addr); int miiphy_speed(const char *devname, unsigned char addr); int miiphy_duplex(const char *devname, unsigned char addr); int miiphy_is_1000base_x(const char *devname, unsigned char addr); -#ifdef CONFIG_SYS_FAULT_ECHO_LINK_DOWN -int miiphy_link(const char *devname, unsigned char addr); -#endif int miiphy_set_current_dev(const char *devname); const char *miiphy_get_current_dev(void); diff --git a/include/part.h b/include/part.h index 6caaa6526aa..daebbbc2e68 100644 --- a/include/part.h +++ b/include/part.h @@ -461,7 +461,8 @@ ulong disk_blk_erase(struct udevice *dev, lbaint_t start, lbaint_t blkcnt); #ifdef CONFIG_XPL_BUILD # define part_print_ptr(x) NULL # if defined(CONFIG_SPL_FS_EXT4) || defined(CONFIG_SPL_FS_FAT) || \ - defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION) + defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION) || \ + defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION_TYPE) # define part_get_info_ptr(x) x # else # define part_get_info_ptr(x) NULL @@ -509,6 +510,22 @@ struct part_driver { int (*test)(struct blk_desc *desc); }; +/** + * part_driver_get_info() - Call the part_driver's get_info method + * + * On success, string members of info are guaranteed to be properly + * initialized, though they may be empty. + * + * @drv: Partition driver + * @desc: Block device descriptor + * @part: Partition number to read + * @info: Returned partition information + * + * Return: 0 on success, negative errno on failure. + */ +int part_driver_get_info(struct part_driver *drv, struct blk_desc *desc, int part, + struct disk_partition *info); + /* Declare a new U-Boot partition 'driver' */ #define U_BOOT_PART_TYPE(__name) \ ll_entry_declare(struct part_driver, __name, part_driver) diff --git a/include/reboot-mode/reboot-mode-gpio.h b/include/reboot-mode/reboot-mode-gpio.h index 16b1185c698..e862d94fadf 100644 --- a/include/reboot-mode/reboot-mode-gpio.h +++ b/include/reboot-mode/reboot-mode-gpio.h @@ -9,7 +9,7 @@ #include <asm/gpio.h> /* - * In case of initializing the driver statically (using U_BOOT_DEVICE macro), + * In case of initializing the driver statically (using U_BOOT_DRVINFO macro), * we can use this struct to declare the pins used. */ diff --git a/include/sdhci.h b/include/sdhci.h index d9c0597a0c1..fb847821d58 100644 --- a/include/sdhci.h +++ b/include/sdhci.h @@ -223,6 +223,9 @@ #define SDHCI_SPEC_100 0 #define SDHCI_SPEC_200 1 #define SDHCI_SPEC_300 2 +#define SDHCI_SPEC_400 3 +#define SDHCI_SPEC_410 4 +#define SDHCI_SPEC_420 5 #define SDHCI_GET_VERSION(x) (x->version & SDHCI_SPEC_VER_MASK) diff --git a/include/soc/qcom/cmd-db.h b/include/soc/qcom/cmd-db.h index 1190f2c22ca..16609ac9d78 100644 --- a/include/soc/qcom/cmd-db.h +++ b/include/soc/qcom/cmd-db.h @@ -21,6 +21,8 @@ enum cmd_db_hw_type { #if IS_ENABLED(CONFIG_QCOM_COMMAND_DB) u32 cmd_db_read_addr(const char *resource_id); +enum cmd_db_hw_type cmd_db_read_slave_id(const char *resource_id); +const void *cmd_db_read_aux_data(const char *resource_id, size_t *len); #else static inline u32 cmd_db_read_addr(const char *resource_id) diff --git a/include/status_led.h b/include/status_led.h index 1282022253e..c3ff399b1ae 100644 --- a/include/status_led.h +++ b/include/status_led.h @@ -46,23 +46,7 @@ static inline void status_led_boot_blink(void) #endif } -/***** MVS v1 **********************************************************/ -#if (defined(CONFIG_MVS) && CONFIG_MVS < 2) -# define STATUS_LED_PAR im_ioport.iop_pdpar -# define STATUS_LED_DIR im_ioport.iop_pddir -# undef STATUS_LED_ODR -# define STATUS_LED_DAT im_ioport.iop_pddat - -# define STATUS_LED_ACTIVE 1 /* LED on for bit == 1 */ - -/***** Someone else defines these *************************************/ -#elif defined(STATUS_LED_PAR) - /* - * ADVICE: Define in your board configuration file rather than - * filling this file up with lots of custom board stuff. - */ - -#elif defined(CONFIG_LED_STATUS_BOARD_SPECIFIC) +#if defined(CONFIG_LED_STATUS_BOARD_SPECIFIC) /* led_id_t is unsigned long mask */ typedef unsigned long led_id_t; @@ -73,11 +57,6 @@ void __led_blink(led_id_t mask, int freq); #else # error Status LED configuration missing #endif -/************************************************************************/ - -#ifndef CONFIG_LED_STATUS_BOARD_SPECIFIC -# include <asm/status_led.h> -#endif #else @@ -86,30 +65,4 @@ static inline void status_led_set(int led, int state) { } static inline void status_led_boot_blink(void) { } #endif /* CONFIG_LED_STATUS */ - -/* - * Coloured LEDs API - */ -#ifndef __ASSEMBLY__ -void coloured_LED_init(void); -void red_led_on(void); -void red_led_off(void); -void green_led_on(void); -void green_led_off(void); -void yellow_led_on(void); -void yellow_led_off(void); -void blue_led_on(void); -void blue_led_off(void); -#else - .extern LED_init - .extern red_led_on - .extern red_led_off - .extern yellow_led_on - .extern yellow_led_off - .extern green_led_on - .extern green_led_off - .extern blue_led_on - .extern blue_led_off -#endif - #endif /* _STATUS_LED_H_ */ diff --git a/include/tpm-v2.h b/include/tpm-v2.h index f3eb2ef5643..a776d24d71f 100644 --- a/include/tpm-v2.h +++ b/include/tpm-v2.h @@ -345,6 +345,18 @@ static const struct digest_info hash_algo_list[] = { false, #endif }, + { + "sm3_256", + TPM2_ALG_SM3_256, + TCG2_BOOT_HASH_ALG_SM3_256, + TPM2_SM3_256_DIGEST_SIZE, +#if IS_ENABLED(CONFIG_SM3) + true, +#else + false, +#endif + }, + }; /* NV index attributes */ diff --git a/include/u-boot/sm3.h b/include/u-boot/sm3.h new file mode 100644 index 00000000000..b4ead96c776 --- /dev/null +++ b/include/u-boot/sm3.h @@ -0,0 +1,35 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef _SM3_H +#define _SM3_H + +#define SM3_DIGEST_SIZE 32 /* 256 bits */ +#define SM3_BLOCK_SIZE 64 /* 512 bits */ +#define SM3_PAD_UNIT 56 /* 448 bits */ + +#define SM3_T1 0x79CC4519 +#define SM3_T2 0x7A879D8A + +#define SM3_IVA 0x7380166f +#define SM3_IVB 0x4914b2b9 +#define SM3_IVC 0x172442d7 +#define SM3_IVD 0xda8a0600 +#define SM3_IVE 0xa96f30bc +#define SM3_IVF 0x163138aa +#define SM3_IVG 0xe38dee4d +#define SM3_IVH 0xb0fb0e4e + +struct sm3_context { + uint32_t state[SM3_DIGEST_SIZE / 4]; + uint64_t count; /* Message length in bits */ + uint8_t buffer[SM3_BLOCK_SIZE]; + int buflen; +}; + +void sm3_init(struct sm3_context *sctx); +void sm3_update(struct sm3_context *sctx, const uint8_t *input, size_t ilen); +void sm3_final(struct sm3_context *sctx, uint8_t output[SM3_DIGEST_SIZE]); +void sm3_hash(const uint8_t *input, size_t ilen, uint8_t output[SM3_DIGEST_SIZE]); + +void sm3_csum_wd(const unsigned char *input, uint32_t len, + unsigned char *output, unsigned int chunk_sz); +#endif diff --git a/include/zynqmp_firmware.h b/include/zynqmp_firmware.h index 7f93241b193..05df49f292a 100644 --- a/include/zynqmp_firmware.h +++ b/include/zynqmp_firmware.h @@ -521,4 +521,12 @@ typedef int (*smc_call_handler_t)(u32 api_id, u32 arg0, u32 arg1, u32 arg2, extern smc_call_handler_t __data smc_call_handler; +#define PM_MODULE_ID 2 + +#define PASS_THROUGH_FW_CMD_ID GENMASK(11, 0) +#define PLM_MODULE_ID_MASK GENMASK(15, 8) +#define API_ID_MASK GENMASK(7, 0) + +#define PM_DEV_OSPI (0x1822402aU) + #endif /* _ZYNQMP_FIRMWARE_H_ */ |
