Move location of __rte_aligned(a) to new conventional location. The new
placement between {struct,union} and the tag allows the desired
alignment to be imparted on the type regardless of the toolchain being
used for both C and C++. Additionally, it avoids confusion by Doxygen
when generating documentation.
Signed-off-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
---
drivers/bus/dpaa/base/qbman/qman.c | 3 +--
drivers/bus/dpaa/include/fsl_bman.h | 4 ++--
drivers/bus/dpaa/include/fsl_qman.h | 20 ++++++++++----------
3 files changed, 13 insertions(+), 14 deletions(-)
@@ -95,8 +95,7 @@ struct qman_portal {
* to 2 ** 10 to ensure DQRR index calculations based shadow copy
* address (6 bits for address shift + 4 bits for the DQRR size).
*/
- struct qm_dqrr_entry shadow_dqrr[QM_DQRR_SIZE]
- __rte_aligned(1024);
+ alignas(1024) struct qm_dqrr_entry shadow_dqrr[QM_DQRR_SIZE];
#endif
};
@@ -41,7 +41,7 @@ static inline void bman_depletion_fill(struct bman_depletion *c)
* pool id specific to this buffer is needed (BM_RCR_VERB_CMD_BPID_MULTI,
* BM_MCC_VERB_ACQUIRE), the 'bpid' field is used.
*/
-struct bm_buffer {
+struct __rte_aligned(8) bm_buffer {
union {
struct {
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
@@ -67,7 +67,7 @@ struct bm_buffer {
};
u64 opaque;
};
-} __rte_aligned(8);
+};
static inline u64 bm_buffer_get64(const struct bm_buffer *buf)
{
return buf->addr;
@@ -124,7 +124,7 @@ enum qm_fd_format {
#define QM_FD_COMPOUND QM_FD_FORMAT_COMPOUND
/* "Frame Descriptor (FD)" */
-struct qm_fd {
+struct __rte_aligned(8) qm_fd {
union {
struct {
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
@@ -200,7 +200,7 @@ struct qm_fd {
u32 cmd;
u32 status;
};
-} __rte_aligned(8);
+};
#define QM_FD_DD_NULL 0x00
#define QM_FD_PID_MASK 0x3f
static inline u64 qm_fd_addr_get64(const struct qm_fd *fd)
@@ -330,9 +330,9 @@ struct __rte_aligned(8) qm_dqrr_entry {
/* "ERN Message Response" */
/* "FQ State Change Notification" */
-struct qm_mr_entry {
+struct __rte_aligned(8) qm_mr_entry {
union {
- struct {
+ alignas(8) struct {
u8 verb;
u8 dca;
u16 seqnum;
@@ -341,8 +341,8 @@ struct qm_mr_entry {
u32 fqid; /* 24-bit */
u32 tag;
struct qm_fd fd; /* this has alignment 8 */
- } __packed __rte_aligned(8) ern;
- struct {
+ } __packed ern;
+ alignas(8) struct {
u8 verb;
#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
u8 colour:2; /* See QM_MR_DCERN_COLOUR_* */
@@ -359,18 +359,18 @@ struct qm_mr_entry {
u32 fqid; /* 24-bit */
u32 tag;
struct qm_fd fd; /* this has alignment 8 */
- } __packed __rte_aligned(8) dcern;
- struct {
+ } __packed dcern;
+ alignas(8) struct {
u8 verb;
u8 fqs; /* Frame Queue Status */
u8 __reserved1[6];
u32 fqid; /* 24-bit */
u32 contextB;
u8 __reserved2[16];
- } __packed __rte_aligned(8) fq; /* FQRN/FQRNI/FQRL/FQPN */
+ } __packed fq; /* FQRN/FQRNI/FQRL/FQPN */
};
u8 __reserved2[32];
-} __packed __rte_aligned(8);
+} __packed;
#define QM_MR_VERB_VBIT 0x80
/*
* ERNs originating from direct-connect portals ("dcern") use 0x20 as a verb