Commit c226e271 authored by Andrew Lunn's avatar Andrew Lunn Committed by David S. Miller

net: dsa: bcm_sf2: Pass GENMASK() signed bits

Oddly, GENMASK() requires signed bit numbers, so that it can compare
them for < 0. If passed an unsigned type, we get warnings about the
test never being true. There is no danger of overflow here, udf is
always a u8, so there is plenty of space when expanding to an int.
Signed-off-by: default avatarAndrew Lunn <andrew@lunn.ch>
Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f76b6ef1
...@@ -128,12 +128,12 @@ static inline unsigned int bcm_sf2_get_num_udf_slices(const u8 *layout) ...@@ -128,12 +128,12 @@ static inline unsigned int bcm_sf2_get_num_udf_slices(const u8 *layout)
return count; return count;
} }
static inline u32 udf_upper_bits(unsigned int num_udf) static inline u32 udf_upper_bits(int num_udf)
{ {
return GENMASK(num_udf - 1, 0) >> (UDFS_PER_SLICE - 1); return GENMASK(num_udf - 1, 0) >> (UDFS_PER_SLICE - 1);
} }
static inline u32 udf_lower_bits(unsigned int num_udf) static inline u32 udf_lower_bits(int num_udf)
{ {
return (u8)GENMASK(num_udf - 1, 0); return (u8)GENMASK(num_udf - 1, 0);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment