提交 3ac19c90 编写于 作者: D David Daney 提交者: David S. Miller

netdev: octeon_mgmt: Fix structure layout for little-endian.

The C ABI reverses the bitfield fill order when compiled as
little-endian.
Signed-off-by: NDavid Daney <david.daney@cavium.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 906996d6
......@@ -46,17 +46,25 @@
union mgmt_port_ring_entry {
u64 d64;
struct {
u64 reserved_62_63:2;
#define RING_ENTRY_CODE_DONE 0xf
#define RING_ENTRY_CODE_MORE 0x10
#ifdef __BIG_ENDIAN_BITFIELD
u64 reserved_62_63:2;
/* Length of the buffer/packet in bytes */
u64 len:14;
u64 len:14;
/* For TX, signals that the packet should be timestamped */
u64 tstamp:1;
u64 tstamp:1;
/* The RX error code */
u64 code:7;
#define RING_ENTRY_CODE_DONE 0xf
#define RING_ENTRY_CODE_MORE 0x10
u64 code:7;
/* Physical address of the buffer */
u64 addr:40;
u64 addr:40;
#else
u64 addr:40;
u64 code:7;
u64 tstamp:1;
u64 len:14;
u64 reserved_62_63:2;
#endif
} s;
};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册