diff --git a/include/libopencm3/stm32/f7/memorymap.h b/include/libopencm3/stm32/f7/memorymap.h index 5cb42128..b7bd1be4 100644 --- a/include/libopencm3/stm32/f7/memorymap.h +++ b/include/libopencm3/stm32/f7/memorymap.h @@ -146,7 +146,8 @@ #define FMC3_BASE (PERIPH_BASE_AHB3 + 0x20000000U) #define QSPI_BASE (PERIPH_BASE_AHB3 + 0x30000000U) #define FMCC_BASE (PERIPH_BASE_AHB3 + 0x40000000U) -#define QSPIC_BASE (PERIPH_BASE_AHB3 + 0x40001000U) +#define QUADSPI_BASE (PERIPH_BASE_AHB3 + 0x40001000U) +#define QSPIC_BASE QUADSPI_BASE /* Deprecated compat */ #define FMC5_BASE (PERIPH_BASE_AHB3 + 0x60000000U) #define FMC6_BASE (PERIPH_BASE_AHB3 + 0x70000000U) diff --git a/include/libopencm3/stm32/f7/quadspi.h b/include/libopencm3/stm32/f7/quadspi.h new file mode 100644 index 00000000..315c871b --- /dev/null +++ b/include/libopencm3/stm32/f7/quadspi.h @@ -0,0 +1,15 @@ +/** @defgroup quadspi_defines QuadSPI Defines + * @brief Defined constants and types for the STM32F7 QuadSPI peripheral + * @ingroup STM32F7xx_defines + * @copyright SPDX: LGPL-3.0-or-later + * @{ + */ + +#pragma once + +#include +#include + +#define QUADSPI_CR_DMAEN (1 << 2) + +/**@}*/ \ No newline at end of file diff --git a/include/libopencm3/stm32/g4/quadspi.h b/include/libopencm3/stm32/g4/quadspi.h new file mode 100644 index 00000000..eb73fced --- /dev/null +++ b/include/libopencm3/stm32/g4/quadspi.h @@ -0,0 +1,15 @@ +/** @defgroup quadspi_defines QuadSPI Defines + * @brief Defined constants and types for the STM32G4 QuadSPI peripheral + * @ingroup STM32G4xx_defines + * @copyright SPDX: LGPL-3.0-or-later + * @{ + */ + +#pragma once + +#include +#include + +#define QUADSPI_CR_DMAEN (1 << 2) + +/**@}*/ \ No newline at end of file diff --git a/include/libopencm3/stm32/l4/memorymap.h b/include/libopencm3/stm32/l4/memorymap.h index 2510466c..5cd17ffd 100644 --- a/include/libopencm3/stm32/l4/memorymap.h +++ b/include/libopencm3/stm32/l4/memorymap.h @@ -110,6 +110,9 @@ #define AES_BASE (0x50000000U + 0x60000) #define RNG_BASE (0x50000000U + 0x60800) +#define FMC_BASE (0xa0000000U) +#define QUADSPI_BASE (0xa0001000U) + /* Private peripherals */ #define DBGMCU_BASE (PPBI_BASE + 0x00042000) diff --git a/include/libopencm3/stm32/l4/quadspi.h b/include/libopencm3/stm32/l4/quadspi.h new file mode 100644 index 00000000..067c8315 --- /dev/null +++ b/include/libopencm3/stm32/l4/quadspi.h @@ -0,0 +1,15 @@ +/** @defgroup quadspi_defines QuadSPI Defines + * @brief Defined constants and types for the STM32L4 QuadSPI peripheral + * @ingroup STM32L4xx_defines + * @copyright SPDX: LGPL-3.0-or-later + * @{ + */ + +#pragma once + +#include +#include + +#define QUADSPI_CR_DMAEN (1 << 2) + +/**@}*/ \ No newline at end of file diff --git a/include/libopencm3/stm32/quadspi.h b/include/libopencm3/stm32/quadspi.h index ef43b38c..5ddcbba2 100644 --- a/include/libopencm3/stm32/quadspi.h +++ b/include/libopencm3/stm32/quadspi.h @@ -22,8 +22,14 @@ #if defined(STM32F4) # include +#elif defined(STM32F7) +# include +#elif defined(STM32G4) +# include #elif defined(STM32H7) # include +#elif defined(STM32L4) +# include #else # error "quadspi.h not available for this family." #endif diff --git a/lib/stm32/f7/Makefile b/lib/stm32/f7/Makefile index 2e41e406..33195130 100644 --- a/lib/stm32/f7/Makefile +++ b/lib/stm32/f7/Makefile @@ -63,6 +63,7 @@ OBJS += rng_common_v1.o OBJS += spi_common_all.o spi_common_v2.o OBJS += timer_common_all.o OBJS += usart_common_all.o usart_common_v2.o +OBJS += quadspi_common_v1.o # Ethernet OBJS += mac.o phy.o mac_stm32fxx7.o phy_ksz80x1.o diff --git a/lib/stm32/g4/Makefile b/lib/stm32/g4/Makefile index ba2f42e9..ddaddb73 100644 --- a/lib/stm32/g4/Makefile +++ b/lib/stm32/g4/Makefile @@ -47,6 +47,7 @@ OBJS += pwr.o OBJS += rcc.o rcc_common_all.o OBJS += spi_common_all.o spi_common_v2.o OBJS += timer_common_all.o timer_common_f0234.o +OBJS += quadspi_common_v1.o OBJS += usb.o usb_control.o usb_standard.o OBJS += usb_audio.o diff --git a/lib/stm32/l4/Makefile b/lib/stm32/l4/Makefile index 56a00838..54853ba3 100644 --- a/lib/stm32/l4/Makefile +++ b/lib/stm32/l4/Makefile @@ -54,6 +54,7 @@ OBJS += rtc_common_l1f024.o OBJS += spi_common_all.o spi_common_v2.o OBJS += timer_common_all.o OBJS += usart_common_all.o usart_common_v2.o +OBJS += quadspi_common_v1.o OBJS += usb.o usb_control.o usb_standard.o usb_msc.o OBJS += usb_hid.o