walnux/arch
Kyle Wilson 9b99493e14 Initial STM32H5 SPI Commit
Used STM32H7 spi driver as a base. The register set is nearly identical. All registers are named the same with the same offset. There are some bits within the registers that are different but are not referenced in stm32_spi.c. Therfore this driver may just work as is. I did modify the clock source selection for each SPI peripheral, but not much else. Differences in the registers were applied in hardware/stm32h5xxx_spi.h.

Added functionality to SPI to configure the SPI RCC clock.

Added SPI info to Kconfig, updated stm32_spi.c to select and set the RCC clock, and other minor updates.

Updated Pin Map for SPI, added CFG1_BPASS support

Fixed redefinition of GPIO_SPI6_SCK_2

Added SPI_MAX_KER_CK definition.

This definition was needed because the H50 chips allow a kernel clock of 250 MHz. However the datasheets for all other chips (H52, H53, H56, H57) have a max of 125 MHz.

Changed SPI Clock Source Configuration

Moved setting of SPIx clock sources to stm32h5xx_rcc.c. STM32_SPIx_FREQUENCY and STM32_RCC_CCIPR3_SPIxSEL are now defined in board.h. Added error checking in stm32_spi.c to make sure STM32_SPIx_FREQUENCY and STM32_RCC_CCIPR3_SPIxSEL are actually defined.

Style updates

Removed SPI Clock selection from Kconfig

Update arch/arm/src/stm32h5/stm32_spi.h

Co-authored-by: hartmannathan <59230071+hartmannathan@users.noreply.github.com>

Update arch/arm/src/stm32h5/Kconfig

Co-authored-by: hartmannathan <59230071+hartmannathan@users.noreply.github.com>

Update arch/arm/src/stm32h5/stm32_spi.h

Co-authored-by: hartmannathan <59230071+hartmannathan@users.noreply.github.com>
2024-12-10 09:32:10 +08:00
..
arm Initial STM32H5 SPI Commit 2024-12-10 09:32:10 +08:00
arm64 fix nxstyle 2024-12-10 01:29:00 +08:00
avr remove redundant judgments *running_task != NULL 2024-12-04 22:50:08 +08:00
ceva arch/ceva: migrate to SPDX identifier 2024-12-02 22:43:23 +08:00
dummy arch: Add custom arch chip build support 2020-10-20 14:48:16 +08:00
hc remove redundant judgments *running_task != NULL 2024-12-04 22:50:08 +08:00
mips addrenv: Ensure that the transmission parameter of addrenv_switch is not NULL 2024-12-04 14:20:12 +08:00
misoc addrenv: Ensure that the transmission parameter of addrenv_switch is not NULL 2024-12-04 14:20:12 +08:00
or1k remove redundant judgments *running_task != NULL 2024-12-04 22:50:08 +08:00
renesas remove redundant judgments *running_task != NULL 2024-12-04 22:50:08 +08:00
risc-v mpfs_entrypoints.c: Add simple ACK mechanism for CPU boot 2024-12-10 01:54:04 +08:00
sim cmake(bugfix):fix CMake build break on MacOS 2024-12-05 23:36:16 +08:00
sparc addrenv: Ensure that the transmission parameter of addrenv_switch is not NULL 2024-12-04 14:20:12 +08:00
tricore debug symbol level: Use config instead 2024-12-04 22:36:45 +08:00
x86 remove redundant judgments *running_task != NULL 2024-12-04 22:50:08 +08:00
x86_64 remove redundant judgments *running_task != NULL 2024-12-04 22:50:08 +08:00
xtensa esp32[s2|s3]: Add nxdiag without esptool wrapper 2024-12-07 11:45:59 +08:00
z16 remove redundant judgments *running_task != NULL 2024-12-04 22:50:08 +08:00
z80 remove redundant judgments *running_task != NULL 2024-12-04 22:50:08 +08:00
CMakeLists.txt arch/z80: migrate to SPDX identifier 2024-12-02 17:23:25 +08:00
Kconfig armv7/8m: fix regresion from https://github.com/apache/nuttx/pull/14881 2024-12-09 12:20:13 +08:00