@add
<> vhex/defs/call
| add common `vhex_call_t` which allow indirect call invocation
| add default helper macros to generate internal struct
| add default helper macros to involve manually the vhex call
<> vhex/dma
| add DMA user-level API
| add DMA user-level types
| add DNA driver-level interface
<> vhex/driver/mpu/sh/sh7305
| [dma] add hardware definition
| [dma] prepare DMA driver definition (WIP)
| [dma] add DMA driver declaration (WIP)
| [dma] prepare DMA primitives (WIP)
<> src/dma
| wrap the DMA driver
| expose the DMA user-level API
| expose the DMA module
@update
<> board/fxcg50/fxcg50.ld
| expose the two VRAM for the future frame render which use the triple
buffering. For now, this method add ~347ko in the generated ELF, but it's a
temporary.
<> driver/mpu/sh/sh7305
| [intc] rename some kernel-level function
| [intc] use the new vhex call mechanism instead of timer-specific indirect call
| [intc] update the generic interrupt handler installation
| [intc] isolate the generic interrupt handler
| [rtc] use the new vhex call mechanism instead of rtc-specific indirect call
| [keysc] use the new vhex call mechanism
@fix
<> src
| [keyboard] fix key_t type definition
| [keyboard] fix the driver priority
| [timer] fix the driver priority