diff --git a/miosix/arch/cortexM7_stm32f7/stm32f756zg_nucleo/interfaces-impl/bsp.cpp b/miosix/arch/cortexM7_stm32f7/stm32f756zg_nucleo/interfaces-impl/bsp.cpp
index 4255b80daaaf96a636c756f851239917c22a2d73..b9560d6c224f73a391bdebec4fb1f685a286242c 100644
--- a/miosix/arch/cortexM7_stm32f7/stm32f756zg_nucleo/interfaces-impl/bsp.cpp
+++ b/miosix/arch/cortexM7_stm32f7/stm32f756zg_nucleo/interfaces-impl/bsp.cpp
@@ -61,7 +61,7 @@ void IRQbspInit() {
RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOBEN |
RCC_AHB1ENR_GPIOCEN | RCC_AHB1ENR_GPIODEN |
RCC_AHB1ENR_GPIOEEN | RCC_AHB1ENR_GPIOFEN |
- RCC_AHB1ENR_GPIOHEN;
+ RCC_AHB1ENR_GPIOGEN | RCC_AHB1ENR_GPIOHEN;
RCC_SYNC();
GPIOA->OSPEEDR = 0xaaaaaaaa; // Default to 50MHz speed for all GPIOS
GPIOB->OSPEEDR = 0xaaaaaaaa;
@@ -69,6 +69,7 @@ void IRQbspInit() {
GPIOD->OSPEEDR = 0xaaaaaaaa;
GPIOE->OSPEEDR = 0xaaaaaaaa;
GPIOF->OSPEEDR = 0xaaaaaaaa;
+ GPIOG->OSPEEDR = 0xaaaaaaaa;
GPIOH->OSPEEDR = 0xaaaaaaaa;
userLed1::mode(Mode::OUTPUT);
diff --git a/miosix/config/options.cmake b/miosix/config/options.cmake
index 6ed4c5049bdda6bda95cc035b8bdb940c307831f..a80c0760b27e333afb92fc698f58382ba70917bd 100644
--- a/miosix/config/options.cmake
+++ b/miosix/config/options.cmake
@@ -3127,7 +3127,7 @@ elseif(${ARCH} STREQUAL cortexM7_stm32f7)
## Select appropriate compiler flags for both ASM/C/C++/linker
## Not all stm32f7 have the double precision FPU. Those that only
## support single precision are built as cortex m4
- set(ARCHOPTS -mcpu=cortex-m7 -mthumb -mfloat-abi=hard -mfpu=fpv5-d16)
+ set(ARCHOPTS -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16)
## Base directory with header files for this board
set(BOARD_INC arch/cortexM7_stm32f7/stm32f756zg_nucleo)
@@ -3139,10 +3139,7 @@ elseif(${ARCH} STREQUAL cortexM7_stm32f7)
## Select architecture specific files
## These are the files in arch/<arch name>/<board name>
- set(ARCH_SRC
- ${KPATH}/arch/common/drivers/stm32_hardware_rng.cpp
- ${KPATH}/${BOARD_INC}/interfaces-impl/bsp.cpp
- )
+ set(ARCH_SRC ${KPATH}/${BOARD_INC}/interfaces-impl/bsp.cpp)
## Add a #define to allow querying board name
list(APPEND CFLAGS_BASE -D_BOARD_STM32F756ZG_NUCLEO)