summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/regmap.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/linux/regmap.h b/include/linux/regmap.h
index 4c8c20a7a75d..a12bea07f79e 100644
--- a/include/linux/regmap.h
+++ b/include/linux/regmap.h
@@ -425,11 +425,15 @@ bool regmap_reg_in_ranges(unsigned int reg,
425 * @reg: Offset of the register within the regmap bank 425 * @reg: Offset of the register within the regmap bank
426 * @lsb: lsb of the register field. 426 * @lsb: lsb of the register field.
427 * @reg: msb of the register field. 427 * @reg: msb of the register field.
428 * @id_size: port size if it has some ports
429 * @id_offset: address offset for each ports
428 */ 430 */
429struct reg_field { 431struct reg_field {
430 unsigned int reg; 432 unsigned int reg;
431 unsigned int lsb; 433 unsigned int lsb;
432 unsigned int msb; 434 unsigned int msb;
435 unsigned int id_size;
436 unsigned int id_offset;
433}; 437};
434 438
435#define REG_FIELD(_reg, _lsb, _msb) { \ 439#define REG_FIELD(_reg, _lsb, _msb) { \
@@ -451,6 +455,13 @@ int regmap_field_write(struct regmap_field *field, unsigned int val);
451int regmap_field_update_bits(struct regmap_field *field, 455int regmap_field_update_bits(struct regmap_field *field,
452 unsigned int mask, unsigned int val); 456 unsigned int mask, unsigned int val);
453 457
458int regmap_fields_write(struct regmap_field *field, unsigned int id,
459 unsigned int val);
460int regmap_fields_read(struct regmap_field *field, unsigned int id,
461 unsigned int *val);
462int regmap_fields_update_bits(struct regmap_field *field, unsigned int id,
463 unsigned int mask, unsigned int val);
464
454/** 465/**
455 * Description of an IRQ for the generic regmap irq_chip. 466 * Description of an IRQ for the generic regmap irq_chip.
456 * 467 *