Skip to content

cpu/stm32x: unified timer driver#6184

Merged
haukepetersen merged 7 commits intoRIOT-OS:masterfrom
haukepetersen:opt_stm32_timer
Dec 13, 2016
Merged

cpu/stm32x: unified timer driver#6184
haukepetersen merged 7 commits intoRIOT-OS:masterfrom
haukepetersen:opt_stm32_timer

Conversation

@haukepetersen
Copy link
Copy Markdown
Contributor

@haukepetersen haukepetersen commented Dec 7, 2016

This PR brings some slight ROM savings on most STM-based boards, but most significantly it saves a huge amount of code: 290 additions and 1,849 deletions.

Unfortunately I had to remove the pwm driver for the stm32f2 temporarily, will re-add it with a unified PWM implementation later today. So until this is done, I mark this PR as waiting for other PR.

EDIT: PWM driver for the stm32f2 is re-introduces with #6186

Successfully tested for

  • nucleo-f072
  • nucleo-f090
  • nucleo-f334
  • nucleo-l159
  • iotlab-m3

@haukepetersen haukepetersen added Platform: ARM Platform: This PR/issue effects ARM-based platforms Type: cleanup The issue proposes a clean-up / The PR cleans-up parts of the codebase / documentation Type: enhancement The issue suggests enhanceable parts / The PR enhances parts of the codebase / documentation Area: timers Area: timer subsystems labels Dec 7, 2016
@haukepetersen haukepetersen added this to the Release 2017.01 milestone Dec 7, 2016
@haukepetersen
Copy link
Copy Markdown
Contributor Author

fixed one more issue with the clock speed calculation.

Copy link
Copy Markdown
Contributor

@aabadie aabadie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had a problem with nucleo-f401 (same with f446): the xtimer drift test build failed. It appears that there are some remaining xtimer definitions in board.h for those boards (and TIMER_0 no longer exists). Commenting out #define XTIMER_DEV TIMER_0 fixed the issue but that might not be enough.

@haukepetersen
Copy link
Copy Markdown
Contributor Author

japp, missed those old deprecated defines. Would you mind testing it again?

@haukepetersen
Copy link
Copy Markdown
Contributor Author

Also, in case the drift test still fails, would you mind to check if it's working on the current master to make sure this PR is actually breaking it?! Thanks

Copy link
Copy Markdown
Contributor

@aabadie aabadie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for applying the change. Now it builds and works (and it's also working in master).
ACK

@aabadie aabadie added the CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR label Dec 8, 2016
@haukepetersen haukepetersen added the CI: needs squashing Commits in this PR need to be squashed; If set, CI systems will mark this PR as unmergable label Dec 9, 2016
@haukepetersen haukepetersen removed the CI: needs squashing Commits in this PR need to be squashed; If set, CI systems will mark this PR as unmergable label Dec 9, 2016
@haukepetersen
Copy link
Copy Markdown
Contributor Author

Fixed missing .max = xxx assignment for stm32f1 based boards and squashed.

@haukepetersen haukepetersen added CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR and removed CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR labels Dec 12, 2016
@haukepetersen
Copy link
Copy Markdown
Contributor Author

restarted Murdock, apparently it got upset with the 'NEEDS SQUASHING' label...

@haukepetersen
Copy link
Copy Markdown
Contributor Author

ACKed and Murdock is happy -> go

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: timers Area: timer subsystems CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR Platform: ARM Platform: This PR/issue effects ARM-based platforms Type: cleanup The issue proposes a clean-up / The PR cleans-up parts of the codebase / documentation Type: enhancement The issue suggests enhanceable parts / The PR enhances parts of the codebase / documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants