All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] scmi: Rework SCMI_FIRMWARE implementation
@ 2026-03-17  1:24 Tom Rini
  2026-03-17  5:35 ` Peng Fan
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Tom Rini @ 2026-03-17  1:24 UTC (permalink / raw)
  To: u-boot
  Cc: Marek Vasut, Michal Simek, Nobuhiro Iwamatsu, Patrice Chotard,
	Patrick Delaunay, Peng Fan, Simon Glass, uboot-stm32

As exposed by "make randconfig", how we have SCMI_FIRMWARE today is
incomplete, and in one case, used incorrectly. First, SCMI_FIRMWARE has
a build-time dependency on OF_CONTROL being enabled, so add that.
Second, RESET_SCMI depends on SCMI_FIRMWARE being enabled, it should not
select that symbol. In turn, a number of platforms need to now enable
SCMI_FIRMWARE explicitly and not rely on RESET_SCMI to enable it for
them.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
Cc: Marek Vasut <marek.vasut+renesas@mailbox.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Cc: Patrice Chotard <patrice.chotard@foss.st.com>
Cc: Patrick Delaunay <patrick.delaunay@foss.st.com>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: uboot-stm32@st-md-mailman.stormreply.com
---
 configs/amd_versal2_virt_defconfig  | 1 +
 configs/r8a78000_ironhide_defconfig | 1 +
 configs/sandbox_defconfig           | 1 +
 configs/stm32mp13_defconfig         | 1 +
 configs/stm32mp15-odyssey_defconfig | 1 +
 configs/stm32mp15_defconfig         | 1 +
 configs/stm32mp15_trusted_defconfig | 1 +
 configs/stm32mp21_defconfig         | 1 +
 configs/stm32mp23_defconfig         | 1 +
 configs/stm32mp25_defconfig         | 1 +
 drivers/firmware/scmi/Kconfig       | 1 +
 drivers/reset/Kconfig               | 2 +-
 12 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/configs/amd_versal2_virt_defconfig b/configs/amd_versal2_virt_defconfig
index 94dce5c191c4..8cc210946539 100644
--- a/configs/amd_versal2_virt_defconfig
+++ b/configs/amd_versal2_virt_defconfig
@@ -80,6 +80,7 @@ CONFIG_CLK_SCMI=y
 CONFIG_CLK_VERSAL=y
 CONFIG_DFU_RAM=y
 CONFIG_ARM_FFA_TRANSPORT=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_FPGA_XILINX=y
 CONFIG_FPGA_VERSALPL=y
 CONFIG_DM_I2C=y
diff --git a/configs/r8a78000_ironhide_defconfig b/configs/r8a78000_ironhide_defconfig
index 180704e75af8..64e2c278a7e0 100644
--- a/configs/r8a78000_ironhide_defconfig
+++ b/configs/r8a78000_ironhide_defconfig
@@ -29,6 +29,7 @@ CONFIG_FIRMWARE=y
 CONFIG_NR_DRAM_BANKS=16
 CONFIG_POWER_DOMAIN=y
 CONFIG_RCAR_MFIS_MBOX=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_RESET_SCMI=y
 CONFIG_SCMI_AGENT_MAILBOX=y
 CONFIG_SCMI_FIRMWARE=y
diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index 36bf37827e91..b681b91c3f99 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -209,6 +209,7 @@ CONFIG_SANDBOX_DMA=y
 CONFIG_FASTBOOT_FLASH=y
 CONFIG_FASTBOOT_FLASH_MMC_DEV=0
 CONFIG_ARM_FFA_TRANSPORT=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_FPGA_ALTERA=y
 CONFIG_FPGA_STRATIX_II=y
 CONFIG_FPGA_STRATIX_V=y
diff --git a/configs/stm32mp13_defconfig b/configs/stm32mp13_defconfig
index 6bd139441122..620a6da2efe3 100644
--- a/configs/stm32mp13_defconfig
+++ b/configs/stm32mp13_defconfig
@@ -70,6 +70,7 @@ CONFIG_FASTBOOT_FLASH=y
 CONFIG_FASTBOOT_FLASH_MMC_DEV=0
 CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
 CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_GPIO_HOG=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_STM32F7=y
diff --git a/configs/stm32mp15-odyssey_defconfig b/configs/stm32mp15-odyssey_defconfig
index 868ba1915f71..5d1c01c99fb3 100644
--- a/configs/stm32mp15-odyssey_defconfig
+++ b/configs/stm32mp15-odyssey_defconfig
@@ -86,6 +86,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
 CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
 CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
 CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_GPIO_HOG=y
 CONFIG_DM_HWSPINLOCK=y
 CONFIG_HWSPINLOCK_STM32=y
diff --git a/configs/stm32mp15_defconfig b/configs/stm32mp15_defconfig
index af2efc7bceb0..c26602b63b6f 100644
--- a/configs/stm32mp15_defconfig
+++ b/configs/stm32mp15_defconfig
@@ -88,6 +88,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
 CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
 CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
 CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_GPIO_HOG=y
 CONFIG_DM_HWSPINLOCK=y
 CONFIG_HWSPINLOCK_STM32=y
diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
index 226d83357843..d7501612a797 100644
--- a/configs/stm32mp15_trusted_defconfig
+++ b/configs/stm32mp15_trusted_defconfig
@@ -89,6 +89,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
 CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
 CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
 CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_GPIO_HOG=y
 CONFIG_DM_HWSPINLOCK=y
 CONFIG_HWSPINLOCK_STM32=y
diff --git a/configs/stm32mp21_defconfig b/configs/stm32mp21_defconfig
index 8ad31292579c..6a74a435f8d5 100644
--- a/configs/stm32mp21_defconfig
+++ b/configs/stm32mp21_defconfig
@@ -51,6 +51,7 @@ CONFIG_NO_NET=y
 CONFIG_SYS_64BIT_LBA=y
 CONFIG_BUTTON=y
 CONFIG_BUTTON_GPIO=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_GPIO_HOG=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_STM32F7=y
diff --git a/configs/stm32mp23_defconfig b/configs/stm32mp23_defconfig
index 49f47becba64..ed6fdd9662ef 100644
--- a/configs/stm32mp23_defconfig
+++ b/configs/stm32mp23_defconfig
@@ -51,6 +51,7 @@ CONFIG_NO_NET=y
 CONFIG_SYS_64BIT_LBA=y
 CONFIG_BUTTON=y
 CONFIG_BUTTON_GPIO=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_GPIO_HOG=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_STM32F7=y
diff --git a/configs/stm32mp25_defconfig b/configs/stm32mp25_defconfig
index 99b22a68fda6..42335aafeaf3 100644
--- a/configs/stm32mp25_defconfig
+++ b/configs/stm32mp25_defconfig
@@ -58,6 +58,7 @@ CONFIG_NO_NET=y
 CONFIG_SYS_64BIT_LBA=y
 CONFIG_BUTTON=y
 CONFIG_BUTTON_GPIO=y
+CONFIG_SCMI_FIRMWARE=y
 CONFIG_GPIO_HOG=y
 CONFIG_DM_I2C=y
 CONFIG_SYS_I2C_STM32F7=y
diff --git a/drivers/firmware/scmi/Kconfig b/drivers/firmware/scmi/Kconfig
index 33e089c460ba..cd912ebe4096 100644
--- a/drivers/firmware/scmi/Kconfig
+++ b/drivers/firmware/scmi/Kconfig
@@ -3,6 +3,7 @@ config SCMI_FIRMWARE
 	select FIRMWARE
 	select OF_TRANSLATE
 	depends on SANDBOX || DM_MAILBOX || ARM_SMCCC || OPTEE
+	depends on OF_CONTROL
 	help
 	  System Control and Management Interface (SCMI) is a communication
 	  protocol that defines standard interfaces for power, performance
diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig
index 2fd91d6299cc..66911199c8ba 100644
--- a/drivers/reset/Kconfig
+++ b/drivers/reset/Kconfig
@@ -208,7 +208,7 @@ config RESET_RASPBERRYPI
 
 config RESET_SCMI
 	bool "Enable SCMI reset domain driver"
-	select SCMI_FIRMWARE
+	depends on SCMI_FIRMWARE
 	help
 	  Enable this option if you want to support reset controller
 	  devices exposed by a SCMI agent based on SCMI reset domain
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] scmi: Rework SCMI_FIRMWARE implementation
  2026-03-17  1:24 [PATCH] scmi: Rework SCMI_FIRMWARE implementation Tom Rini
@ 2026-03-17  5:35 ` Peng Fan
  2026-03-17  6:12 ` Anshul Dalal
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Peng Fan @ 2026-03-17  5:35 UTC (permalink / raw)
  To: Tom Rini
  Cc: u-boot, Marek Vasut, Michal Simek, Nobuhiro Iwamatsu,
	Patrice Chotard, Patrick Delaunay, Peng Fan, Simon Glass,
	uboot-stm32

On Mon, Mar 16, 2026 at 07:24:14PM -0600, Tom Rini wrote:
>As exposed by "make randconfig", how we have SCMI_FIRMWARE today is
>incomplete, and in one case, used incorrectly. First, SCMI_FIRMWARE has
>a build-time dependency on OF_CONTROL being enabled, so add that.
>Second, RESET_SCMI depends on SCMI_FIRMWARE being enabled, it should not
>select that symbol. In turn, a number of platforms need to now enable
>SCMI_FIRMWARE explicitly and not rely on RESET_SCMI to enable it for
>them.
>
>Signed-off-by: Tom Rini <trini@konsulko.com>

Acked-by: Peng Fan <peng.fan@nxp.com>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] scmi: Rework SCMI_FIRMWARE implementation
  2026-03-17  1:24 [PATCH] scmi: Rework SCMI_FIRMWARE implementation Tom Rini
  2026-03-17  5:35 ` Peng Fan
