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

Commit b304746c authored by Lee Jones's avatar Lee Jones
Browse files

Merge branches 'ib-mfd-gpio-4.9', 'ib-mfd-gpio-regulator-4.9',...

Merge branches 'ib-mfd-gpio-4.9', 'ib-mfd-gpio-regulator-4.9', 'ib-mfd-input-4.9', 'ib-mfd-regulator-4.9', 'ib-mfd-regulator-4.9.1', 'ib-mfd-regulator-rtc-4.9', 'ib-mfd-regulator-rtc-4.9-1' and 'ib-mfd-rtc-4.9' into ibs-for-mfd-merged
Loading
+18 −0
Original line number Diff line number Diff line
@@ -14,6 +14,12 @@ add_random (RW)
This file allows to turn off the disk entropy contribution. Default
value of this file is '1'(on).

dax (RO)
--------
This file indicates whether the device supports Direct Access (DAX),
used by CPU-addressable storage to bypass the pagecache.  It shows '1'
if true, '0' if not.

discard_granularity (RO)
-----------------------
This shows the size of internal allocation of the device in bytes, if
@@ -46,6 +52,12 @@ hw_sector_size (RO)
-------------------
This is the hardware sector size of the device, in bytes.

io_poll (RW)
------------
When read, this file shows the total number of block IO polls and how
many returned success.  Writing '0' to this file will disable polling
for this device.  Writing any non-zero value will enable this feature.

iostats (RW)
-------------
This file is used to control (on/off) the iostats accounting of the
@@ -151,5 +163,11 @@ device state. This means that it might not be safe to toggle the
setting from "write back" to "write through", since that will also
eliminate cache flushes issued by the kernel.

write_same_max_bytes (RO)
-------------------------
This is the number of bytes the device can write in a single write-same
command.  A value of '0' means write-same is not supported by this
device.


Jens Axboe <jens.axboe@oracle.com>, February 2009
+54 −0
Original line number Diff line number Diff line
X-Powers AC100 Codec/RTC IC Device Tree bindings

AC100 is a audio codec and RTC subsystem combo IC. The 2 parts are
separated, including power supplies and interrupt lines, but share
a common register address space and host interface.

Required properties:
- compatible: "x-powers,ac100"
- reg: The I2C slave address or RSB hardware address for the chip
- sub-nodes:
  - codec
    - compatible:		"x-powers,ac100-codec"
    - interrupt-parent:		The parent interrupt controller
    - interrupts:		SoC NMI / GPIO interrupt connected to the
    				IRQ_AUDIO pin
    - #clock-cells:		Shall be 0
    - clock-output-names:	"4M_adda"

    - see clock/clock-bindings.txt for common clock bindings

  - rtc
    - compatible:		"x-powers,ac100-rtc"
    - interrupt-parent:		The parent interrupt controller
    - interrupts:		SoC NMI / GPIO interrupt connected to the
    				IRQ_RTC pin
    - clocks:			A phandle to the codec's "4M_adda" clock
    - #clock-cells:		Shall be 1
    - clock-output-names:	"cko1_rtc", "cko2_rtc", "cko3_rtc"

    - see clock/clock-bindings.txt for common clock bindings

Example:

ac100: codec@e89 {
	compatible = "x-powers,ac100";
	reg = <0xe89>;

	ac100_codec: codec {
		compatible = "x-powers,ac100-codec";
		interrupt-parent = <&r_pio>;
		interrupts = <0 9 IRQ_TYPE_LEVEL_LOW>; /* PL9 */
		#clock-cells = <0>;
		clock-output-names = "4M_adda";
	};

	ac100_rtc: rtc {
		compatible = "x-powers,ac100-rtc";
		interrupt-parent = <&nmi_intc>;
		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
		clocks = <&ac100_codec>;
		#clock-cells = <1>;
		clock-output-names = "cko1_rtc", "cko2_rtc", "cko3_rtc";
	};
};
+26 −2
Original line number Diff line number Diff line
@@ -10,7 +10,8 @@ axp809 (X-Powers)

Required properties:
- compatible: "x-powers,axp152", "x-powers,axp202", "x-powers,axp209",
	      "x-powers,axp221", "x-powers,axp223", "x-powers,axp809"
	      "x-powers,axp221", "x-powers,axp223", "x-powers,axp806",
	      "x-powers,axp809"
