aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@amd.com>2022-09-19 14:21:03 +0200
committerMichal Simek <michal.simek@amd.com>2022-09-26 14:23:29 +0200
commit1e681448a38dcaf95a58592410382c3324c2cc00 (patch)
tree20713b04d89b2ef4b1387c2ce08ec812dcf21822
parentf6aebdf676ed003391d158edde4ec74b41a83cb8 (diff)
downloadu-boot-1e681448a38dcaf95a58592410382c3324c2cc00.zip
u-boot-1e681448a38dcaf95a58592410382c3324c2cc00.tar.gz
u-boot-1e681448a38dcaf95a58592410382c3324c2cc00.tar.bz2
spi: cadence_qspi: Add support for Versal NET platform
Trivial changes to support cadence ospi driver for Versal NET platform. Also avoid ospi flash reset for now. Signed-off-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/0789141f432189aab69bc496fe33e0218d1d7510.1663589964.git.michal.simek@amd.com
-rw-r--r--arch/arm/mach-versal-net/include/mach/hardware.h4
-rw-r--r--drivers/spi/Kconfig2
-rw-r--r--drivers/spi/cadence_ospi_versal.c3
3 files changed, 7 insertions, 2 deletions
diff --git a/arch/arm/mach-versal-net/include/mach/hardware.h b/arch/arm/mach-versal-net/include/mach/hardware.h
index 2eb5498..808ce48 100644
--- a/arch/arm/mach-versal-net/include/mach/hardware.h
+++ b/arch/arm/mach-versal-net/include/mach/hardware.h
@@ -25,3 +25,7 @@ enum versal_net_platform {
VERSAL_NET_EMU = 2,
VERSAL_NET_QEMU = 3,
};
+
+#define VERSAL_SLCR_BASEADDR 0xF1060000
+#define VERSAL_AXI_MUX_SEL (VERSAL_SLCR_BASEADDR + 0x504)
+#define VERSAL_OSPI_LINEAR_MODE BIT(1)
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
index ac91d82..240ff21 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
@@ -148,7 +148,7 @@ config CQSPI_REF_CLK
config CADENCE_OSPI_VERSAL
bool "Configure Versal OSPI"
- depends on ARCH_VERSAL && CADENCE_QSPI
+ depends on (ARCH_VERSAL || ARCH_VERSAL_NET) && CADENCE_QSPI
imply DM_GPIO
help
This option is used to enable Versal OSPI DMA operations which
diff --git a/drivers/spi/cadence_ospi_versal.c b/drivers/spi/cadence_ospi_versal.c
index a25c50b..a9547a8 100644
--- a/drivers/spi/cadence_ospi_versal.c
+++ b/drivers/spi/cadence_ospi_versal.c
@@ -130,6 +130,7 @@ int cadence_qspi_apb_wait_for_dma_cmplt(struct cadence_spi_priv *priv)
#if defined(CONFIG_DM_GPIO)
int cadence_qspi_versal_flash_reset(struct udevice *dev)
{
+#ifndef CONFIG_ARCH_VERSAL_NET
struct gpio_desc gpio;
u32 reset_gpio;
int ret;
@@ -165,7 +166,7 @@ int cadence_qspi_versal_flash_reset(struct udevice *dev)
/* Set value 1 to pin */
dm_gpio_set_value(&gpio, 1);
udelay(1);
-
+#endif
return 0;
}
#else