aboutsummaryrefslogtreecommitdiff
path: root/Src/stm-fmc.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/stm-fmc.h')
-rw-r--r--Src/stm-fmc.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/Src/stm-fmc.h b/Src/stm-fmc.h
new file mode 100644
index 0000000..05b91be
--- /dev/null
+++ b/Src/stm-fmc.h
@@ -0,0 +1,46 @@
+//------------------------------------------------------------------------------
+// stm-fmc.h
+//------------------------------------------------------------------------------
+
+
+//------------------------------------------------------------------------------
+// Headers
+//------------------------------------------------------------------------------
+#include "stm32f4xx_hal.h"
+
+
+//------------------------------------------------------------------------------
+// External Variables
+//------------------------------------------------------------------------------
+extern SRAM_HandleTypeDef _fmc_fpga_inst;
+
+
+//------------------------------------------------------------------------------
+// Defined Values
+//------------------------------------------------------------------------------
+#define FMC_FPGA_BASE_ADDR 0x60000000
+#define FMC_FPGA_ADDR_MASK 0x00FFFFFC
+#define FMC_FPGA_NWAIT_MAX_POLL_TICKS 10
+
+#define FMC_GPIO_PORT_NWAIT GPIOD
+#define FMC_GPIO_PIN_NWAIT GPIO_PIN_6
+
+#define FMC_NWAIT_IDLE GPIO_PIN_SET
+
+
+//------------------------------------------------------------------------------
+// Prototypes
+//------------------------------------------------------------------------------
+void fmc_init(void);
+
+int fmc_write_32(uint32_t addr, uint32_t *data);
+int fmc_read_32(uint32_t addr, uint32_t *data);
+
+void _fmc_init_gpio(void);
+void _fmc_init_params(void);
+int _fmc_nwait_idle(void);
+
+
+//------------------------------------------------------------------------------
+// EOF
+//------------------------------------------------------------------------------