Most peripherals combine well, for instance GPIOA through GPIOK are all
instances of gpio::RegisterBlock. The same applies to most other peripherals
like USART, SPI, I2C, and so on.
Timers are not well merged because their hierarchy is complicated: we can't
just have a single TIM since there are so many different register blocks,
but the solution at the moment (no merging) is not optimal either.
Ideally we might identify the various categories, such as:
As per README.
Most peripherals combine well, for instance
GPIOA
throughGPIOK
are all instances ofgpio::RegisterBlock
. The same applies to most other peripherals likeUSART
,SPI
,I2C
, and so on.Timers are not well merged because their hierarchy is complicated: we can't just have a single
TIM
since there are so many different register blocks, but the solution at the moment (no merging) is not optimal either.Ideally we might identify the various categories, such as:
We could then try to group those together.