Commit Graph

1637 Commits

Author SHA1 Message Date
dragonmux 51351862b9 usb/dwc: Added some defines that were missing for the DWC2 in the STM32H7 parts 2025-07-11 20:26:35 -07:00
dragonmux 972d408ba5 stm32/h7: Implemented support changing the clock routed to the USB peripherals in the RCC 2025-07-11 20:26:35 -07:00
dragonmux 2b6eb047e0 stm32/h7: Implemented support for the HSI48 2025-07-11 20:26:35 -07:00
dragonmux 9f8ce70771 stm32/h7: Enabled support for the CRS controller 2025-07-11 20:26:35 -07:00
dragonmux a603670266 stm32/h7: Implemented support for the RCC reset status register 2025-07-11 20:26:35 -07:00
dragonmux cdd8f2adac stm32/h7: Implemented support for the Flash controller having untangled the previous pretending it was the F2/F4 controller mess 2025-07-11 20:26:35 -07:00
dragonmux ee418f1780 usb: Fixed the USB string descriptor internal type appearing and being defined for C++ code, the unsized array member is UB in C++ 2025-07-11 20:26:35 -07:00
dragonmux c31a239ae3 stm32/h7: Defined variant identification constants 2025-07-11 20:26:35 -07:00
dragonmux 7079ffdcac stm32/h7: Defined the device electronic signature addresses foro the memory map 2025-07-11 20:26:35 -07:00
dragonmux da0a6a9ce4 usb/dwc: Fixed some type conversions errors in the common header 2025-07-11 20:26:35 -07:00
dragonmux 24cdca8101 usb/dwc: Enable the STM32H7 in the DWC2 support 2025-07-11 20:26:35 -07:00
dragonmux 903720f6dc stm32/h7: Added a couple of missing U(S)ART defines to the USART header 2025-07-11 20:26:35 -07:00
dragonmux 83e571db67 stm32/h7: Fixed the QuadSPI headers not working with multiple peripehrals 2025-07-11 20:26:35 -07:00
dragonmux d294ebf746 stm32/h7: Added various missing peripherals to the RCC header 2025-07-11 20:26:35 -07:00
dragonmux 5baf6c9957 stm32/h7: Corrected the memory map, adding in base addresses for peripherals found on the value line parts 2025-07-11 20:26:35 -07:00
dragonmux 36326945c9 stm32/h7/rcc: Fixed a typo in one of the docs comments for the clocking configuration structure 2025-07-11 20:26:35 -07:00
blutack bb152f3ab7 Enable fifos on G4 2025-07-11 19:28:40 -07:00
blutack 6778da3659 Add LPUART1 definition to usart.h for stm32g4x
Add LPUART1 definition for the STM32G4xx LPUART. It is possible to use LPUART1_BASE, but without the LPUART1 definition, usart_set_baudrate will calculate BRR incorrectly and the UART will not work due to an ifdef.
Tested and working @ 115200 on a NUCLEO-G474RE.
2025-07-11 19:28:40 -07:00
dragonmux 5864756482 stm32/timer: Exposed the new OC mode functions in the header 2025-07-11 19:15:56 -07:00
dragonmux 130ea30f52 usb/bos: Fixed how the BOS registration function is provided so it works with C++ code 2025-07-11 19:14:29 -07:00
dragonmux c5e47af5da usb/microsoft: Implemented the feature descriptor structures 2025-07-11 19:14:29 -07:00
dragonmux 08293b8e0c usb/microsoft: Implemented more of the descriptor structures 2025-07-11 19:14:29 -07:00
dragonmux 5ba3293da2 usbd: Added an array length helper macro 2025-07-11 19:14:29 -07:00
dragonmux 9efcb120f7 usb: Begun implementing support for sending the microsoft OS descriptor set structures 2025-07-11 19:14:29 -07:00
dragonmux 9e0dbfc137 usb/microsoft: Implemented the set header structure 2025-07-11 19:14:29 -07:00
dragonmux b7ddb7c7c0 usb: Implemented support for sending the Microsoft OS-specific descriptor component of a platform capability descriptor 2025-07-11 19:14:29 -07:00
dragonmux c1247110d8 usb: Begun implementing microsoft OS-specific descriptor support 2025-07-11 19:14:29 -07:00
dragonmux 1bc180c639 usb_standard: Implemented support for sending out what we have so far of a BOS descriptor 2025-07-11 19:14:29 -07:00
dragonmux 1d97cbf6e1 usb: Begun implementing support for Binary Object Stores and their capability descriptors 2025-07-11 19:14:29 -07:00
Karl Palsson 201f5bcfb3 stm32/dmamux: fix typo in EDGE
Fixes: https://github.com/libopencm3/libopencm3/issues/1563
2024-10-10 21:47:39 +00:00
Karl Palsson 228f28fa66 stm32g4: flash: fix OPTR_DUALBANK definition
off by one error transcribing the document.

