Fix incorrect count of dma options for F3.
Value was hardcoded to 3, but the F3 has 4 ADCs.
Fix dmaPeripheralMapping for F3.
The dmaPeripheralMapping table was using index numbers and not device
numbers.
This meant all the dma mappings were out by one, eg.
```
```
ADC 1 is on DMA1, channel 1, but the output from dma ADC 2 list shows
the possibilities for ADC 1, not ADC 2 and shows no possibilities for
dma ADC 1 list
Ensure there are defaults for ADC4 on F3.
Always use 4 ADC instances for the ADC PG.
* PG should not be target dependant.
* Add a static assert which will fail if anything is changed.
Fix dmaopt in ADC PG, it should be a int8_t, not uint8_t
Fix occurrences of -1 that should be `DMA_OPT_UNUSED`.
Fixing this meant that dma_reqmap.h needed to be included in a few
places. When this was done there were errors because dma_reqmap.h was
included more than once and it's `#pragma once` was commented out.
Including dma_reqmap.h from every PG that uses `dmaopt` also caused
other compilation issues, fixed by this commit.
[TIME] Basic def
[TIMER] timer related commits
[TIMER] Remove stale comments from timer_stm32h7xx.c
[TIMER] New timerClock() based on RM0443 Table 48
[TIMER] Add DMA handling
[TIMER] White space tidy in timer_def.h
Add TIM1_UP_IRQ handling
Fix DEF_TIM_DMA_FULL emitting error for 7th and 15th entry
STM32H7 - add TIM15-CH2 (No DMA)
Fix comment spelling errors.
timer.h change for "Burst Dshot First working version"
Fix bad TIM9 handling for non-H7 case
Touch-up after rebase (timer.h)
F4 and F7 does not have dmaIrqHandler in timerHardware_s (anymore)
Changes per PR comment
Converting the universal target as well.
Simplified timer management some.
Added F722 support for good measuer.
Fixed SITL, tests.
Cleanup after rebase.
Added support for all timer consumers and F7.
Fixed 'USE_DMA_SPEC' for F3, some cleanups.