SMI_DATA_MASK
return (val & SMI_DATA_MASK) >> SMI_DATA_SHIFT;
((val << SMI_DATA_SHIFT) & SMI_DATA_MASK) |