Fixes: https://github.com/libopencm3/libopencm3/issues/1559
2024-09-16 22:15:51 +00:00
Karl Palsson b8e6e5d373 stm32h7: rcc: fix RCC_PLLFRAC address
copy/paste in original submission

Fixes: 2ca56f4c stm32h7: updates to PWR and RCC to support PLL configuration.
Fixes: https://github.com/libopencm3/libopencm3/issues/1547
Signed-off-by: Karl Palsson <karlp@tweak.au>
2024-06-21 22:36:43 +00:00
Roman Buchert bb4c5d7324 stm32: quadspi: Add missing bracket at line 51.
Fixes: https://github.com/libopencm3/libopencm3/issues/1534
Reviewed-by: Karl Palsson <karlp@tweak.au>
2024-03-25 16:59:28 +00:00
neoxic ec5aeba354 stm32g4: add IWDG support
Reviewed-by: Karl Palsson <karlp@tweak.au>
2024-03-11 09:11:29 +00:00
neoxic 0ee2477d08 stm32g4: fix ST_TSENSE_CAL2_110C -> ST_TSENSE_CAL2_130C
Fixes: 4e70d06d6 stm32g4: Add basic support
Reviewed-by: Karl Palsson <karlp@tweak.au>
2024-03-04 09:45:51 +00:00
Karl Palsson 1f3abd4376 stm32g4: irq.json: use fdcanX_itY consistently
Other families used fdcanX_itY already, and that matches the terminology
of the reference manual, so move to that style for consistency.

Signed-off-by: Karl Palsson <karlp@tweak.au>
2023-10-04 21:44:27 +00:00
TomasPech 1acf0c1f56 stm32g4: irc.json: fix FDCAN1_INT0/1 swap
The swapped lines generated the wrong nvic.h, then jumping into the wrong ISR.
See data sheet RM0440rev7 (page442, table 97).

Reviewed-by: Karl Palsson <karlp@tweak.au>
2023-10-04 21:40:45 +00:00
Karl Palsson 32a1692077 stm32/g4/dmamux: fix duplicated defines
Fixes: https://github.com/libopencm3/libopencm3/issues/1491

Signed-off-by: Karl Palsson <karlp@tweak.au>
2023-08-16 13:49:16 +00:00
dragonmux 10cfbd7652 lm4f/uart: Implemented a function to get the current parity setting for a UART 2023-04-16 22:18:43 -07:00
dragonmux f0262cb4a9 lm4f/uart: Implemented a function to get the current stop bits setting for a UART 2023-04-16 22:18:43 -07:00
dragonmux 78ace36308 lm4f/uart: Implemented a function to get the current databits setting for a UART 2023-04-16 22:18:43 -07:00
dragonmux c212d19cd4 usb/cdc: Added a definition for the GET_LINE_CODING class-specific request 2023-04-16 22:18:43 -07:00
dragonmux 56ec4c2b06 stm32/usart: Automatic whitespace cleanup 2023-04-16 22:18:43 -07:00
dragonmux 188671389d stm32/usart: Implemented a function to get the current parity setting for a USART 2023-04-16 22:18:43 -07:00
dragonmux 48a8355874 stm32/usart: Implemented a function to get the current stop bits setting for a USART 2023-04-16 22:18:43 -07:00
dragonmux 0241982fb4 stm32/usart: Implemented a function to get the current databits setting for a USART 2023-04-16 22:18:43 -07:00
Karl Palsson 189017b25c usb:msc: include referenced usbd_device headers
In addition to stdint.h, MSC directly relies on the usbd_device type
definition existing.  Ensure it has included it's own dependencies.

Fixes: https://github.com/libopencm3/libopencm3/issues/1471
Signed-off-by: Karl Palsson <karlp@tweak.au>
2023-03-07 14:27:20 +00:00
Karl Palsson 9914cd1d6c usb: add missing stdint.h includes
Some class headers were not including stdint.h themselves, despite
relying on those types, and relying on them already being included
earlier elsewhere.  Consistently include stdint.h where it's used.

Fixes: https://github.com/libopencm3/libopencm3/issues/1471
Signed-off-by: Karl Palsson <karlp@tweak.au>
2023-03-07 14:23:49 +00:00
Karl Palsson e643f66342 stm32g4:rcc: add uart peripheral clock source helpers
Required so that the common uart infrastructure can be updated. This was
the last family to receive this implementation.

Signed-off-by: Karl Palsson <karlp@tweak.au>
2023-02-03 00:02:59 +00:00
Karl Palsson e9426db222 stm32l4: rcc: use SYSCLK consistently with other families
Signed-off-by: Karl Palsson <karlp@tweak.au>
2023-02-02 23:58:02 +00:00