@ 2026-03-17  6:12 ` Anshul Dalal
  2026-03-17 11:47 ` Michal Simek
  2026-03-17 12:42 ` Patrice CHOTARD
  3 siblings, 0 replies; 5+ messages in thread
From: Anshul Dalal @ 2026-03-17  6:12 UTC (permalink / raw)
  To: Tom Rini, u-boot
  Cc: Marek Vasut, Michal Simek, Nobuhiro Iwamatsu, Patrice Chotard,
	Patrick Delaunay, Peng Fan, Simon Glass, uboot-stm32

On Tue Mar 17, 2026 at 6:54 AM IST, Tom Rini wrote:
> As exposed by "make randconfig", how we have SCMI_FIRMWARE today is
> incomplete, and in one case, used incorrectly. First, SCMI_FIRMWARE has
> a build-time dependency on OF_CONTROL being enabled, so add that.
> Second, RESET_SCMI depends on SCMI_FIRMWARE being enabled, it should not
> select that symbol. In turn, a number of platforms need to now enable
> SCMI_FIRMWARE explicitly and not rely on RESET_SCMI to enable it for
> them.
>
> Signed-off-by: Tom Rini <trini@konsulko.com>

Acked-by: Anshul Dalal <anshuld@ti.com>

> ---
> Cc: Marek Vasut <marek.vasut+renesas@mailbox.org>
> Cc: Michal Simek <michal.simek@amd.com>
> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
> Cc: Patrice Chotard <patrice.chotard@foss.st.com>
> Cc: Patrick Delaunay <patrick.delaunay@foss.st.com>
> Cc: Peng Fan <peng.fan@nxp.com>
> Cc: Simon Glass <sjg@chromium.org>
> Cc: uboot-stm32@st-md-mailman.stormreply.com
> ---
>  configs/amd_versal2_virt_defconfig  | 1 +
>  configs/r8a78000_ironhide_defconfig | 1 +
>  configs/sandbox_defconfig           | 1 +
>  configs/stm32mp13_defconfig         | 1 +
>  configs/stm32mp15-odyssey_defconfig | 1 +
>  configs/stm32mp15_defconfig         | 1 +
>  configs/stm32mp15_trusted_defconfig | 1 +
>  configs/stm32mp21_defconfig         | 1 +
>  configs/stm32mp23_defconfig         | 1 +
>  configs/stm32mp25_defconfig         | 1 +
>  drivers/firmware/scmi/Kconfig       | 1 +
>  drivers/reset/Kconfig               | 2 +-
>  12 files changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/configs/amd_versal2_virt_defconfig b/configs/amd_versal2_virt_defconfig
> index 94dce5c191c4..8cc210946539 100644
> --- a/configs/amd_versal2_virt_defconfig
> +++ b/configs/amd_versal2_virt_defconfig
> @@ -80,6 +80,7 @@ CONFIG_CLK_SCMI=y
>  CONFIG_CLK_VERSAL=y
>  CONFIG_DFU_RAM=y
>  CONFIG_ARM_FFA_TRANSPORT=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_FPGA_XILINX=y
>  CONFIG_FPGA_VERSALPL=y
>  CONFIG_DM_I2C=y
> diff --git a/configs/r8a78000_ironhide_defconfig b/configs/r8a78000_ironhide_defconfig
> index 180704e75af8..64e2c278a7e0 100644
> --- a/configs/r8a78000_ironhide_defconfig
> +++ b/configs/r8a78000_ironhide_defconfig
> @@ -29,6 +29,7 @@ CONFIG_FIRMWARE=y
>  CONFIG_NR_DRAM_BANKS=16
>  CONFIG_POWER_DOMAIN=y
>  CONFIG_RCAR_MFIS_MBOX=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_RESET_SCMI=y
>  CONFIG_SCMI_AGENT_MAILBOX=y
>  CONFIG_SCMI_FIRMWARE=y
> diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
> index 36bf37827e91..b681b91c3f99 100644
> --- a/configs/sandbox_defconfig
> +++ b/configs/sandbox_defconfig
> @@ -209,6 +209,7 @@ CONFIG_SANDBOX_DMA=y
>  CONFIG_FASTBOOT_FLASH=y
>  CONFIG_FASTBOOT_FLASH_MMC_DEV=0
>  CONFIG_ARM_FFA_TRANSPORT=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_FPGA_ALTERA=y
>  CONFIG_FPGA_STRATIX_II=y
>  CONFIG_FPGA_STRATIX_V=y
> diff --git a/configs/stm32mp13_defconfig b/configs/stm32mp13_defconfig
> index 6bd139441122..620a6da2efe3 100644
> --- a/configs/stm32mp13_defconfig
> +++ b/configs/stm32mp13_defconfig
> @@ -70,6 +70,7 @@ CONFIG_FASTBOOT_FLASH=y
>  CONFIG_FASTBOOT_FLASH_MMC_DEV=0
>  CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
>  CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_STM32F7=y
> diff --git a/configs/stm32mp15-odyssey_defconfig b/configs/stm32mp15-odyssey_defconfig
> index 868ba1915f71..5d1c01c99fb3 100644
> --- a/configs/stm32mp15-odyssey_defconfig
> +++ b/configs/stm32mp15-odyssey_defconfig
> @@ -86,6 +86,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
>  CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
>  CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
>  CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_HWSPINLOCK=y
>  CONFIG_HWSPINLOCK_STM32=y
> diff --git a/configs/stm32mp15_defconfig b/configs/stm32mp15_defconfig
> index af2efc7bceb0..c26602b63b6f 100644
> --- a/configs/stm32mp15_defconfig
> +++ b/configs/stm32mp15_defconfig
> @@ -88,6 +88,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
>  CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
>  CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
>  CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_HWSPINLOCK=y
>  CONFIG_HWSPINLOCK_STM32=y
> diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
> index 226d83357843..d7501612a797 100644
> --- a/configs/stm32mp15_trusted_defconfig
> +++ b/configs/stm32mp15_trusted_defconfig
> @@ -89,6 +89,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
>  CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
>  CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
>  CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_HWSPINLOCK=y
>  CONFIG_HWSPINLOCK_STM32=y
> diff --git a/configs/stm32mp21_defconfig b/configs/stm32mp21_defconfig
> index 8ad31292579c..6a74a435f8d5 100644
> --- a/configs/stm32mp21_defconfig
> +++ b/configs/stm32mp21_defconfig
> @@ -51,6 +51,7 @@ CONFIG_NO_NET=y
>  CONFIG_SYS_64BIT_LBA=y
>  CONFIG_BUTTON=y
>  CONFIG_BUTTON_GPIO=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_STM32F7=y
> diff --git a/configs/stm32mp23_defconfig b/configs/stm32mp23_defconfig
> index 49f47becba64..ed6fdd9662ef 100644
> --- a/configs/stm32mp23_defconfig
> +++ b/configs/stm32mp23_defconfig
> @@ -51,6 +51,7 @@ CONFIG_NO_NET=y
>  CONFIG_SYS_64BIT_LBA=y
>  CONFIG_BUTTON=y
>  CONFIG_BUTTON_GPIO=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_STM32F7=y
> diff --git a/configs/stm32mp25_defconfig b/configs/stm32mp25_defconfig
> index 99b22a68fda6..42335aafeaf3 100644
> --- a/configs/stm32mp25_defconfig
> +++ b/configs/stm32mp25_defconfig
> @@ -58,6 +58,7 @@ CONFIG_NO_NET=y
>  CONFIG_SYS_64BIT_LBA=y
>  CONFIG_BUTTON=y
>  CONFIG_BUTTON_GPIO=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_STM32F7=y
> diff --git a/drivers/firmware/scmi/Kconfig b/drivers/firmware/scmi/Kconfig
> index 33e089c460ba..cd912ebe4096 100644
> --- a/drivers/firmware/scmi/Kconfig
> +++ b/drivers/firmware/scmi/Kconfig
> @@ -3,6 +3,7 @@ config SCMI_FIRMWARE
>  	select FIRMWARE
>  	select OF_TRANSLATE
>  	depends on SANDBOX || DM_MAILBOX || ARM_SMCCC || OPTEE
> +	depends on OF_CONTROL
>  	help
>  	  System Control and Management Interface (SCMI) is a communication
>  	  protocol that defines standard interfaces for power, performance
> diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig
> index 2fd91d6299cc..66911199c8ba 100644
> --- a/drivers/reset/Kconfig
> +++ b/drivers/reset/Kconfig
> @@ -208,7 +208,7 @@ config RESET_RASPBERRYPI
>  
>  config RESET_SCMI
>  	bool "Enable SCMI reset domain driver"
> -	select SCMI_FIRMWARE
> +	depends on SCMI_FIRMWARE
>  	help
>  	  Enable this option if you want to support reset controller
>  	  devices exposed by a SCMI agent based on SCMI reset domain


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] scmi: Rework SCMI_FIRMWARE implementation
  2026-03-17  1:24 [PATCH] scmi: Rework SCMI_FIRMWARE implementation Tom Rini
  2026-03-17  5:35 ` Peng Fan
  2026-03-17  6:12 ` Anshul Dalal
@ 2026-03-17 11:47 ` Michal Simek
  2026-03-17 12:42 ` Patrice CHOTARD
  3 siblings, 0 replies; 5+ messages in thread
From: Michal Simek @ 2026-03-17 11:47 UTC (permalink / raw)
  To: Tom Rini, u-boot
  Cc: Marek Vasut, Nobuhiro Iwamatsu, Patrice Chotard, Patrick Delaunay,
	Peng Fan, Simon Glass, uboot-stm32



On 3/17/26 02:24, Tom Rini wrote:
> As exposed by "make randconfig", how we have SCMI_FIRMWARE today is
> incomplete, and in one case, used incorrectly. First, SCMI_FIRMWARE has
> a build-time dependency on OF_CONTROL being enabled, so add that.
> Second, RESET_SCMI depends on SCMI_FIRMWARE being enabled, it should not
> select that symbol. In turn, a number of platforms need to now enable
> SCMI_FIRMWARE explicitly and not rely on RESET_SCMI to enable it for
> them.
> 
> Signed-off-by: Tom Rini <trini@konsulko.com>
> ---
> Cc: Marek Vasut <marek.vasut+renesas@mailbox.org>
> Cc: Michal Simek <michal.simek@amd.com>
> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
> Cc: Patrice Chotard <patrice.chotard@foss.st.com>
> Cc: Patrick Delaunay <patrick.delaunay@foss.st.com>
> Cc: Peng Fan <peng.fan@nxp.com>
> Cc: Simon Glass <sjg@chromium.org>
> Cc: uboot-stm32@st-md-mailman.stormreply.com
> ---
>   configs/amd_versal2_virt_defconfig  | 1 +
>   configs/r8a78000_ironhide_defconfig | 1 +
>   configs/sandbox_defconfig           | 1 +
>   configs/stm32mp13_defconfig         | 1 +
>   configs/stm32mp15-odyssey_defconfig | 1 +
>   configs/stm32mp15_defconfig         | 1 +
>   configs/stm32mp15_trusted_defconfig | 1 +
>   configs/stm32mp21_defconfig         | 1 +
>   configs/stm32mp23_defconfig         | 1 +
>   configs/stm32mp25_defconfig         | 1 +
>   drivers/firmware/scmi/Kconfig       | 1 +
>   drivers/reset/Kconfig               | 2 +-
>   12 files changed, 12 insertions(+), 1 deletion(-)
> 
> diff --git a/configs/amd_versal2_virt_defconfig b/configs/amd_versal2_virt_defconfig
> index 94dce5c191c4..8cc210946539 100644
> --- a/configs/amd_versal2_virt_defconfig
> +++ b/configs/amd_versal2_virt_defconfig
> @@ -80,6 +80,7 @@ CONFIG_CLK_SCMI=y
>   CONFIG_CLK_VERSAL=y
>   CONFIG_DFU_RAM=y
>   CONFIG_ARM_FFA_TRANSPORT=y
> +CONFIG_SCMI_FIRMWARE=y
>   CONFIG_FPGA_XILINX=y
>   CONFIG_FPGA_VERSALPL=y
>   CONFIG_DM_I2C=y

Acked-by: Michal Simek <michal.simek@amd.com> # Versal Gen 2

M

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] scmi: Rework SCMI_FIRMWARE implementation
  2026-03-17  1:24 [PATCH] scmi: Rework SCMI_FIRMWARE implementation Tom Rini
                   ` (2 preceding siblings ...)
  2026-03-17 11:47 ` Michal Simek
@ 2026-03-17 12:42 ` Patrice CHOTARD
  3 siblings, 0 replies; 5+ messages in thread
