linux/drivers/base/regmap
Maxime Coquelin 5bfa73eeb0 regmap: Fix possible shift overflow in regmap_field_init()
commit 921cc29473 upstream.

The way the mask is generated in regmap_field_init() is wrong.
Indeed, a field initialized with msb = 31 and lsb = 0 provokes a shift
overflow while calculating the mask field.

On some 32 bits architectures, such as x86, the generated mask is 0,
instead of the expected 0xffffffff.

This patch uses GENMASK() to fix the problem, as this macro is already safe
regarding shift overflow.

Signed-off-by: Maxime Coquelin <maxime.coquelin@st.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
History 2015-07-15 10:00:37 +01:00
..
internal.h regmap: introduce regmap_name to fix syscon regmap trace events 2015-04-10 10:03:57 +01:00
Kconfig regmap: add SPMI support 2013-10-28 12:51:43 -07:00
Makefile regmap: add SPMI support 2013-10-28 12:51:43 -07:00
regcache-flat.c regmap: flat: Add flat cache type 2013-01-02 10:58:53 +00:00
regcache-lzo.c regmap: cache: Pass the map rather than the word size when updating values 2013-03-04 10:30:27 +08:00
regcache-rbtree.c regmap: regcache-rbtree: Fix present bitmap resize 2015-03-30 11:11:04 +01:00
regcache.c regmap: introduce regmap_name to fix syscon regmap trace events 2015-04-10 10:03:57 +01:00
regmap-debugfs.c regmap: debugfs: fix possbile NULL pointer dereference 2014-10-30 09:40:11 -07:00
regmap-i2c.c regmap: i2c: fallback to SMBus if the adapter does not support standard I2C 2014-04-22 12:57:28 +01:00
regmap-irq.c regmap: irq: Fix possible ZERO_SIZE_PTR pointer dereferencing error. 2014-05-26 16:37:04 +01:00
regmap-mmio.c Merge remote-tracking branches 'regmap/topic/irq', 'regmap/topic/le', 'regmap/topic/mmio' and 'regmap/topic/rbtree' into regmap-next 2014-06-02 17:07:39 +01:00
regmap-spi.c drivers/base: delete non-required instances of include <linux/init.h> 2014-02-14 14:31:37 -08:00
regmap-spmi.c regmap: spmi: support base and extended register spaces 2014-02-15 11:55:28 -08:00
regmap.c regmap: Fix possible shift overflow in regmap_field_init() 2015-07-15 10:00:37 +01:00