28#ifndef LIBBSP_ARM_STM32H7_STM32H7_HAL_H
29#define LIBBSP_ARM_STM32H7_STM32H7_HAL_H
31#include <stm32h7xx_hal.h>
41 STM32H7_MODULE_INVALID,
53 STM32H7_MODULE_USART1,
54 STM32H7_MODULE_USART2,
55 STM32H7_MODULE_USART3,
58 STM32H7_MODULE_USART6,
62 STM32H7_MODULE_USART10,
64 STM32H7_MODULE_ETH1MAC,
65 STM32H7_MODULE_ETH1TX,
66 STM32H7_MODULE_ETH1RX,
67 STM32H7_MODULE_USB1_OTG,
68 STM32H7_MODULE_USB1_OTG_ULPI,
69 STM32H7_MODULE_USB2_OTG,
70 STM32H7_MODULE_USB2_OTG_ULPI,
71 STM32H7_MODULE_SDMMC1,
72 STM32H7_MODULE_SDMMC2,
81} stm32h7_module_index;
83stm32h7_module_index stm32h7_get_module_index(
const void *regs);
85void stm32h7_clk_enable(stm32h7_module_index index);
87void stm32h7_clk_disable(stm32h7_module_index index);
89void stm32h7_clk_low_power_enable(stm32h7_module_index index);
91void stm32h7_clk_low_power_disable(stm32h7_module_index index);
95 GPIO_InitTypeDef config;
103 uint8_t device_index;
107 UART_HandleTypeDef uart;
164extern const uint32_t stm32h7_config_pwr_regulator_voltagescaling;
166extern const RCC_OscInitTypeDef stm32h7_config_oscillator;
168extern const RCC_ClkInitTypeDef stm32h7_config_clocks;
170extern const uint32_t stm32h7_config_flash_latency;
172extern const RCC_PeriphCLKInitTypeDef stm32h7_config_peripheral_clocks;
174#define STM32H7_NUM_SOFT_CS 4
189 uint32_t max_speed_hz;
194 SPI_HandleTypeDef spi;
198#ifdef STM32H7_SPI_USE_INTERRUPTS
Serial Peripheral Interface (SPI) Driver API.
#define RTEMS_CONTAINER_OF(_m, _type, _member_name)
Gets the container of a member.
Definition: basedefs.h:306
ISR_Vector_number rtems_vector_number
This integer type represents interrupt vector numbers.
Definition: intr.h:102
General Purpose I/O.
Definition: stm32u5g9xx.h:747
This structure represents an interrupt entry.
Definition: intr.h:1070
Termios device context.
Definition: termiosdevice.h:68
SPI bus control.
Definition: spi.h:80