Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rcc: add options to configure more PLL outputs #26

Merged
merged 1 commit into from
Jul 29, 2019

Conversation

richardeoin
Copy link
Member

  • All 3 outputs of PLL1 can be configured.
  • Moving closer to a generic interface for PLL2/PLL3; just needs macro
    definitions and call to setup.
  • An assert will occour if pll1_p_ck is set independently when it is
    requried for sys_ck.
  • When pll1_r_ck is None in the configuration struct, it is set if
    required to keep traceclk running. Afaict there's no documentation
    on acceptable frequencies for traceclk, set p_ck/2 as a sensible
    choice (can be overridden by setting some pll1_r_ck).

* All 3 outputs of PLL1 can be configured.
* Moving closer to a generic interface for PLL2/PLL3; just needs macro
  definitions and call to setup.
* An `assert` will occour if pll1_p_ck is set independently when it is
  requried for sys_ck.
* When `pll1_r_ck` is `None` in the configuration struct, it is set if
  required to keep `traceclk` running. Afaict there's no documentation
  on acceptable frequencies for `traceclk`, set p_ck/2 as a sensible
  choice (can be overridden by setting some `pll1_r_ck`).
@richardeoin
Copy link
Member Author

bors try

@richardeoin
Copy link
Member Author

Anyhow, it's okay since #25 was merged.

Ready for review.

@richardeoin richardeoin added this to the v0.2.0 release milestone Jul 25, 2019
@richardeoin
Copy link
Member Author

bors r+

bors bot added a commit that referenced this pull request Jul 29, 2019
19: timers, bugfix: fix periodic CountDown timer r=richardeoin a=richardeoin

Previously the `CountDown` timer failed to start a new countdown if the periodic timer was running and no `wait()` call was made in the previous period. This was as the UIF bit was already set.

See embedded-hal docs for the contract:
https://docs.rs/embedded-hal/0.2.3/embedded_hal/timer/trait.CountDown.html#tymethod.start

Add  example to demonstrate correct behaviour.

26: rcc: add options to configure more PLL outputs r=richardeoin a=richardeoin

* All 3 outputs of PLL1 can be configured.
* Moving closer to a generic interface for PLL2/PLL3; just needs macro
  definitions and call to setup.
* An `assert` will occour if pll1_p_ck is set independently when it is
  requried for sys_ck.
* When `pll1_r_ck` is `None` in the configuration struct, it is set if
  required to keep `traceclk` running. Afaict there's no documentation
  on acceptable frequencies for `traceclk`, set p_ck/2 as a sensible
  choice (can be overridden by setting some `pll1_r_ck`).

27: Init traits prelude r=richardeoin a=richardeoin

adc: Add initialisation trait

Simplifies usage:

```rust
let _ = adc::Adc::adc3(dp.ADC3, &mut delay, &mut ccdr);
```
to
```rust
let _ = dp.ADC3.adc(&mut delay, &mut ccdr);
```

Previous method still works.

Re-work arguments for timer, doesn't break anything as there aren't any examples yet.

Closes #20 

28: Porting i2c to the extension trait pattern r=richardeoin a=hargoniX

See #27 

31: dependencies: use stm32h7 PAC 0.8 r=richardeoin a=jordens

* remove and warnings notes on using the local build of stm32h7
* bump cortex-m-rt to 0.6.10 (.ARM.exidx section)
* mention that this works with beta

close: #5 

Co-authored-by: Richard Meadows <[email protected]>
Co-authored-by: Henrik Böving <[email protected]>
Co-authored-by: Robert Jördens <[email protected]>
@bors
Copy link
Contributor

bors bot commented Jul 29, 2019

Timed out (retrying...)

bors bot added a commit that referenced this pull request Jul 29, 2019
19: timers, bugfix: fix periodic CountDown timer r=richardeoin a=richardeoin

Previously the `CountDown` timer failed to start a new countdown if the periodic timer was running and no `wait()` call was made in the previous period. This was as the UIF bit was already set.

See embedded-hal docs for the contract:
https://docs.rs/embedded-hal/0.2.3/embedded_hal/timer/trait.CountDown.html#tymethod.start

Add  example to demonstrate correct behaviour.

26: rcc: add options to configure more PLL outputs r=richardeoin a=richardeoin

* All 3 outputs of PLL1 can be configured.
* Moving closer to a generic interface for PLL2/PLL3; just needs macro
  definitions and call to setup.
* An `assert` will occour if pll1_p_ck is set independently when it is
  requried for sys_ck.
* When `pll1_r_ck` is `None` in the configuration struct, it is set if
  required to keep `traceclk` running. Afaict there's no documentation
  on acceptable frequencies for `traceclk`, set p_ck/2 as a sensible
  choice (can be overridden by setting some `pll1_r_ck`).

Co-authored-by: Richard Meadows <[email protected]>
@bors
Copy link
Contributor

bors bot commented Jul 29, 2019

Timed out (retrying...)

bors bot added a commit that referenced this pull request Jul 29, 2019
26: rcc: add options to configure more PLL outputs r=richardeoin a=richardeoin

* All 3 outputs of PLL1 can be configured.
* Moving closer to a generic interface for PLL2/PLL3; just needs macro
  definitions and call to setup.
* An `assert` will occour if pll1_p_ck is set independently when it is
  requried for sys_ck.
* When `pll1_r_ck` is `None` in the configuration struct, it is set if
  required to keep `traceclk` running. Afaict there's no documentation
  on acceptable frequencies for `traceclk`, set p_ck/2 as a sensible
  choice (can be overridden by setting some `pll1_r_ck`).

Co-authored-by: Richard Meadows <[email protected]>
@bors
Copy link
Contributor

bors bot commented Jul 29, 2019

Build succeeded

  • continuous-integration/travis-ci/push

@bors bors bot merged commit 97c58f4 into stm32-rs:master Jul 29, 2019
@bors
Copy link
Contributor

bors bot commented Oct 23, 2019

try

Merge conflict

mtthw-meyer pushed a commit to mtthw-meyer/stm32h7xx-hal that referenced this pull request Jul 9, 2020
26: rcc: add options to configure more PLL outputs r=richardeoin a=richardeoin

* All 3 outputs of PLL1 can be configured.
* Moving closer to a generic interface for PLL2/PLL3; just needs macro
  definitions and call to setup.
* An `assert` will occour if pll1_p_ck is set independently when it is
  requried for sys_ck.
* When `pll1_r_ck` is `None` in the configuration struct, it is set if
  required to keep `traceclk` running. Afaict there's no documentation
  on acceptable frequencies for `traceclk`, set p_ck/2 as a sensible
  choice (can be overridden by setting some `pll1_r_ck`).

Co-authored-by: Richard Meadows <[email protected]>
@richardeoin richardeoin deleted the rcc-3-outputs branch December 12, 2021 21:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant