summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRyan Long <ryan.long@oarcorp.com>2022-10-18 12:11:29 -0500
committerJoel Sherrill <joel@rtems.org>2023-02-06 14:29:24 -0600
commit3fd8cf2d37a1e0b7d364bfb67e666219fc49788b (patch)
tree20a4a0cb14e1cbed15396c2717121355892116d9
parentbsps/microblaze: Add device tree support to AXI interrupt controller (diff)
downloadrtems-3fd8cf2d37a1e0b7d364bfb67e666219fc49788b.tar.bz2
bsps/microblaze: Add device tree support to JFFS2 QSPI
-rw-r--r--bsps/microblaze/microblaze_fpga/fs/jffs2_qspi.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/bsps/microblaze/microblaze_fpga/fs/jffs2_qspi.c b/bsps/microblaze/microblaze_fpga/fs/jffs2_qspi.c
index 39328b6b7c..49859a03f1 100644
--- a/bsps/microblaze/microblaze_fpga/fs/jffs2_qspi.c
+++ b/bsps/microblaze/microblaze_fpga/fs/jffs2_qspi.c
@@ -46,6 +46,7 @@
#include <rtems/jffs2.h>
#include <rtems/libio.h>
+#include <bsp.h>
#include <bsp/jffs2_qspi.h>
#define BLOCK_SIZE (64UL * 1024UL)
@@ -286,12 +287,24 @@ int microblaze_jffs2_initialize( const char* mount_dir )
int rv = 0;
int fd = -1;
+ uintptr_t mblaze_spi_base = try_get_prop_from_device_tree(
+ "xlnx,xps-spi-2.00.a",
+ "reg",
+ BSP_MICROBLAZE_FPGA_SPI_BASE
+ );
+
+ rtems_vector_number mblaze_spi_irq_num = try_get_prop_from_device_tree(
+ "xlnx,xps-spi-2.00.a",
+ "interrupts",
+ BSP_MICROBLAZE_FPGA_SPI_IRQ_NUM
+ );
+
rv = spi_bus_register_xilinx_axi(
BUS_PATH,
- BSP_MICROBLAZE_FPGA_SPI_BASE,
+ mblaze_spi_base,
FLASH_PAGE_SIZE,
FLASH_NUM_CS,
- BSP_MICROBLAZE_FPGA_SPI_IRQ_NUM
+ mblaze_spi_irq_num
);
if ( rv != 0 ) {
return rv;