Merge series "Add new reg_update_bits() support" from Baolin Wang <baolin.wang7@gmail.com>:

The Spreadtrum platform uses a special set/clear method to update
registers' bits, thus this patch set registers a physical regmap
bus into syscon core to support this feature instead of using the
MMIO bus, which is not a physical regmap bus.

Any comments are welcome. Thanks.

Changes from RFC v1:
 - Add new helper to registers a physical regmap bus instead of
 using the MMIO bus.

Baolin Wang (3):
  mfd: syscon: Support physical regmap bus
  regmap: Add bus reg_update_bits() support
  soc: sprd: Add Spreadtrum special bits updating support

 drivers/base/regmap/regmap.c   |  1 +
 drivers/mfd/syscon.c           | 16 ++++++-
 drivers/soc/Kconfig            |  1 +
 drivers/soc/Makefile           |  1 +
 drivers/soc/sprd/Kconfig       | 16 +++++++
 drivers/soc/sprd/Makefile      |  2 +
 drivers/soc/sprd/sprd_syscon.c | 76 ++++++++++++++++++++++++++++++++++
 include/linux/mfd/syscon.h     |  7 ++++
 8 files changed, 118 insertions(+), 2 deletions(-)
 create mode 100644 drivers/soc/sprd/Kconfig
 create mode 100644 drivers/soc/sprd/Makefile
 create mode 100644 drivers/soc/sprd/sprd_syscon.c

--
2.17.1
This commit is contained in:
Mark Brown 2020-04-14 16:37:31 +01:00
Родитель bd3ddb4957 80215f133d
Коммит 4475337326
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 24D68B725D5487D0
1 изменённых файлов: 1 добавлений и 0 удалений

Просмотреть файл

@ -827,6 +827,7 @@ struct regmap *__regmap_init(struct device *dev,
} else if (!bus->read || !bus->write) {
map->reg_read = _regmap_bus_reg_read;
map->reg_write = _regmap_bus_reg_write;
map->reg_update_bits = bus->reg_update_bits;
map->defer_caching = false;
goto skip_format_initialization;