- reg: The I2C slave address or RSB hardware address for the AXP chip
- interrupt-parent: The parent interrupt controller
- interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
@@ -47,7 +48,6 @@ Optional properties for DCDC regulators:
			  probably makes sense for HiFi audio related
			  applications that aren't battery constrained.


AXP202/AXP209 regulators, type, and corresponding input supply names:

Regulator	  Type		  Supply Name		  Notes
@@ -86,6 +86,30 @@ LDO_IO1 : LDO : ips-supply : GPIO 1
RTC_LDO		: LDO		: ips-supply		: always on
DRIVEVBUS	: Enable output	: drivevbus-supply	: external regulator

AXP806 regulators, type, and corresponding input supply names:

Regulator	  Type		  Supply Name		  Notes
---------	  ----		  -----------		  -----
DCDCA		: DC-DC buck	: vina-supply		: poly-phase capable
DCDCB		: DC-DC buck	: vinb-supply		: poly-phase capable
DCDCC		: DC-DC	buck	: vinc-supply		: poly-phase capable
DCDCD		: DC-DC	buck	: vind-supply		: poly-phase capable
DCDCE		: DC-DC	buck	: vine-supply		: poly-phase capable
ALDO1		: LDO		: aldoin-supply		: shared supply
ALDO2		: LDO		: aldoin-supply		: shared supply
ALDO3		: LDO		: aldoin-supply		: shared supply
BLDO1		: LDO		: bldoin-supply		: shared supply
BLDO2		: LDO		: bldoin-supply		: shared supply
BLDO3		: LDO		: bldoin-supply		: shared supply
BLDO4		: LDO		: bldoin-supply		: shared supply
CLDO1		: LDO		: cldoin-supply		: shared supply
CLDO2		: LDO		: cldoin-supply		: shared supply
CLDO3		: LDO		: cldoin-supply		: shared supply
SW		: On/Off Switch : swin-supply

Additionally, the AXP806 DC-DC regulators support poly-phase arrangements
for higher output current. The possible groupings are: A+B, A+B+C, D+E.

AXP809 regulators, type, and corresponding input supply names:

Regulator	  Type		  Supply Name		  Notes
+1 −0
Original line number Diff line number Diff line
@@ -62,6 +62,7 @@ The below bindings specify the set of valid subnodes.
		    "qcom,pm8058-rtc"
		    "qcom,pm8921-rtc"
		    "qcom,pm8941-rtc"
		    "qcom,pm8018-rtc"

- reg:
	Usage: required
+15 −0
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@ frequencies.
		    "qcom,rpm-msm8660"
		    "qcom,rpm-msm8960"
		    "qcom,rpm-ipq8064"
		    "qcom,rpm-mdm9615"

- reg:
	Usage: required
@@ -59,6 +60,7 @@ Regulator nodes are identified by their compatible:
		    "qcom,rpm-pm8058-regulators"
		    "qcom,rpm-pm8901-regulators"
		    "qcom,rpm-pm8921-regulators"
		    "qcom,rpm-pm8018-regulators"

- vdd_l0_l1_lvs-supply:
- vdd_l2_l11_l12-supply:
@@ -137,6 +139,15 @@ Regulator nodes are identified by their compatible:
	Definition: reference to regulator supplying the input pin, as
		    described in the data sheet

- vin_lvs1-supply:
- vdd_l7-supply:
- vdd_l8-supply:
- vdd_l9_l10_l11_l12-supply:
	Usage: optional (pm8018 only)
	Value type: <phandle>
	Definition: reference to regulator supplying the input pin, as
		    described in the data sheet

The regulator node houses sub-nodes for each regulator within the device. Each
sub-node is identified using the node's name, with valid values listed for each
of the pmics below.
@@ -156,6 +167,10 @@ pm8921:
	l29, lvs1, lvs2, lvs3, lvs4, lvs5, lvs6, lvs7, usb-switch, hdmi-switch,
	ncp

pm8018:
	s1, s2, s3, s4, s5, , l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
	l12, l14, lvs1

The content of each sub-node is defined by the standard binding for regulators -
see regulator.txt - with additional custom properties described below:

Loading