[riot-notifications] [RIOT-OS/RIOT] cpu/stm32: model MCO clock configuration in kconfig (#15706)

Alexandre Abadie notifications at github.com
Tue Jan 5 12:05:31 CET 2021


<!--
The RIOT community cares a lot about code quality.
Therefore, before describing what your contribution is about, we would like
you to make sure that your modifications are compliant with the RIOT
coding conventions, see https://github.com/RIOT-OS/RIOT/wiki/Coding-conventions.
-->

### Contribution description

This PR adds a Kconfig configuration for the MCO (MCU Clock Output) of some STM32 families (F0/F1/F3/G0/G4/L0/L1/L4/WB). F2/F4/F7 families are not addressed by this PR because there clock configuration is not yet modeled in Kconfig (see #15632) and they provide 2 MCO outputs.

To support the fact that f1 and some f0 and f3 don't provide an MCO prescaler, the `CLOCK_HAS_NO_MCO_PRE` config is introduced and selected in the affected family (f1) and lines (f0/f3).

<!--
Put here the description of your contribution:
- describe which part(s) of RIOT is (are) involved
- if it's a bug fix, describe the bug that it solves and how it is solved
- you can also give more information to reviewers about how to test your changes
-->


### Testing procedure

Run `make BOARD=<board> -C examples/hello-world menuconfig` and verify that the `Enable MCU Clock Output` option is displayed in the STM32 clock configuration submenu. Once selected, the MCO prescaler and source can be selected. By default, the presaler is 1 and the source is PLLCLK.

<!--
Details steps to test your contribution:
- which test/example to compile for which board and is there a 'test' command
- how to know that it was not working/available in master
- the expected success test output
-->


### Issues/PRs references

Tick an item in #14975 

<!--
Examples: Fixes #1234. See also #5678. Depends on PR #9876.

Please use keywords (e.g., fixes, resolve) with the links to the issues you
resolved, this way they will be automatically closed when your pull request
is merged. See https://help.github.com/articles/closing-issues-using-keywords/.
-->

You can view, comment on, or merge this pull request online at:

  https://github.com/RIOT-OS/RIOT/pull/15706

-- Commit Summary --

  * cpu/stm32/kconfigs: select cpu fam/lines without mco prescaler
  * cpu/stm32: model MCO in Kconfig for f0/f1/f3
  * cpu/stm32: model MCO in Kconfig for g0/g4
  * cpu/stm32: model MCO in Kconfig for l0/l1
  * cpu/stm32: model MCO in Kconfig for l4/wb

-- File Changes --

    M cpu/stm32/kconfigs/Kconfig.clk (81)
    M cpu/stm32/kconfigs/f0/Kconfig.lines (3)
    M cpu/stm32/kconfigs/f1/Kconfig (1)
    M cpu/stm32/kconfigs/f3/Kconfig.lines (5)

-- Patch Links --

https://github.com/RIOT-OS/RIOT/pull/15706.patch
https://github.com/RIOT-OS/RIOT/pull/15706.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/RIOT-OS/RIOT/pull/15706
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/notifications/attachments/20210105/9db75c2a/attachment.htm>


More information about the notifications mailing list