net/sfc: fix align to power of 2 when align has smaller type
[dpdk.git] / drivers / net / sfc / base / efx.h
index 835d057..6aff68b 100644 (file)
@@ -33,6 +33,10 @@ extern "C" {
 #define        EFX_P2ROUNDUP(_type, _value, _align)    \
        (-(-(_type)(_value) & -(_type)(_align)))
 
+/* Align value down to the nearest power of two. */
+#define        EFX_P2ALIGN(_type, _value, _align)      \
+       ((_type)(_value) & -(_type)(_align))
+
 /* Return codes */
 
 typedef __success(return == 0) int efx_rc_t;