* [PATCH] arm64: zynqmp: Add missing ZYNQMP_FIRMWARE dependencies
@ 2023-02-01 9:55 Ashok Reddy Soma
2023-02-03 13:29 ` Michal Simek
0 siblings, 1 reply; 2+ messages in thread
From: Ashok Reddy Soma @ 2023-02-01 9:55 UTC (permalink / raw)
To: u-boot
Cc: michal.simek, lukma, seanga2, peng.fan, jh80.chung,
joe.hershberger, rfried.dev, git, Algapally Santosh Sagar,
Ashok Reddy Soma
From: Algapally Santosh Sagar <santoshsagar.algapally@amd.com>
There are missing Kconfig dependencies in the code which is using
firmware interface.
The commit 71efd45a5fc7 ("arm64: zynqmp: Change firmware dependency")
add option to also disable ZYNQMP_FIRMWARE. But not all Kconfig
dependencies were properly described and also sdhci and gem drivers
didn't protect the code properly.
So, add the missing ZYNQMP_FIRMWARE dependencies.
Signed-off-by: Algapally Santosh Sagar <santoshsagar.algapally@amd.com>
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
---
board/xilinx/zynqmp/Kconfig | 1 +
drivers/clk/Kconfig | 4 ++--
drivers/fpga/Kconfig | 2 +-
drivers/mmc/zynq_sdhci.c | 4 ++--
drivers/net/zynq_gem.c | 2 +-
5 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/board/xilinx/zynqmp/Kconfig b/board/xilinx/zynqmp/Kconfig
index 7d1f7398c3..ffa2f0215d 100644
--- a/board/xilinx/zynqmp/Kconfig
+++ b/board/xilinx/zynqmp/Kconfig
@@ -6,6 +6,7 @@ if ARCH_ZYNQMP
config CMD_ZYNQMP
bool "Enable ZynqMP specific commands"
+ depends on ZYNQMP_FIRMWARE
default y
help
Enable ZynqMP specific commands like "zynqmp secure"
diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
index 09aa97ee8c..42280cbf83 100644
--- a/drivers/clk/Kconfig
+++ b/drivers/clk/Kconfig
@@ -185,7 +185,7 @@ config CLK_VERSACLOCK
config CLK_VERSAL
bool "Enable clock driver support for Versal"
depends on (ARCH_VERSAL || ARCH_VERSAL_NET)
- select ZYNQMP_FIRMWARE
+ imply ZYNQMP_FIRMWARE
help
This clock driver adds support for clock realted settings for
Versal platform.
@@ -219,7 +219,7 @@ config CLK_ZYNQ
config CLK_ZYNQMP
bool "Enable clock driver support for ZynqMP"
depends on ARCH_ZYNQMP
- select ZYNQMP_FIRMWARE
+ imply ZYNQMP_FIRMWARE
help
This clock driver adds support for clock realted settings for
ZynqMP platform.
diff --git a/drivers/fpga/Kconfig b/drivers/fpga/Kconfig
index 4113de230c..f8b0aeb3ee 100644
--- a/drivers/fpga/Kconfig
+++ b/drivers/fpga/Kconfig
@@ -63,7 +63,7 @@ config FPGA_XILINX
config FPGA_ZYNQMPPL
bool "Enable Xilinx FPGA driver for ZynqMP"
- depends on FPGA_XILINX
+ depends on FPGA_XILINX && ZYNQMP_FIRMWARE
help
Enable FPGA driver for loading bitstream in BIT and BIN format
on Xilinx Zynq UltraScale+ (ZynqMP) device.
diff --git a/drivers/mmc/zynq_sdhci.c b/drivers/mmc/zynq_sdhci.c
index 91e309d275..8b559d8a7a 100644
--- a/drivers/mmc/zynq_sdhci.c
+++ b/drivers/mmc/zynq_sdhci.c
@@ -988,7 +988,7 @@ static const struct sdhci_ops arasan_ops = {
};
#endif
-#if defined(CONFIG_ARCH_ZYNQMP)
+#if defined(CONFIG_ARCH_ZYNQMP) && defined(CONFIG_ZYNQMP_FIRMWARE)
static int sdhci_zynqmp_set_dynamic_config(struct arasan_sdhci_priv *priv,
struct udevice *dev)
{
@@ -1090,7 +1090,7 @@ static int arasan_sdhci_probe(struct udevice *dev)
host = priv->host;
-#if defined(CONFIG_ARCH_ZYNQMP)
+#if defined(CONFIG_ARCH_ZYNQMP) && defined(CONFIG_ZYNQMP_FIRMWARE)
if (device_is_compatible(dev, "xlnx,zynqmp-8.9a")) {
ret = zynqmp_pm_is_function_supported(PM_IOCTL,
IOCTL_SET_SD_CONFIG);
diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c
index cc49788012..211b2c6e55 100644
--- a/drivers/net/zynq_gem.c
+++ b/drivers/net/zynq_gem.c
@@ -738,7 +738,7 @@ static int gem_zynqmp_set_dynamic_config(struct udevice *dev)
u32 pm_info[2];
int ret;
- if (IS_ENABLED(CONFIG_ARCH_ZYNQMP)) {
+ if (IS_ENABLED(CONFIG_ARCH_ZYNQMP) && IS_ENABLED(CONFIG_ZYNQMP_FIRMWARE)) {
if (!zynqmp_pm_is_function_supported(PM_IOCTL,
IOCTL_SET_GEM_CONFIG)) {
ret = ofnode_read_u32_array(dev_ofnode(dev),
--
2.17.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] arm64: zynqmp: Add missing ZYNQMP_FIRMWARE dependencies
2023-02-01 9:55 [PATCH] arm64: zynqmp: Add missing ZYNQMP_FIRMWARE dependencies Ashok Reddy Soma
@ 2023-02-03 13:29 ` Michal Simek
0 siblings, 0 replies; 2+ messages in thread
From: Michal Simek @ 2023-02-03 13:29 UTC (permalink / raw)
To: Ashok Reddy Soma, u-boot
Cc: lukma, seanga2, peng.fan, jh80.chung, joe.hershberger, rfried.dev,
git, Algapally Santosh Sagar
On 2/1/23 10:55, Ashok Reddy Soma wrote:
> From: Algapally Santosh Sagar <santoshsagar.algapally@amd.com>
>
> There are missing Kconfig dependencies in the code which is using
> firmware interface.
> The commit 71efd45a5fc7 ("arm64: zynqmp: Change firmware dependency")
> add option to also disable ZYNQMP_FIRMWARE. But not all Kconfig
> dependencies were properly described and also sdhci and gem drivers
> didn't protect the code properly.
> So, add the missing ZYNQMP_FIRMWARE dependencies.
>
> Signed-off-by: Algapally Santosh Sagar <santoshsagar.algapally@amd.com>
> Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
> ---
>
> board/xilinx/zynqmp/Kconfig | 1 +
> drivers/clk/Kconfig | 4 ++--
> drivers/fpga/Kconfig | 2 +-
> drivers/mmc/zynq_sdhci.c | 4 ++--
> drivers/net/zynq_gem.c | 2 +-
> 5 files changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/board/xilinx/zynqmp/Kconfig b/board/xilinx/zynqmp/Kconfig
> index 7d1f7398c3..ffa2f0215d 100644
> --- a/board/xilinx/zynqmp/Kconfig
> +++ b/board/xilinx/zynqmp/Kconfig
> @@ -6,6 +6,7 @@ if ARCH_ZYNQMP
>
> config CMD_ZYNQMP
> bool "Enable ZynqMP specific commands"
> + depends on ZYNQMP_FIRMWARE
> default y
> help
> Enable ZynqMP specific commands like "zynqmp secure"
> diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
> index 09aa97ee8c..42280cbf83 100644
> --- a/drivers/clk/Kconfig
> +++ b/drivers/clk/Kconfig
> @@ -185,7 +185,7 @@ config CLK_VERSACLOCK
> config CLK_VERSAL
> bool "Enable clock driver support for Versal"
> depends on (ARCH_VERSAL || ARCH_VERSAL_NET)
> - select ZYNQMP_FIRMWARE
> + imply ZYNQMP_FIRMWARE
> help
> This clock driver adds support for clock realted settings for
> Versal platform.
> @@ -219,7 +219,7 @@ config CLK_ZYNQ
> config CLK_ZYNQMP
> bool "Enable clock driver support for ZynqMP"
> depends on ARCH_ZYNQMP
> - select ZYNQMP_FIRMWARE
> + imply ZYNQMP_FIRMWARE
> help
> This clock driver adds support for clock realted settings for
> ZynqMP platform.
> diff --git a/drivers/fpga/Kconfig b/drivers/fpga/Kconfig
> index 4113de230c..f8b0aeb3ee 100644
> --- a/drivers/fpga/Kconfig
> +++ b/drivers/fpga/Kconfig
> @@ -63,7 +63,7 @@ config FPGA_XILINX
>
> config FPGA_ZYNQMPPL
> bool "Enable Xilinx FPGA driver for ZynqMP"
> - depends on FPGA_XILINX
> + depends on FPGA_XILINX && ZYNQMP_FIRMWARE
> help
> Enable FPGA driver for loading bitstream in BIT and BIN format
> on Xilinx Zynq UltraScale+ (ZynqMP) device.
> diff --git a/drivers/mmc/zynq_sdhci.c b/drivers/mmc/zynq_sdhci.c
> index 91e309d275..8b559d8a7a 100644
> --- a/drivers/mmc/zynq_sdhci.c
> +++ b/drivers/mmc/zynq_sdhci.c
> @@ -988,7 +988,7 @@ static const struct sdhci_ops arasan_ops = {
> };
> #endif
>
> -#if defined(CONFIG_ARCH_ZYNQMP)
> +#if defined(CONFIG_ARCH_ZYNQMP) && defined(CONFIG_ZYNQMP_FIRMWARE)
> static int sdhci_zynqmp_set_dynamic_config(struct arasan_sdhci_priv *priv,
> struct udevice *dev)
> {
> @@ -1090,7 +1090,7 @@ static int arasan_sdhci_probe(struct udevice *dev)
>
> host = priv->host;
>
> -#if defined(CONFIG_ARCH_ZYNQMP)
> +#if defined(CONFIG_ARCH_ZYNQMP) && defined(CONFIG_ZYNQMP_FIRMWARE)
> if (device_is_compatible(dev, "xlnx,zynqmp-8.9a")) {
> ret = zynqmp_pm_is_function_supported(PM_IOCTL,
> IOCTL_SET_SD_CONFIG);
> diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c
> index cc49788012..211b2c6e55 100644
> --- a/drivers/net/zynq_gem.c
> +++ b/drivers/net/zynq_gem.c
> @@ -738,7 +738,7 @@ static int gem_zynqmp_set_dynamic_config(struct udevice *dev)
> u32 pm_info[2];
> int ret;
>
> - if (IS_ENABLED(CONFIG_ARCH_ZYNQMP)) {
> + if (IS_ENABLED(CONFIG_ARCH_ZYNQMP) && IS_ENABLED(CONFIG_ZYNQMP_FIRMWARE)) {
> if (!zynqmp_pm_is_function_supported(PM_IOCTL,
> IOCTL_SET_GEM_CONFIG)) {
> ret = ofnode_read_u32_array(dev_ofnode(dev),
Applied.
M
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-02-03 13:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-01 9:55 [PATCH] arm64: zynqmp: Add missing ZYNQMP_FIRMWARE dependencies Ashok Reddy Soma
2023-02-03 13:29 ` Michal Simek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox