2266e133fb
Pointer arithmetic is currently used to calculate the address of a specific Local Vector Table (LVT) register (except LVT_CMCI) in lapic, since the registers are continuously placed with fixed padding in between. However each of these registers are declared as a single uint32_t in struct lapic, resulting pointer arithmetic on a non-array pointer which violates MISRA C requirements. This patch refactors struct lapic by converting the LVT registers fields (again except LVT_CMCI) to an array named lvt. The LVT indices are reordered to reflect the order of the LVT registers on hardware, and reused to index this lvt array. The code before and after the changes is semantically equivalent. Signed-off-by: Junjie Mao <junjie.mao@intel.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> |
||
---|---|---|
.. | ||
x86 |