diff --git a/CHANGELOG.md b/CHANGELOG.md index 22f9e7b9f..2ddbfe751 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,8 +2,8 @@ ## [Unreleased] -* Updated to `svd2rust` 0.36.1, `svdtools` 0.4.6, `form` 0.12.1, use tools binaries for CI (#1174) -* bump `defmt` dependency to 1.0 +* Updated to `svd2rust` 0.36.1, `svdtools` 0.4.6, `form` 0.13.0, use tools binaries for CI (#1174) +* bump `defmt` dependency to 1.0 (#1209) * Use `svd2rust.toml` config, use custom ident suffixes (#948) * Replace `makehtml.py` with `svdtools html` (#881) * Remove workaround for bug in duckscript's `mv` (#981) @@ -74,21 +74,22 @@ * F2, F4, F7: Add definitions for OPTCR, OPTCR1 and OPTCR2 registers of FLASH peripheral (#1157) * F2, F4, F7: Fix several fields of FLASH peripheral and reorganise 'patches', 'fields' and 'collect' according to impacted registers (#1161) * F1, F2, F4: Derive identical UART registers from USART1, add GPTR.PSC (#1179) -* CCMR3_Output fix -* CRC enums and fixes -* Add DAC enums -* DCMI enums -* DFSDM enums and fixes -* RNG enums -* SDIO/SDMMC v1 -* TSC enums and arrays -* USB v2 -* Use arrays for DAC channels -* Derive TIM registers +* CCMR3_Output fix (#1184) +* CRC enums and fixes (#1206) +* Add DAC enums (#1196) +* DCMI enums (#1205) +* DFSDM enums and fixes (#1218) +* RNG enums (#1220) +* SDIO/SDMMC v1 (#1204) +* OCTOSPI, TAMP, DMA2D enums (#1226) +* TSC enums and arrays (#1221) +* USB v2 (#1202) +* Use arrays for DAC channels (#1197) +* Derive TIM registers (#1184) * Update README.md (#1152) -* Add SPI enums for G4, U5, H7+ -* FMC/FSMC enums, arrays & derives -* CRS enums +* Add SPI enums for G4, U5, H7+ (#1199) +* FMC/FSMC enums, arrays & derives (#1200) +* CRS enums (#1208) * HRTIM: * H7 & G4 fixes and enums (#1021) (#1022) * Remove timer block suffixes from register/field names (#1023) diff --git a/README.md b/README.md index b5d80e47c..36a1f459c 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,7 @@ contain the latest patches and updates. * On x86-64 Linux, run `make install` to download pre-built binaries at the current version used by stm32-rs * Otherwise, build using `cargo` (double check versions against `scripts/tool_install.sh`): - * `cargo install form --version 0.12.1` + * `cargo install form --version 0.13.0` * `cargo install svdtools --version 0.4.6` * `cargo install svd2rust --version 0.36.1` * Install rustfmt: `rustup component add rustfmt` diff --git a/devices/collect/lpgpio/lp.yaml b/devices/collect/lpgpio/lp.yaml new file mode 100644 index 000000000..34f86bf3d --- /dev/null +++ b/devices/collect/lpgpio/lp.yaml @@ -0,0 +1,16 @@ +MODER: + _array: + MODE*: {} +IDR: + _array: + ID*: {} +ODR: + _array: + OD*: {} +BSRR: + _array: + BS*: {} + BR*: {} +BRR: + _array: + BR*: {} diff --git a/devices/fields/dma/dma2d_common.yaml b/devices/fields/dma/dma2d_common.yaml index 50ce9a077..9bb72733d 100644 --- a/devices/fields/dma/dma2d_common.yaml +++ b/devices/fields/dma/dma2d_common.yaml @@ -2,11 +2,6 @@ # Common fields CR: - MODE: - MemoryToMemory: [0, Memory-to-memory (FG fetch only)] - MemoryToMemoryPFC: [1, Memory-to-memory with PFC (FG fetch only with FG PFC active)] - MemoryToMemoryPFCBlending: [2, Memory-to-memory with blending (FG and BG fetch with PFC and blending)] - RegisterToMemory: [3, Register-to-memory] CEIE: Disabled: [0, CE interrupt disabled] Enabled: [1, CE interrupt enabled] diff --git a/devices/fields/dma/dma2d_v1.yaml b/devices/fields/dma/dma2d_v1.yaml index ac8c71966..e02661067 100644 --- a/devices/fields/dma/dma2d_v1.yaml +++ b/devices/fields/dma/dma2d_v1.yaml @@ -3,6 +3,13 @@ _include: dma2d_common.yaml +CR: + MODE: + MemoryToMemory: [0, Memory-to-memory (FG fetch only)] + MemoryToMemoryPFC: [1, Memory-to-memory with PFC (FG fetch only with FG PFC active)] + MemoryToMemoryPFCBlending: [2, Memory-to-memory with blending (FG and BG fetch with PFC and blending)] + RegisterToMemory: [3, Register-to-memory] + "[FB]GOR,OOR": LO: [0, 16383] "[FB]GPFCCR": diff --git a/devices/fields/dma/dma2d_v2.yaml b/devices/fields/dma/dma2d_v2.yaml index 52775f035..19fb455ae 100644 --- a/devices/fields/dma/dma2d_v2.yaml +++ b/devices/fields/dma/dma2d_v2.yaml @@ -3,6 +3,16 @@ _include: dma2d_common.yaml +CR: + MODE: + MemoryToMemory: [0, Memory-to-memory (FG fetch only)] + MemoryToMemoryPFC: [1, Memory-to-memory with PFC (FG fetch only with FG PFC active)] + MemoryToMemoryPFCBlending: [2, Memory-to-memory with blending (FG and BG fetch with PFC and blending)] + RegisterToMemory: [3, Register-to-memory (no FG nor BG, only output stage active)] + MemoryToMemoryBlendingFixedFG: + [100, Memory-to-memory with Blending and fixed color FG (BG fetch only with FG and BG PFC active)] + MemoryToMemoryBlendingFixedBG: + [101, Memory-to-memory with Blending and fixed color BG (BG fetch only with FG and BG PFC active)] "[FB]GPFCCR,OPFCCR": RBS: Regular: [0, No Red Blue Swap (RGB or ARGB)] diff --git a/devices/fields/octospi/common.yaml b/devices/fields/octospi/common.yaml index 9c9de828a..cd46ebd5e 100644 --- a/devices/fields/octospi/common.yaml +++ b/devices/fields/octospi/common.yaml @@ -69,7 +69,6 @@ DCR1: "HyperBus register mode, addressing register space. The memory-mapped accesses in this mode must be non-cacheable, or Indirect read/write modes must be used", ] DEVSIZE: [0, 0x1F] - CSHT: [0, 0x3F] DLYBYP: DelayBlockEnabled: [ @@ -99,7 +98,7 @@ DCR2: DCR3: CSBOUND: [0, 0x1F] - MAXTRAN: [0, 0xFF] + "?~MAXTRAN": [0, 0xFF] DCR4: REFRESH: [0, 0xFFFFFFFF] @@ -163,7 +162,7 @@ PIR: INTERVAL: [0, 0xFFFF] CCR: - SIOO: + "?~SIOO": SendEveryTransaction: [0, Send instruction on every transaction] SendOnlyFirstCmd: [1, Send instruction only for the first command] DQSE: diff --git a/devices/fields/octospi/l4.yaml b/devices/fields/octospi/l4.yaml index 8006f59a7..5277882fa 100644 --- a/devices/fields/octospi/l4.yaml +++ b/devices/fields/octospi/l4.yaml @@ -7,3 +7,5 @@ CR: DMM: Disabled: [0, Dual-quad configuration disabled] Enabled: [1, Dual-quad configuration enabled] +DCR1: + CSHT: [0, 0x3F] diff --git a/devices/fields/octospi/l5.yaml b/devices/fields/octospi/l5.yaml new file mode 100644 index 000000000..4d0e1aa1e --- /dev/null +++ b/devices/fields/octospi/l5.yaml @@ -0,0 +1,11 @@ +_include: + - common.yaml +CR: + FSEL: + FLASH1: [0, "FLASH 1 selected (data exchanged over IO[3:0])"] + FLASH2: [1, "FLASH 2 selected (data exchanged over IO[7:4])"] + DMM: + Disabled: [0, Dual-quad configuration disabled] + Enabled: [1, Dual-quad configuration enabled] +DCR1: + CSHT: [0, 7] diff --git a/devices/fields/octospi/u5.yaml b/devices/fields/octospi/u5.yaml index 9456657d1..ff1d47122 100644 --- a/devices/fields/octospi/u5.yaml +++ b/devices/fields/octospi/u5.yaml @@ -7,3 +7,5 @@ CR: DMM: Disabled: [0, Dual-memory configuration disabled] Enabled: [1, Dual-memory configuration enabled] +DCR1: + CSHT: [0, 0x3F] diff --git a/devices/patches/dma/dma2d_l4+.yaml b/devices/patches/dma/dma2d_l4+.yaml index 65acb0fb2..2b1c16191 100644 --- a/devices/patches/dma/dma2d_l4+.yaml +++ b/devices/patches/dma/dma2d_l4+.yaml @@ -9,7 +9,7 @@ CR: bitOffset: 6 bitWidth: 1 -?GOR: +"[FB]GOR,OOR": _modify: LO: bitWidth: 16 diff --git a/devices/patches/octospi/add_wrap.yaml b/devices/patches/octospi/add_wrap.yaml new file mode 100644 index 000000000..99f886708 --- /dev/null +++ b/devices/patches/octospi/add_wrap.yaml @@ -0,0 +1,92 @@ +_add: + WPCCR: + description: wrap communication configuration register + addressOffset: 0x140 + resetValue: 0x00000000 + fields: + DQSE: + description: DQS enable + bitOffset: 29 + bitWidth: 1 + DDTR: + description: Data double transfer rate + bitOffset: 27 + bitWidth: 1 + DMODE: + description: Data mode + bitOffset: 24 + bitWidth: 3 + ABSIZE: + description: Alternate bytes size + bitOffset: 20 + bitWidth: 2 + ABDTR: + description: Alternate bytes double transfer rate + bitOffset: 19 + bitWidth: 1 + ABMODE: + description: Alternate-byte mode + bitOffset: 16 + bitWidth: 3 + ADSIZE: + description: Address size + bitOffset: 12 + bitWidth: 2 + ADDTR: + description: Address double transfer rate + bitOffset: 11 + bitWidth: 1 + ADMODE: + description: Address mode + bitOffset: 8 + bitWidth: 3 + ISIZE: + description: Instruction size + bitOffset: 4 + bitWidth: 2 + IDTR: + description: Instruction double transfer rate + bitOffset: 3 + bitWidth: 1 + IMODE: + description: Instruction mode + bitOffset: 0 + bitWidth: 3 + + WPTCR: + description: Wrap timing configuration register + addressOffset: 0x148 + resetValue: 0x00000000 + fields: + SSHIFT: + description: Sample shift + bitOffset: 30 + bitWidth: 1 + DHQC: + description: Delay hold quarter cycle + bitOffset: 28 + bitWidth: 1 + DCYC: + description: Number of dummy cycles + bitOffset: 0 + bitWidth: 5 + + WPIR: + description: Wrap instruction register + addressOffset: 0x150 + resetValue: 0x00000000 + fields: + INSTRUCTION: + description: Instruction + bitOffset: 0 + bitWidth: 32 + + WPABR: + description: Wrap alternate bytes register + addressOffset: 0x160 + resetValue: 0x00000000 + fields: + ALTERNATE: + description: Alternate bytes + bitOffset: 0 + bitWidth: 32 diff --git a/devices/patches/octospi/address.yaml b/devices/patches/octospi/address.yaml new file mode 100644 index 000000000..6c6094161 --- /dev/null +++ b/devices/patches/octospi/address.yaml @@ -0,0 +1,4 @@ +AR: + _modify: + ADRESS: + name: ADDRESS diff --git a/devices/patches/octospi/ddm.yaml b/devices/patches/octospi/ddm.yaml new file mode 100644 index 000000000..3f651642e --- /dev/null +++ b/devices/patches/octospi/ddm.yaml @@ -0,0 +1,5 @@ +CR: + _modify: + DQM: + name: DMM + description: Dual-memory configuration diff --git a/devices/patches/octospi/h7.yaml b/devices/patches/octospi/h7.yaml index 81833fc3c..03f57e13b 100644 --- a/devices/patches/octospi/h7.yaml +++ b/devices/patches/octospi/h7.yaml @@ -1,5 +1,9 @@ # OCTOSPI v1 peripheral on at least H7 +_include: + - address.yaml + - ddm.yaml + DCR1: _add: DLYBYP: @@ -13,7 +17,3 @@ DCR4: _modify: REFRESH: bitWidth: 32 -AR: - _modify: - ADRESS: - name: ADDRESS diff --git a/devices/patches/octospi/l4+.yaml b/devices/patches/octospi/l4+.yaml index 4bd58d156..6b550b141 100644 --- a/devices/patches/octospi/l4+.yaml +++ b/devices/patches/octospi/l4+.yaml @@ -1,3 +1,7 @@ +_include: + - ddm.yaml + - add_wrap.yaml + _delete: - HWCFGR - VER @@ -6,8 +10,10 @@ _delete: _add: DCR4: - description: Device configuration register 4 + displayName: DCR4 + description: device configuration register 4 addressOffset: 0x14 + access: read-write resetValue: 0x00000000 fields: REFRESH: @@ -15,108 +21,16 @@ _add: bitOffset: 0 bitWidth: 32 - WPCCR: - description: wrap communication configuration register - addressOffset: 0x140 - resetValue: 0x00000000 - fields: - DQSE: - description: DQS enable - bitOffset: 29 - bitWidth: 1 - DDTR: - description: Data double transfer rate - bitOffset: 27 - bitWidth: 1 - DMODE: - description: Data mode - bitOffset: 24 - bitWidth: 3 - ABSIZE: - description: Alternate bytes size - bitOffset: 20 - bitWidth: 2 - ABDTR: - description: Alternate bytes double transfer rate - bitOffset: 19 - bitWidth: 1 - ABMODE: - description: Alternate-byte mode - bitOffset: 16 - bitWidth: 3 - ADSIZE: - description: Address size - bitOffset: 12 - bitWidth: 2 - ADDTR: - description: Address double transfer rate - bitOffset: 11 - bitWidth: 1 - ADMODE: - description: Address mode - bitOffset: 8 - bitWidth: 3 - ISIZE: - description: Instruction size - bitOffset: 4 - bitWidth: 2 - IDTR: - description: Instruction double transfer rate - bitOffset: 3 - bitWidth: 1 - IMODE: - description: Instruction mode - bitOffset: 0 - bitWidth: 3 - - WPTCR: - description: Wrap timing configuration register - addressOffset: 0x148 - resetValue: 0x00000000 - fields: - SSHIFT: - description: Sample shift - bitOffset: 30 - bitWidth: 1 - DHQC: - description: Delay hold quarter cycle - bitOffset: 28 - bitWidth: 1 - DCYC: - description: Number of dummy cycles - bitOffset: 0 - bitWidth: 5 - - WPIR: - description: Wrap instruction register - addressOffset: 0x150 - resetValue: 0x00000000 - fields: - INSTRUCTION: - description: Instruction - bitOffset: 0 - bitWidth: 32 - - WPABR: - description: Wrap alternate bytes register - addressOffset: 0x160 - resetValue: 0x00000000 - fields: - ALTERNATE: - description: Alternate bytes - bitOffset: 0 - bitWidth: 32 - -CR: - _modify: - DQM: - name: DMM - description: Dual-memory configuration +_modify: + SR: + access: read-only DCR1: _modify: MTYP: bitWidth: 3 + CSHT: + bitWidth: 6 _add: DLYBYP: @@ -130,3 +44,6 @@ DCR3: description: Maximum transfer bitOffset: 0 bitWidth: 8 + +WCCR: + _delete: SIOO diff --git a/devices/stm32f427.yaml b/devices/stm32f427.yaml index 9e62ef9d0..a7f7a3fed 100644 --- a/devices/stm32f427.yaml +++ b/devices/stm32f427.yaml @@ -75,6 +75,8 @@ DMA2: DMA2D: _strip: DMA2D_ + _include: + - fields/dma/dma2d_v1.yaml #Ethernet_DMA: {} #Ethernet_MAC: {} diff --git a/devices/stm32f429.yaml b/devices/stm32f429.yaml index a2ea9c671..62cfa64cb 100644 --- a/devices/stm32f429.yaml +++ b/devices/stm32f429.yaml @@ -71,7 +71,9 @@ DMA2: - fields/dma/dma_v2.yaml - collect/dma/st.yaml -DMA2D: {} +DMA2D: + _include: + - fields/dma/dma2d_v1.yaml #Ethernet_DMA: {} #Ethernet_MAC: {} diff --git a/devices/stm32f722.yaml b/devices/stm32f722.yaml index 2f647adee..b189a97de 100644 --- a/devices/stm32f722.yaml +++ b/devices/stm32f722.yaml @@ -125,7 +125,9 @@ IWDG: - patches/16bit.yaml - fields/iwdg/iwdg_with_WINR.yaml -LPTIM1: {} +LPTIM1: + _include: + - fields/lptim/v1.yaml OTG_FS_*: _strip: OTG_FS_ diff --git a/devices/stm32h523.yaml b/devices/stm32h523.yaml index a0cd89bae..01817c553 100644 --- a/devices/stm32h523.yaml +++ b/devices/stm32h523.yaml @@ -201,6 +201,8 @@ LPUART: OCTOSPI: _strip: OCTOSPI_ + _include: + - fields/octospi/u5.yaml PSSI: _strip: PSSI_ diff --git a/devices/stm32h533.yaml b/devices/stm32h533.yaml index e8b7a0ca2..969105eb7 100644 --- a/devices/stm32h533.yaml +++ b/devices/stm32h533.yaml @@ -209,6 +209,8 @@ LPUART: OCTOSPI: _strip: OCTOSPI_ + _include: + - fields/octospi/u5.yaml OTFDEC1: _strip: OTFDEC_ diff --git a/devices/stm32h562.yaml b/devices/stm32h562.yaml index fdf79bfd9..d1b7ba958 100644 --- a/devices/stm32h562.yaml +++ b/devices/stm32h562.yaml @@ -164,6 +164,13 @@ LPUART: OCTOSPI: _strip: OCTOSPI_ + CR: + _modify: + FSEL: + name: MSEL + description: External memory select + _include: + - fields/octospi/u5.yaml PSSI: _strip: PSSI_ diff --git a/devices/stm32h563.yaml b/devices/stm32h563.yaml index b2654c72f..fb0acdc44 100644 --- a/devices/stm32h563.yaml +++ b/devices/stm32h563.yaml @@ -167,6 +167,13 @@ LPUART: OCTOSPI: _strip: OCTOSPI_ + CR: + _modify: + FSEL: + name: MSEL + description: External memory select + _include: + - fields/octospi/u5.yaml PSSI: _strip: PSSI_ diff --git a/devices/stm32h573.yaml b/devices/stm32h573.yaml index 86f764a59..dacfa142f 100644 --- a/devices/stm32h573.yaml +++ b/devices/stm32h573.yaml @@ -173,6 +173,13 @@ LPUART: OCTOSPI: _strip: OCTOSPI_ + CR: + _modify: + FSEL: + name: MSEL + description: External memory select + _include: + - fields/octospi/u5.yaml OTFDEC1: _strip: OTFDEC_ diff --git a/devices/stm32h723.yaml b/devices/stm32h723.yaml index 3473d7196..be1d7c6c5 100644 --- a/devices/stm32h723.yaml +++ b/devices/stm32h723.yaml @@ -276,10 +276,10 @@ MDMA: # OCTOSPI blocks OCTOSPI1: - AR: - _modify: - ADRESS: - name: ADDRESS + _include: + - patches/octospi/address.yaml + - patches/octospi/ddm.yaml + - fields/octospi/l4.yaml OctoSPII_O_Manager: {} diff --git a/devices/stm32h725.yaml b/devices/stm32h725.yaml index 904efe150..ac51a7e41 100644 --- a/devices/stm32h725.yaml +++ b/devices/stm32h725.yaml @@ -276,10 +276,10 @@ MDMA: # OCTOSPI blocks OCTOSPI1: - AR: - _modify: - ADRESS: - name: ADDRESS + _include: + - patches/octospi/address.yaml + - patches/octospi/ddm.yaml + - fields/octospi/l4.yaml OctoSPII_O_Manager: {} diff --git a/devices/stm32h730.yaml b/devices/stm32h730.yaml index 730ca0fe2..539447fcb 100644 --- a/devices/stm32h730.yaml +++ b/devices/stm32h730.yaml @@ -284,10 +284,10 @@ MDMA: # OCTOSPI blocks OCTOSPI1: - AR: - _modify: - ADRESS: - name: ADDRESS + _include: + - patches/octospi/address.yaml + - patches/octospi/ddm.yaml + - fields/octospi/l4.yaml OctoSPII_O_Manager: {} diff --git a/devices/stm32h733.yaml b/devices/stm32h733.yaml index 3657b9588..d469e2798 100644 --- a/devices/stm32h733.yaml +++ b/devices/stm32h733.yaml @@ -284,10 +284,10 @@ MDMA: # OCTOSPI blocks OCTOSPI1: - AR: - _modify: - ADRESS: - name: ADDRESS + _include: + - patches/octospi/address.yaml + - patches/octospi/ddm.yaml + - fields/octospi/l4.yaml OctoSPII_O_Manager: {} diff --git a/devices/stm32h735.yaml b/devices/stm32h735.yaml index fb9bcc520..d463024fd 100644 --- a/devices/stm32h735.yaml +++ b/devices/stm32h735.yaml @@ -282,10 +282,10 @@ MDMA: # OCTOSPI blocks OCTOSPI1: - AR: - _modify: - ADRESS: - name: ADDRESS + _include: + - patches/octospi/address.yaml + - patches/octospi/ddm.yaml + - fields/octospi/l4.yaml OctoSPII_O_Manager: {} diff --git a/devices/stm32h7a3.yaml b/devices/stm32h7a3.yaml index d9aac7cec..f2568c28d 100644 --- a/devices/stm32h7a3.yaml +++ b/devices/stm32h7a3.yaml @@ -29,6 +29,9 @@ _modify: OctoSPII_O_Manager: groupName: OctoSPII_O_Manager +_rebase: + OCTOSPI1: OCTOSPI2 + ADC12_Common: _include: fields/adc/adc_v3_common_h7.yaml @@ -233,9 +236,19 @@ MDMA: _include: - collect/dma/mdma.yaml -OCTOSPI2: +OCTOSPI1: + WCCR: + _modify: + IMODE: + bitWidth: 3 + IDTR: + bitOffset: 3 + ISIZE: + bitOffset: 4 + bitWidth: 2 _include: - patches/octospi/h7.yaml + - fields/octospi/l5.yaml OctoSPII_O_Manager: {} diff --git a/devices/stm32h7b0.yaml b/devices/stm32h7b0.yaml index 491df4595..b7d888b07 100644 --- a/devices/stm32h7b0.yaml +++ b/devices/stm32h7b0.yaml @@ -27,6 +27,9 @@ _modify: OctoSPII_O_Manager: groupName: OctoSPII_O_Manager +_rebase: + OCTOSPI1: OCTOSPI2 + ADC12_Common: _include: fields/adc/adc_v3_common_h7.yaml @@ -250,9 +253,19 @@ MDMA: _include: - collect/dma/mdma.yaml -OCTOSPI2: +OCTOSPI1: + WCCR: + _modify: + IMODE: + bitWidth: 3 + IDTR: + bitOffset: 3 + ISIZE: + bitOffset: 4 + bitWidth: 2 _include: - patches/octospi/h7.yaml + - fields/octospi/l5.yaml OctoSPII_O_Manager: {} diff --git a/devices/stm32h7b3.yaml b/devices/stm32h7b3.yaml index 234aae741..1147ed68a 100644 --- a/devices/stm32h7b3.yaml +++ b/devices/stm32h7b3.yaml @@ -29,6 +29,9 @@ _modify: OctoSPII_O_Manager: groupName: OctoSPII_O_Manager +_rebase: + OCTOSPI1: OCTOSPI2 + ADC12_Common: _include: fields/adc/adc_v3_common_h7.yaml @@ -252,9 +255,19 @@ MDMA: _include: - collect/dma/mdma.yaml -OCTOSPI2: +OCTOSPI1: + WCCR: + _modify: + IMODE: + bitWidth: 3 + IDTR: + bitOffset: 3 + ISIZE: + bitOffset: 4 + bitWidth: 2 _include: - patches/octospi/h7.yaml + - fields/octospi/l5.yaml OctoSPII_O_Manager: {} diff --git a/devices/stm32h7r.yaml b/devices/stm32h7r.yaml index 2d6a6057c..5d4cbc0af 100644 --- a/devices/stm32h7r.yaml +++ b/devices/stm32h7r.yaml @@ -161,6 +161,9 @@ LPUART1: LTDC: _strip: LTDC_ + _include: + - fields/ltdc/ltdc.yaml + - collect/ltdc/layer.yaml MDIOS: _strip: MDIOS_ diff --git a/devices/stm32h7s.yaml b/devices/stm32h7s.yaml index 5a1a242e0..d9bfdd2f8 100644 --- a/devices/stm32h7s.yaml +++ b/devices/stm32h7s.yaml @@ -175,6 +175,9 @@ LPUART1: LTDC: _strip: LTDC_ + _include: + - fields/ltdc/ltdc.yaml + - collect/ltdc/layer.yaml MCE1: _strip: MCE_ diff --git a/devices/stm32l4p5.yaml b/devices/stm32l4p5.yaml index 82b115b84..fc2e4b637 100644 --- a/devices/stm32l4p5.yaml +++ b/devices/stm32l4p5.yaml @@ -101,6 +101,7 @@ DMA1: DMA2D: _include: - patches/dma/dma2d_l4+.yaml + - fields/dma/dma2d_v2.yaml DMAMUX: _include: @@ -196,15 +197,12 @@ LPUART1: LTDC: _include: - fields/ltdc/ltdc.yaml + - collect/ltdc/layer.yaml MPU: _strip: MPU_ OCTOSPI1: - DCR1: - _modify: - CSHT: - bitWidth: 6 _include: - patches/octospi/l4+.yaml - fields/octospi/l4.yaml diff --git a/devices/stm32l4r5.yaml b/devices/stm32l4r5.yaml index 6f7d8d3be..9c8eec198 100644 --- a/devices/stm32l4r5.yaml +++ b/devices/stm32l4r5.yaml @@ -111,7 +111,8 @@ DMA1: DMA2D: _include: - - fields/dma/dma2d_v1.yaml + - patches/dma/dma2d_l4+.yaml + - fields/dma/dma2d_v2.yaml DMAMUX1: _include: @@ -194,9 +195,22 @@ LPUART1: - patches/usart/rename_CR1_ISR_enabled_disabled.yaml - fields/usart/v4/lp_wl.yaml -LTDC: {} +LTDC: + _include: + - fields/ltdc/ltdc.yaml + - collect/ltdc/layer.yaml -OCTOSPI1: {} +OCTOSPI1: + DCR2: + _add: + WRAPSIZE: + bitOffset: 16 + bitWidth: 3 + description: Wrap size + _include: + - patches/octospi/ddm.yaml + - patches/octospi/add_wrap.yaml + - fields/octospi/l4.yaml OCTOSPIM: {} diff --git a/devices/stm32l4r9.yaml b/devices/stm32l4r9.yaml index 8d2d787df..2bfa6c015 100644 --- a/devices/stm32l4r9.yaml +++ b/devices/stm32l4r9.yaml @@ -95,7 +95,8 @@ DMA1: DMA2D: _include: - - fields/dma/dma2d_v1.yaml + - patches/dma/dma2d_l4+.yaml + - fields/dma/dma2d_v2.yaml DMAMUX1: _include: @@ -177,9 +178,15 @@ LPUART1: - patches/usart/rename_CR1_ISR_enabled_disabled.yaml - fields/usart/v4/lp_wl.yaml -LTDC: {} +LTDC: + _include: + - fields/ltdc/ltdc.yaml + - collect/ltdc/layer.yaml -OCTOSPI1: {} +OCTOSPI1: + _include: + - patches/octospi/l4+.yaml + - fields/octospi/l4.yaml OCTOSPIM: {} diff --git a/devices/stm32l552.yaml b/devices/stm32l552.yaml index b288255ba..77e77edf7 100644 --- a/devices/stm32l552.yaml +++ b/devices/stm32l552.yaml @@ -171,7 +171,14 @@ LPUART1: - patches/usart/rename_CR2_DATAINV_field.yaml - fields/usart/v4/lp_wl.yaml -OCTOSPI1: {} +OCTOSPI1: + DCR1: + _modify: + MTYP: + bitWidth: 3 + _include: + - patches/octospi/ddm.yaml + - fields/octospi/l5.yaml OPAMP: {} diff --git a/devices/stm32l562.yaml b/devices/stm32l562.yaml index 8dec39d60..5dd971cfd 100644 --- a/devices/stm32l562.yaml +++ b/devices/stm32l562.yaml @@ -182,7 +182,14 @@ LPUART1: - patches/usart/rename_CR2_DATAINV_field.yaml - fields/usart/v4/lp_wl.yaml -OCTOSPI1: {} +OCTOSPI1: + DCR1: + _modify: + MTYP: + bitWidth: 3 + _include: + - patches/octospi/ddm.yaml + - fields/octospi/l5.yaml OPAMP: {} diff --git a/devices/stm32n645.yaml b/devices/stm32n645.yaml index fc2bf3e35..81ecd2ef4 100644 --- a/devices/stm32n645.yaml +++ b/devices/stm32n645.yaml @@ -198,7 +198,7 @@ VREFBUF: WWDG: _strip: WWDG_ _include: - - patches/16bit.yaml + - patches/16bit_with_mask.yaml - fields/wwdg/wwdg_v2.yaml XSPI1: diff --git a/devices/stm32n647.yaml b/devices/stm32n647.yaml index f4ebf43ec..645137de9 100644 --- a/devices/stm32n647.yaml +++ b/devices/stm32n647.yaml @@ -198,7 +198,7 @@ VREFBUF: WWDG: _strip: WWDG_ _include: - - patches/16bit.yaml + - patches/16bit_with_mask.yaml - fields/wwdg/wwdg_v2.yaml XSPI1: diff --git a/devices/stm32n655.yaml b/devices/stm32n655.yaml index 7809100f4..fe3d2abc6 100644 --- a/devices/stm32n655.yaml +++ b/devices/stm32n655.yaml @@ -210,7 +210,7 @@ VREFBUF: WWDG: _strip: WWDG_ _include: - - patches/16bit.yaml + - patches/16bit_with_mask.yaml - fields/wwdg/wwdg_v2.yaml XSPI1: diff --git a/devices/stm32n657.yaml b/devices/stm32n657.yaml index 2c918b0f7..d937ed1a2 100644 --- a/devices/stm32n657.yaml +++ b/devices/stm32n657.yaml @@ -210,7 +210,7 @@ VREFBUF: WWDG: _strip: WWDG_ _include: - - patches/16bit.yaml + - patches/16bit_with_mask.yaml - fields/wwdg/wwdg_v2.yaml XSPI1: diff --git a/devices/stm32u535.yaml b/devices/stm32u535.yaml index aa4d2391e..c153c87cd 100644 --- a/devices/stm32u535.yaml +++ b/devices/stm32u535.yaml @@ -148,6 +148,8 @@ LPDMA1: LPGPIO1: _strip: LPGPIO_ + _include: + - collect/lpgpio/lp.yaml LPTIM[14]: {} diff --git a/devices/stm32u545.yaml b/devices/stm32u545.yaml index 6b16f4386..8e7799b05 100644 --- a/devices/stm32u545.yaml +++ b/devices/stm32u545.yaml @@ -156,6 +156,8 @@ LPDMA1: LPGPIO1: _strip: LPGPIO_ + _include: + - collect/lpgpio/lp.yaml LPTIM[14]: {} diff --git a/devices/stm32u575.yaml b/devices/stm32u575.yaml index bfa8a6179..a628bd054 100644 --- a/devices/stm32u575.yaml +++ b/devices/stm32u575.yaml @@ -163,6 +163,8 @@ LPDMA1: LPGPIO1: _strip: LPGPIO_ + _include: + - collect/lpgpio/lp.yaml LPTIM[14]: {} diff --git a/devices/stm32u585.yaml b/devices/stm32u585.yaml index aca714365..4378bfe78 100644 --- a/devices/stm32u585.yaml +++ b/devices/stm32u585.yaml @@ -172,6 +172,8 @@ LPDMA1: LPGPIO1: _strip: LPGPIO_ + _include: + - collect/lpgpio/lp.yaml LPTIM[14]: {} diff --git a/devices/stm32u595.yaml b/devices/stm32u595.yaml index d784ba291..5b826cd3c 100644 --- a/devices/stm32u595.yaml +++ b/devices/stm32u595.yaml @@ -163,6 +163,8 @@ LPDMA1: LPGPIO1: _strip: LPGPIO_ + _include: + - collect/lpgpio/lp.yaml LPTIM[14]: {} diff --git a/devices/stm32u599.yaml b/devices/stm32u599.yaml index b2f7dd5d4..1ef8556ab 100644 --- a/devices/stm32u599.yaml +++ b/devices/stm32u599.yaml @@ -174,6 +174,8 @@ LPDMA1: LPGPIO1: _strip: LPGPIO_ + _include: + - collect/lpgpio/lp.yaml LPTIM[14]: {} @@ -184,6 +186,9 @@ LPUART1: LTDC: _strip: LTDC_ + _include: + - fields/ltdc/ltdc.yaml + - collect/ltdc/layer.yaml MDF1: _strip: MDF_ diff --git a/devices/stm32u5a5.yaml b/devices/stm32u5a5.yaml index 632001460..8c4521e5d 100644 --- a/devices/stm32u5a5.yaml +++ b/devices/stm32u5a5.yaml @@ -171,6 +171,8 @@ LPDMA1: LPGPIO1: _strip: LPGPIO_ + _include: + - collect/lpgpio/lp.yaml LPTIM[14]: {} diff --git a/devices/stm32u5a9.yaml b/devices/stm32u5a9.yaml index 25d97b357..0f9e86715 100644 --- a/devices/stm32u5a9.yaml +++ b/devices/stm32u5a9.yaml @@ -182,6 +182,8 @@ LPDMA1: LPGPIO1: _strip: LPGPIO_ + _include: + - collect/lpgpio/lp.yaml LPTIM[14]: {} @@ -192,6 +194,9 @@ LPUART1: LTDC: _strip: LTDC_ + _include: + - fields/ltdc/ltdc.yaml + - collect/ltdc/layer.yaml MDF1: _strip: MDF_ diff --git a/scripts/tool_install.sh b/scripts/tool_install.sh index 9835941e5..e8387bb90 100755 --- a/scripts/tool_install.sh +++ b/scripts/tool_install.sh @@ -4,7 +4,7 @@ set -euo pipefail CARGO_HOME="${CARGO_HOME:-$HOME/.cargo/}" -FORM_VERSION="${FORM_VERSION:-v0.12.1}" +FORM_VERSION="${FORM_VERSION:-v0.13.0}" SVDTOOLS_VERSION="${SVDTOOLS_VERSION:-v0.4.6}" SVD2RUST_VERSION="${SVD2RUST_VERSION:-v0.36.1}" SVDCONV_VERSION="${SVDCONV_VERSION:-3.3.46}"