From 725c0e48f9caca623283d32b769adebcb4639491 Mon Sep 17 00:00:00 2001 From: cmbjxxiao Date: Thu, 24 Jul 2025 19:11:54 +0800 Subject: [PATCH 1/2] [arm_compiler_v4/v5] define rt_packed as __packed --- components/drivers/block/partitions/efi.h | 2 +- components/drivers/include/drivers/nvme.h | 4 ++-- include/rtcompiler.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/components/drivers/block/partitions/efi.h b/components/drivers/block/partitions/efi.h index 6a10ec884f4..090a1164902 100644 --- a/components/drivers/block/partitions/efi.h +++ b/components/drivers/block/partitions/efi.h @@ -30,7 +30,7 @@ #ifndef __UUID_H__ #define UUID_SIZE 16 -typedef struct +typedef struct rt_packed { rt_uint8_t b[UUID_SIZE]; } guid_t; diff --git a/components/drivers/include/drivers/nvme.h b/components/drivers/include/drivers/nvme.h index 1eca5d9caa3..4df2c420f9e 100644 --- a/components/drivers/include/drivers/nvme.h +++ b/components/drivers/include/drivers/nvme.h @@ -717,12 +717,12 @@ enum RT_NVME_CTRL_CTRATT_UUID_LIST = 1 << 9, }; -struct rt_nvme_lba_format +rt_packed(struct rt_nvme_lba_format { rt_le16_t ms; /* Metadata size */ rt_uint8_t ds; /* Data size */ rt_uint8_t rp; /* Relative performance */ -}; +}); rt_packed(struct rt_nvme_id_ns { diff --git a/include/rtcompiler.h b/include/rtcompiler.h index 012c85cb608..27adcaef37e 100644 --- a/include/rtcompiler.h +++ b/include/rtcompiler.h @@ -19,7 +19,7 @@ #if __ARMCC_VERSION >= 6010050 #define rt_packed(declare) declare __attribute__((packed)) #else -#define rt_packed(declare) declare +#define rt_packed(declare) __packed declare #endif #define rt_weak __attribute__((weak)) #define rt_typeof __typeof From bbce14fd9b0577b63af3e6a07e9becccd29e2af9 Mon Sep 17 00:00:00 2001 From: cmbjxxiao Date: Wed, 6 Aug 2025 10:26:35 +0800 Subject: [PATCH 2/2] [arm_compiler_v4/v5] Modify the code to maintain a consistent coding style --- components/drivers/block/partitions/efi.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/components/drivers/block/partitions/efi.h b/components/drivers/block/partitions/efi.h index 090a1164902..10f0f584f35 100644 --- a/components/drivers/block/partitions/efi.h +++ b/components/drivers/block/partitions/efi.h @@ -30,10 +30,11 @@ #ifndef __UUID_H__ #define UUID_SIZE 16 -typedef struct rt_packed +rt_packed(struct _guid_t { rt_uint8_t b[UUID_SIZE]; -} guid_t; +}); +typedef struct _guid_t guid_t; #endif /* __UUID_H__ */ #ifndef __EFI_H__