diff options
author | Mary Ruthven <mruthven@chromium.org> | 2023-04-14 11:09:40 -0700 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-04-14 21:10:56 +0000 |
commit | b53356f66bffbb6bf6253f58af7fc716f71101ba (patch) | |
tree | 56008c0c3a161fedb60006316ba36dce4733d83f | |
parent | c65ffbb853be7999cc24220c66da79e3ade4e857 (diff) | |
download | chrome-ec-b53356f66bffbb6bf6253f58af7fc716f71101ba.tar.gz |
board_space: use a macro to define info space sizes
Check the size of the field to determine what size each space is.
BUG=none
TEST=BOARD_ID size is still 12, SN DATA size is still 16, APRV size is
still 4, and FACTORY CFG size is still 8.
Change-Id: Ib01baa7a9b63c5d6cc99b5feff71f50095cac901
Signed-off-by: Mary Ruthven <mruthven@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4426795
Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
-rw-r--r-- | chip/g/board_space.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/chip/g/board_space.h b/chip/g/board_space.h index 0c15bde5bf..0f7a9440e7 100644 --- a/chip/g/board_space.h +++ b/chip/g/board_space.h @@ -77,16 +77,19 @@ BUILD_ASSERT(sizeof(struct info1_layout) == FLASH_INFO_SIZE); #define INFO_SPACE_OFFSET(field) (INFO_BOARD_SPACE_OFFSET + \ offsetof(struct info1_board_space, field)) -#define INFO_BOARD_ID_SIZE sizeof(struct board_id) +#define INFO_SPACE_SIZE(field) \ + (sizeof(((struct info1_board_space *)0)->field)) + +#define INFO_BOARD_ID_SIZE INFO_SPACE_SIZE(bid) #define INFO_BOARD_ID_OFFSET INFO_SPACE_OFFSET(bid) -#define INFO_SN_DATA_SIZE sizeof(struct sn_data) +#define INFO_SN_DATA_SIZE INFO_SPACE_SIZE(sn) #define INFO_SN_DATA_OFFSET INFO_SPACE_OFFSET(sn) -#define INFO_APRV_DATA_SIZE sizeof(uint32_t) +#define INFO_APRV_DATA_SIZE INFO_SPACE_SIZE(aprv_not_needed) #define INFO_APRV_DATA_OFFSET INFO_SPACE_OFFSET(aprv_not_needed) -#define INFO_FACTORY_CFG_SIZE sizeof(uint64_t) +#define INFO_FACTORY_CFG_SIZE INFO_SPACE_SIZE(factory_cfg) #define INFO_FACTORY_CFG_OFFSET INFO_SPACE_OFFSET(factory_cfg) /* |