Hi, The patch sets add support for MediaTek PMIC MT6397 MFD core and its regulator driver. This is hardware layout for access PMIC MT6397 from AP SoC MT8135. Between PMIC MT6397 and MT8135, the physical signal channel is SPI bus. A specific hardware called PMIC Wrapper or PWRAP to handle access protocols in both PMIC and AP side.
+-----------------+ +---------------+ | | | | | Mediatek AP SoC | | | | (ex. MT8135) | | MT6397 | | | | | | +--------+ | (SPI bus) | +--------+ | | | | |-----------| | | | | | PMIC | |-----------| | PMIC | | | | Wrapper| |-----------| | Wrapper| | | | | |-----------| | | | | +--------+ | | +--------+ | | | | | +-----------------+ +---------------+ Changes since v2 ================ (1) Patch 1/8: Update kernel config of MT8135 PMIC Wrapper. It needs to select REGMAP. (2) Patch 2/8: Update patch of MT6397 MFD driver to fix defeat of coding styles. (3) Patch 3/8: Update MT6397 regulator driver - use standard helpers for ops ".set_voltage_sel", ".get_voltage_sel" and ".is_enabled" - remove regulator's DT matching codes in the driver. - fix defeat of coding styles. (4) Patch 4/8: Update document for MT8135 PMIC wrapper. (5) Patch 5/8: Update document for MT6397 MFD. (6) Patch 6/8: Update document for MT6397 regulators. (7) Patch 7/8: Update device tree for MT8135 PMIC wrapper in mt8135.dtsi. (8) Patch 8/8: Add device tree for MT6397 MFD and regulators in mt8135-evbp1.dts board file. Second version (v2): http://lists.infradead.org/pipermail/linux-arm-kernel/2014-November/307069.html Changes since v1 ================ (1) Patch 1/8: Add MT8135 PMIC wrapper driver for SoC's proprietary hardware. (2) Patch 2/8: Update patch of MT6397 MFD driver to contain only MFD related codes and fix defeat of coding styles. (3) Patch 3/8: Update MT6397 regulator driver - use helpers and standard ways for specifying data in regulator description. - add more comments to explaining why the driver implement its own regulator_ops for ".is_enabled", ".set_voltage_sel" and ".get_voltage_sel". - update driver implement for coding styles. (4) Patch 4/8: Add document for MT8135 PMIC wrapper. (5) Patch 5/8: Update document for MT6397 MFD. (6) Patch 6/8: Update document for MT6397 regulators. (7) Patch 7/8: Add device tree for MT6397 MFD in mt8135.dtsi. (8) Patch 8/8: Update device tree for MT6397 regulators in mt8135.dtsi. Initial version (v1): http://lists.infradead.org/pipermail/linux-arm-kernel/2014-November/302984.html This driver is based on 3.18-rc1. Flora Fu (8): soc: mediatek: Add PMIC wrapper for MT8135 and MT6397 SoC mfd: MT6397: Add support for PMIC MT6397 MFD regulator: MT6397: Add support for MT6397 regulator dt-bindings:: Add document for MT8135 PMIC Wrapper dt-bindings: Add document for MT6397 MFD dt-bindings: Add document for MT6397 regulator ARM: dts: mt8135: Add support for MT8135 PMIC wrapper ARM: dts: mt8135: Add support for MT6397 MFD and regulator Documentation/devicetree/bindings/mfd/mt6397.txt | 75 ++ .../bindings/regulator/mt6397-regulator.txt | 217 ++++++ .../soc/mediatek/mediatek,mt8135-pwrap.txt | 51 ++ arch/arm/boot/dts/mt8135-evbp1.dts | 193 +++++ arch/arm/boot/dts/mt8135.dtsi | 14 + drivers/mfd/Kconfig | 10 + drivers/mfd/Makefile | 1 + drivers/mfd/mt6397-core.c | 87 +++ drivers/regulator/Kconfig | 9 + drivers/regulator/Makefile | 1 + drivers/regulator/mt6397-regulator.c | 332 ++++++++ drivers/soc/Kconfig | 1 + drivers/soc/Makefile | 1 + drivers/soc/mediatek/Kconfig | 12 + drivers/soc/mediatek/Makefile | 1 + drivers/soc/mediatek/mt8135-pmic-wrap.c | 844 +++++++++++++++++++++ drivers/soc/mediatek/mt8135-pmic-wrap.h | 138 ++++ include/linux/mfd/mt6397/core.h | 23 + include/linux/mfd/mt6397/registers.h | 362 +++++++++ include/linux/regulator/mt6397-regulator.h | 49 ++ include/linux/soc/mediatek/mtk-pmic-wrap.h | 25 + 21 files changed, 2446 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/mt6397.txt create mode 100644 Documentation/devicetree/bindings/regulator/mt6397-regulator.txt create mode 100644 Documentation/devicetree/bindings/soc/mediatek/mediatek,mt8135-pwrap.txt create mode 100644 drivers/mfd/mt6397-core.c create mode 100644 drivers/regulator/mt6397-regulator.c create mode 100644 drivers/soc/mediatek/Kconfig create mode 100644 drivers/soc/mediatek/Makefile create mode 100644 drivers/soc/mediatek/mt8135-pmic-wrap.c create mode 100644 drivers/soc/mediatek/mt8135-pmic-wrap.h create mode 100644 include/linux/mfd/mt6397/core.h create mode 100644 include/linux/mfd/mt6397/registers.h create mode 100644 include/linux/regulator/mt6397-regulator.h create mode 100644 include/linux/soc/mediatek/mtk-pmic-wrap.h -- 1.8.1.1.dirty -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/