From: Patrice CHOTARD @ 2026-03-17 12:42 UTC (permalink / raw)
  To: Tom Rini, u-boot
  Cc: Marek Vasut, Michal Simek, Nobuhiro Iwamatsu, Patrick Delaunay,
	Peng Fan, Simon Glass, uboot-stm32



On 3/17/26 02:24, Tom Rini wrote:
> As exposed by "make randconfig", how we have SCMI_FIRMWARE today is
> incomplete, and in one case, used incorrectly. First, SCMI_FIRMWARE has
> a build-time dependency on OF_CONTROL being enabled, so add that.
> Second, RESET_SCMI depends on SCMI_FIRMWARE being enabled, it should not
> select that symbol. In turn, a number of platforms need to now enable
> SCMI_FIRMWARE explicitly and not rely on RESET_SCMI to enable it for
> them.
> 
> Signed-off-by: Tom Rini <trini@konsulko.com>
> ---
> Cc: Marek Vasut <marek.vasut+renesas@mailbox.org>
> Cc: Michal Simek <michal.simek@amd.com>
> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
> Cc: Patrice Chotard <patrice.chotard@foss.st.com>
> Cc: Patrick Delaunay <patrick.delaunay@foss.st.com>
> Cc: Peng Fan <peng.fan@nxp.com>
> Cc: Simon Glass <sjg@chromium.org>
> Cc: uboot-stm32@st-md-mailman.stormreply.com
> ---
>  configs/amd_versal2_virt_defconfig  | 1 +
>  configs/r8a78000_ironhide_defconfig | 1 +
>  configs/sandbox_defconfig           | 1 +
>  configs/stm32mp13_defconfig         | 1 +
>  configs/stm32mp15-odyssey_defconfig | 1 +
>  configs/stm32mp15_defconfig         | 1 +
>  configs/stm32mp15_trusted_defconfig | 1 +
>  configs/stm32mp21_defconfig         | 1 +
>  configs/stm32mp23_defconfig         | 1 +
>  configs/stm32mp25_defconfig         | 1 +
>  drivers/firmware/scmi/Kconfig       | 1 +
>  drivers/reset/Kconfig               | 2 +-
>  12 files changed, 12 insertions(+), 1 deletion(-)
> 
> diff --git a/configs/amd_versal2_virt_defconfig b/configs/amd_versal2_virt_defconfig
> index 94dce5c191c4..8cc210946539 100644
> --- a/configs/amd_versal2_virt_defconfig
> +++ b/configs/amd_versal2_virt_defconfig
> @@ -80,6 +80,7 @@ CONFIG_CLK_SCMI=y
>  CONFIG_CLK_VERSAL=y
>  CONFIG_DFU_RAM=y
>  CONFIG_ARM_FFA_TRANSPORT=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_FPGA_XILINX=y
>  CONFIG_FPGA_VERSALPL=y
>  CONFIG_DM_I2C=y
> diff --git a/configs/r8a78000_ironhide_defconfig b/configs/r8a78000_ironhide_defconfig
> index 180704e75af8..64e2c278a7e0 100644
> --- a/configs/r8a78000_ironhide_defconfig
> +++ b/configs/r8a78000_ironhide_defconfig
> @@ -29,6 +29,7 @@ CONFIG_FIRMWARE=y
>  CONFIG_NR_DRAM_BANKS=16
>  CONFIG_POWER_DOMAIN=y
>  CONFIG_RCAR_MFIS_MBOX=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_RESET_SCMI=y
>  CONFIG_SCMI_AGENT_MAILBOX=y
>  CONFIG_SCMI_FIRMWARE=y
> diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
> index 36bf37827e91..b681b91c3f99 100644
> --- a/configs/sandbox_defconfig
> +++ b/configs/sandbox_defconfig
> @@ -209,6 +209,7 @@ CONFIG_SANDBOX_DMA=y
>  CONFIG_FASTBOOT_FLASH=y
>  CONFIG_FASTBOOT_FLASH_MMC_DEV=0
>  CONFIG_ARM_FFA_TRANSPORT=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_FPGA_ALTERA=y
>  CONFIG_FPGA_STRATIX_II=y
>  CONFIG_FPGA_STRATIX_V=y
> diff --git a/configs/stm32mp13_defconfig b/configs/stm32mp13_defconfig
> index 6bd139441122..620a6da2efe3 100644
> --- a/configs/stm32mp13_defconfig
> +++ b/configs/stm32mp13_defconfig
> @@ -70,6 +70,7 @@ CONFIG_FASTBOOT_FLASH=y
>  CONFIG_FASTBOOT_FLASH_MMC_DEV=0
>  CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
>  CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_STM32F7=y
> diff --git a/configs/stm32mp15-odyssey_defconfig b/configs/stm32mp15-odyssey_defconfig
> index 868ba1915f71..5d1c01c99fb3 100644
> --- a/configs/stm32mp15-odyssey_defconfig
> +++ b/configs/stm32mp15-odyssey_defconfig
> @@ -86,6 +86,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
>  CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
>  CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
>  CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_HWSPINLOCK=y
>  CONFIG_HWSPINLOCK_STM32=y
> diff --git a/configs/stm32mp15_defconfig b/configs/stm32mp15_defconfig
> index af2efc7bceb0..c26602b63b6f 100644
> --- a/configs/stm32mp15_defconfig
> +++ b/configs/stm32mp15_defconfig
> @@ -88,6 +88,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
>  CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
>  CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
>  CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_HWSPINLOCK=y
>  CONFIG_HWSPINLOCK_STM32=y
> diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig
> index 226d83357843..d7501612a797 100644
> --- a/configs/stm32mp15_trusted_defconfig
> +++ b/configs/stm32mp15_trusted_defconfig
> @@ -89,6 +89,7 @@ CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
>  CONFIG_FASTBOOT_MMC_USER_NAME="mmc1"
>  CONFIG_FASTBOOT_CMD_OEM_PARTCONF=y
>  CONFIG_FASTBOOT_CMD_OEM_BOOTBUS=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_HWSPINLOCK=y
>  CONFIG_HWSPINLOCK_STM32=y
> diff --git a/configs/stm32mp21_defconfig b/configs/stm32mp21_defconfig
> index 8ad31292579c..6a74a435f8d5 100644
> --- a/configs/stm32mp21_defconfig
> +++ b/configs/stm32mp21_defconfig
> @@ -51,6 +51,7 @@ CONFIG_NO_NET=y
>  CONFIG_SYS_64BIT_LBA=y
>  CONFIG_BUTTON=y
>  CONFIG_BUTTON_GPIO=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_STM32F7=y
> diff --git a/configs/stm32mp23_defconfig b/configs/stm32mp23_defconfig
> index 49f47becba64..ed6fdd9662ef 100644
> --- a/configs/stm32mp23_defconfig
> +++ b/configs/stm32mp23_defconfig
> @@ -51,6 +51,7 @@ CONFIG_NO_NET=y
>  CONFIG_SYS_64BIT_LBA=y
>  CONFIG_BUTTON=y
>  CONFIG_BUTTON_GPIO=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_STM32F7=y
> diff --git a/configs/stm32mp25_defconfig b/configs/stm32mp25_defconfig
> index 99b22a68fda6..42335aafeaf3 100644
> --- a/configs/stm32mp25_defconfig
> +++ b/configs/stm32mp25_defconfig
> @@ -58,6 +58,7 @@ CONFIG_NO_NET=y
>  CONFIG_SYS_64BIT_LBA=y
>  CONFIG_BUTTON=y
>  CONFIG_BUTTON_GPIO=y
> +CONFIG_SCMI_FIRMWARE=y
>  CONFIG_GPIO_HOG=y
>  CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_STM32F7=y
> diff --git a/drivers/firmware/scmi/Kconfig b/drivers/firmware/scmi/Kconfig
> index 33e089c460ba..cd912ebe4096 100644
> --- a/drivers/firmware/scmi/Kconfig
> +++ b/drivers/firmware/scmi/Kconfig
> @@ -3,6 +3,7 @@ config SCMI_FIRMWARE
>  	select FIRMWARE
>  	select OF_TRANSLATE
>  	depends on SANDBOX || DM_MAILBOX || ARM_SMCCC || OPTEE
> +	depends on OF_CONTROL
>  	help
>  	  System Control and Management Interface (SCMI) is a communication
>  	  protocol that defines standard interfaces for power, performance
> diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig
> index 2fd91d6299cc..66911199c8ba 100644
> --- a/drivers/reset/Kconfig
> +++ b/drivers/reset/Kconfig
> @@ -208,7 +208,7 @@ config RESET_RASPBERRYPI
>  
>  config RESET_SCMI
>  	bool "Enable SCMI reset domain driver"
> -	select SCMI_FIRMWARE
> +	depends on SCMI_FIRMWARE
>  	help
>  	  Enable this option if you want to support reset controller
>  	  devices exposed by a SCMI agent based on SCMI reset domain

Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>

Thanks
Patrice

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-03-17 12:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-17  1:24 [PATCH] scmi: Rework SCMI_FIRMWARE implementation Tom Rini
2026-03-17  5:35 ` Peng Fan
2026-03-17  6:12 ` Anshul Dalal
2026-03-17 11:47 ` Michal Simek
2026-03-17 12:42 ` Patrice CHOTARD

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.