hal/qemu/cortex/SystemTick.{hpp,cpp} programs the SysTick peripheral via raw register addresses (0xE000E010/14/18) and takes coreClockHz as an explicit constructor parameter rather than reading a global SystemCoreClock — no qemu-specific behavior, no CMSIS/device-header dependency. This is strictly more portable than the equivalent pattern currently duplicated in downstream HALs (e.g. hal-ti's local SystemTick, which reads extern uint32_t SystemCoreClock directly, tying it to whatever device header happens to be included).
Request: move to hal/cortex_m/SystemTick.{hpp,cpp} as a family-agnostic component. The explicit coreClockHz parameter is the right design to keep — please don't reintroduce a SystemCoreClock global dependency in the move.
hal/qemu/cortex/SystemTick.{hpp,cpp}programs theSysTickperipheral via raw register addresses (0xE000E010/14/18) and takescoreClockHzas an explicit constructor parameter rather than reading a globalSystemCoreClock— no qemu-specific behavior, no CMSIS/device-header dependency. This is strictly more portable than the equivalent pattern currently duplicated in downstream HALs (e.g. hal-ti's localSystemTick, which readsextern uint32_t SystemCoreClockdirectly, tying it to whatever device header happens to be included).Request: move to
hal/cortex_m/SystemTick.{hpp,cpp}as a family-agnostic component. The explicitcoreClockHzparameter is the right design to keep — please don't reintroduce aSystemCoreClockglobal dependency in the move.