[PATCH v5 0/8] mfd: AXP20x: Add support for AXP202 and AXP209
Carlo Caione
carlo at caione.org
Thu May 1 05:29:26 PDT 2014
AXP209 and AXP202 are the PMUs (Power Management Unit) used by A10, A13
and A20 SoCs and developed by X-Powers, a sister company of Allwinner.
AXP20x comprises an adaptive USB-Compatible PWM charger, 2 BUCK DC-DC
converters, 5 LDOs, multiple 12-bit ADCs of voltage, current and temperature
as well as 4 configurable GPIOs.
This set of patches introduces the core driver and support for two different
subsystems:
- Regulators
- PEK (Power Enable Key)
Changes since v1:
- Added a new standalone patch for defconfig
- MFD core:
* Removed axp,system-power-controller property
- Bindings documentation:
* Corrected description for dcdc-workmode property
* Removed unused axp20x-pek compatible
- Input misc PEK driver:
* Fixed seconds in lower case
- Regulators subsystem:
* Fixed axp20x_set_suspend_voltage()
* Switched to using multi-bit control for regulators
* When "regulators" node is not found driver doesn't quit
* Driver is now using devm_regulator_register()
* Added module_platform_driver() instead of subsys_initcall()
- DT:
* Added new DTSI for AXP209
* Added support for cubietruck and olinuxino-micro
Changes since v2:
- Added a new patch for multi_v7_defconfig to enable MFD core
and subsystems
- DT:
* Dropped axp,system-power-controller property from DTS
* Moved compatible and interrupt-related properties from the
DTSI file to the DTS board files
- Regulators subsystem:
* Deleted useless struct axp20x_regulators
* Added a warning when out of specs values are used for the
dcdc frequency
- MFD core:
* Fixed coding style
* Removed IDs from device table for i2c
- Bindings documentation:
* Several corrections and fixes
Changes since v3:
- Removed x-powers-axp209.dtsi file
- Rewritten bindings document
- MFD core:
* Fixed casting
* Better comments / documentation
- Input misc PEK driver:
* Timings are now expressed in ms and the sysfs appies the
closest possible value
* No more useless pretty-printing
* Removed devm_request_threaded_irq in favour of
devm_request_any_context_irq
* Moved from input attributes to platform device attributes
- Regulators subsystem:
* Removed suspend mode (axp20x_set_suspend_voltage)
* Added regulators input supply
- DT:
* DTs doesn't include anymore the dtsi
* Added input supplies for regulators
Changes since v4:
- Removed regulator patches already applied / acked by Mark Brown
- Input misc PEK driver:
* Don't print anymore the "us" unit
* Added cleanup for attributes when unbindind the device
* Fixed error code returned when device_create_file() fails
- DT:
* Enable all the regulators on at boot-time
* Removed min and max microvolts for all the regulators but DCDC2
* Moved the axp_ipsout regulator outside the MFD node
- MFD core:
* The supply regulators are now specified in the MFD driver using
regulator_bulk_register_supply_alias() and the .parent_supplies
in the MFD cell
Carlo Caione (8):
mfd: AXP20x: Add mfd driver for AXP20x PMIC
dt-bindings: add vendor-prefix for X-Powers
mfd: AXP20x: Add bindings documentation
input: misc: Add driver for AXP20x Power Enable Key
input: misc: Add ABI docs for AXP20x PEK
ARM: sunxi: Add AXP20x support in defconfig
ARM: sunxi: Add AXP20x support multi_v7_defconfig
ARM: sun7i/sun4i: dt: Add AXP209 support to various boards
.../ABI/testing/sysfs-driver-input-axp-pek | 11 +
Documentation/devicetree/bindings/mfd/axp20x.txt | 93 +++++++
.../devicetree/bindings/vendor-prefixes.txt | 1 +
arch/arm/boot/dts/sun4i-a10-a1000.dts | 58 +++++
arch/arm/boot/dts/sun4i-a10-cubieboard.dts | 58 +++++
arch/arm/boot/dts/sun4i-a10-hackberry.dts | 64 +++++
arch/arm/boot/dts/sun4i-a10-inet97fv2.dts | 58 +++++
arch/arm/boot/dts/sun4i-a10-mini-xplus.dts | 65 +++++
arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts | 64 +++++
arch/arm/boot/dts/sun4i-a10-pcduino.dts | 58 +++++
arch/arm/boot/dts/sun7i-a20-cubieboard2.dts | 59 +++++
arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 59 +++++
arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts | 59 +++++
arch/arm/configs/multi_v7_defconfig | 3 +
arch/arm/configs/sunxi_defconfig | 4 +
drivers/input/misc/Kconfig | 11 +
drivers/input/misc/Makefile | 1 +
drivers/input/misc/axp20x-pek.c | 281 +++++++++++++++++++++
drivers/mfd/Kconfig | 12 +
drivers/mfd/Makefile | 1 +
drivers/mfd/axp20x.c | 258 +++++++++++++++++++
include/linux/mfd/axp20x.h | 180 +++++++++++++
22 files changed, 1458 insertions(+)
create mode 100644 Documentation/ABI/testing/sysfs-driver-input-axp-pek
create mode 100644 Documentation/devicetree/bindings/mfd/axp20x.txt
create mode 100644 drivers/input/misc/axp20x-pek.c
create mode 100644 drivers/mfd/axp20x.c
create mode 100644 include/linux/mfd/axp20x.h
--
1.8.3.2
More information about the linux-arm-kernel
mailing list