[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 0/7] Add device STM32L4x5 RCC
From: |
Arnaud Minier |
Subject: |
[PATCH v2 0/7] Add device STM32L4x5 RCC |
Date: |
Thu, 18 Jan 2024 10:11:00 +0100 |
This patch adds a new device STM32L4x5 RCC (Reset and Clock Control) device and
is part
of a series implementing the STM32L4x5 with a few peripherals.
Due to the high number of lines, I tried to split the patch into several
independent commits.
Each commit compiles on its own but I had to add temporary workarounds in
intermediary commits to allow them to compile even if some functions are not
used. However, they have been removed once the functions were used. Tell me if
this is ok or if I should remove them.
Also, the tests are not very exhaustive for the moment. I have not found a way
to test the clocks' frequency from the qtests, which limits severely the
exhaustiveness of the tests.
Thanks to Philippe Mathieu-Daudé and Luc Michel for guiding me toward the
hw/misc/bcm2835_cprman.c implementation and answering my questions about clock
emulation in qemu !
Based-on: 20240109194438.70934-1-ines.varhol@telecom-paris.fr
([PATCH v4 0/3] Add device STM32L4x5 SYSCFG)
Changes from v1 to v2:
- Removed a mention in the tests
- Add an early return to prevent a clang compilation error in
rcc_update_pllsaixcfgr()
Arnaud Minier (7):
Implement STM32L4x5_RCC skeleton
Add an internal clock multiplexer object
Add an internal PLL Clock object
Add initialization information for PLLs and clock multiplexers
RCC: Handle Register Updates
STM32L4x5: Use the RCC Sysclk
Add tests for the STM32L4x5_RCC
MAINTAINERS | 5 +-
docs/system/arm/b-l475e-iot01a.rst | 2 +-
hw/arm/Kconfig | 1 +
hw/arm/b-l475e-iot01a.c | 10 +-
hw/arm/stm32l4x5_soc.c | 45 +-
hw/misc/Kconfig | 3 +
hw/misc/meson.build | 1 +
hw/misc/stm32l4x5_rcc.c | 1299 +++++++++++++++++++++
hw/misc/trace-events | 14 +
include/hw/arm/stm32l4x5_soc.h | 5 +-
include/hw/misc/stm32l4x5_rcc.h | 239 ++++
include/hw/misc/stm32l4x5_rcc_internals.h | 1044 +++++++++++++++++
tests/qtest/meson.build | 3 +-
tests/qtest/stm32l4x5_rcc-test.c | 210 ++++
14 files changed, 2836 insertions(+), 45 deletions(-)
create mode 100644 hw/misc/stm32l4x5_rcc.c
create mode 100644 include/hw/misc/stm32l4x5_rcc.h
create mode 100644 include/hw/misc/stm32l4x5_rcc_internals.h
create mode 100644 tests/qtest/stm32l4x5_rcc-test.c
--
2.34.1
- [PATCH v2 0/7] Add device STM32L4x5 RCC,
Arnaud Minier <=
- [PATCH v2 3/7] Add an internal PLL Clock object, Arnaud Minier, 2024/01/18
- [PATCH v2 4/7] Add initialization information for PLLs and clock multiplexers, Arnaud Minier, 2024/01/18
- [PATCH v2 2/7] Add an internal clock multiplexer object, Arnaud Minier, 2024/01/18
- [PATCH v2 6/7] STM32L4x5: Use the RCC Sysclk, Arnaud Minier, 2024/01/18
- [PATCH v2 1/7] Implement STM32L4x5_RCC skeleton, Arnaud Minier, 2024/01/18
- [PATCH v2 5/7] RCC: Handle Register Updates, Arnaud Minier, 2024/01/18
- [PATCH v2 7/7] Add tests for the STM32L4x5_RCC, Arnaud Minier, 2024/01/18