0001
0002
0003
0004
0005
0006 #ifndef _EFA_COMMON_H_
0007 #define _EFA_COMMON_H_
0008
0009 #include <linux/bitfield.h>
0010
0011 #define EFA_COMMON_SPEC_VERSION_MAJOR 2
0012 #define EFA_COMMON_SPEC_VERSION_MINOR 0
0013
0014 #define EFA_GET(ptr, mask) FIELD_GET(mask##_MASK, *(ptr))
0015
0016 #define EFA_SET(ptr, mask, value) \
0017 ({ \
0018 typeof(ptr) _ptr = ptr; \
0019 *_ptr = (*_ptr & ~(mask##_MASK)) | \
0020 FIELD_PREP(mask##_MASK, value); \
0021 })
0022
0023 struct efa_common_mem_addr {
0024 u32 mem_addr_low;
0025
0026 u32 mem_addr_high;
0027 };
0028
0029 #endif