Closed liarokapisv closed 1 month ago
I will try to fix some naming incompatibilities with the other spi versions, specifically the enums, so that we have fewer conflicts in the common drivers.
I think this is mostly it, I have a few reservations about changing the I2SCFGR
enum itself, any feedback is welcome.
Have you checked that all SPIv3 chips have I2SCFGR? iirc newer chips with SPIv3 that have SAI have dropped the I2S stuff.
Two H7s (H743 & H745) that I have used, definitely have SAI, but also have I2S on their SPI because it is simpler (and can be used with SPI pins). In stm32-data-gen/src/chips
, spi_v3 matches the spi2s2_v1_0
and spi2s2_v1_1
spi versions. I checked a subset of SVD files with those SPI versions, and the I2SCFGR
register is definitely present in those. I also double-checked with reference manuals but again only for a subset with those versions. It is possible that some chips are missing it, in which case we may need another versioning scheme.
EDIT:
I grepped the cubedb folder for the spi2s2_v1_0
and spi2s2_v1_1
versions, and for each matching chip, I checked the relevant header in the sources/headers folder for the SPI_I2SCFGR
register and it was present in all of them. I did not check the stm32mp lines due to missing headers.
The
I2SCFGR
register was missing from thespi_v3.yaml
description. I double-checked that the register is the same between thespi2s2_v1_0
andspi2s2_v1_1
variants by diffing the svd files. Also fixed somesvd
typos in the process