Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a6539c32 authored by Mark Brown's avatar Mark Brown
Browse files

regmap: Allow users to query the size of register values



Generic infrastructure based on top of regmap may want to operate on
blocks of data and therefore find it useful to find the size of the
register values. Provide an accessor operation for this.

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent b01543df
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -672,6 +672,21 @@ int regmap_update_bits_check(struct regmap *map, unsigned int reg,
}
EXPORT_SYMBOL_GPL(regmap_update_bits_check);

/**
 * regmap_get_val_bytes(): Report the size of a register value
 *
 * Report the size of a register value, mainly intended to for use by
 * generic infrastructure built on top of regmap.
 */
int regmap_get_val_bytes(struct regmap *map)
{
	if (map->format.format_write)
		return -EINVAL;

	return map->format.val_bytes;
}
EXPORT_SYMBOL_GPL(regmap_get_val_bytes);

static int __init regmap_initcall(void)
{
	regmap_debugfs_initcall();
+1 −0
Original line number Diff line number Diff line
@@ -143,6 +143,7 @@ int regmap_update_bits(struct regmap *map, unsigned int reg,
int regmap_update_bits_check(struct regmap *map, unsigned int reg,
			     unsigned int mask, unsigned int val,
			     bool *change);
int regmap_get_val_bytes(struct regmap *map);

int regcache_sync(struct regmap *map);
void regcache_cache_only(struct regmap *map, bool enable);