Hi,
We need the clock tree first, then PAL and serial, then everything else, the "everything else" part will require all the help I can get

Most drivers will require a new revision, especially those using DMAs. PAL should be GPIOv2, probably the only one I will not need to touch.
Clock tree will be a bit different than usual probably, I wist to introduce "configurations", there will be a part statically configured (just like now) and another part that will be configurable at runtime, this means that some clock will be calculated at runtime depending on current settings and drivers will require an API to get the clock frequency on a specific clock point (currently all values are calculated at compile time).
In general, the current idea is:
- The state of PLLs and oscillators will be statically configured in mcuconf.h.
- The clock sources for peripheral will be statically configured in mcuconf.h.
- AHB, APB and CPU clocks will be configurable at runtime in order to allow frequency scaling.
- (tentative) add some support for halt/stop/sleep modes but it looks very complex.
Some details may change, I am still deciding things.
Giovanni