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

Commit 59f91e5d authored by Jiri Kosina's avatar Jiri Kosina
Browse files

Merge branch 'master' into for-next



Conflicts:
	include/linux/mmzone.h

Synced with Linus' tree so that trivial patch can be applied
on top of up-to-date code properly.

Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
parents 57bdfdd8 89abfab1
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
What:		/sys/bus/i2c/devices/.../output_hvled[n]
Date:		April 2012
KernelVersion:	3.5
Contact:	Johan Hovold <jhovold@gmail.com>
Description:
		Set the controlling backlight device for high-voltage current
		sink HVLED[n] (n = 1, 2) (0, 1).

What:		/sys/bus/i2c/devices/.../output_lvled[n]
Date:		April 2012
KernelVersion:	3.5
Contact:	Johan Hovold <jhovold@gmail.com>
Description:
		Set the controlling led device for low-voltage current sink
		LVLED[n] (n = 1..5) (0..3).
+8 −16
Original line number Diff line number Diff line
@@ -184,12 +184,14 @@ behind this approach is that a cgroup that aggressively uses a shared
page will eventually get charged for it (once it is uncharged from
the cgroup that brought it in -- this will happen on memory pressure).

But see section 8.2: when moving a task to another cgroup, its pages may
be recharged to the new cgroup, if move_charge_at_immigrate has been chosen.

Exception: If CONFIG_CGROUP_CGROUP_MEM_RES_CTLR_SWAP is not used.
When you do swapoff and make swapped-out pages of shmem(tmpfs) to
be backed into memory in force, charges for pages are accounted against the
caller of swapoff rather than the users of shmem.


2.4 Swap Extension (CONFIG_CGROUP_MEM_RES_CTLR_SWAP)

Swap Extension allows you to record charge for swap. A swapped-in page is
@@ -430,17 +432,10 @@ hierarchical_memory_limit - # of bytes of memory limit with regard to hierarchy
hierarchical_memsw_limit - # of bytes of memory+swap limit with regard to
			hierarchy under which memory cgroup is.

total_cache		- sum of all children's "cache"
total_rss		- sum of all children's "rss"
total_mapped_file	- sum of all children's "cache"
total_pgpgin		- sum of all children's "pgpgin"
total_pgpgout		- sum of all children's "pgpgout"
total_swap		- sum of all children's "swap"
total_inactive_anon	- sum of all children's "inactive_anon"
total_active_anon	- sum of all children's "active_anon"
total_inactive_file	- sum of all children's "inactive_file"
total_active_file	- sum of all children's "active_file"
total_unevictable	- sum of all children's "unevictable"
total_<counter>		- # hierarchical version of <counter>, which in
			addition to the cgroup's own value includes the
			sum of all hierarchical children's values of
			<counter>, i.e. total_cache

# The following additional stats are dependent on CONFIG_DEBUG_VM.

@@ -622,8 +617,7 @@ memory cgroup.
  bit | what type of charges would be moved ?
 -----+------------------------------------------------------------------------
   0  | A charge of an anonymous page(or swap of it) used by the target task.
      | Those pages and swaps must be used only by the target task. You must
      | enable Swap Extension(see 2.4) to enable move of swap charges.
      | You must enable Swap Extension(see 2.4) to enable move of swap charges.
 -----+------------------------------------------------------------------------
   1  | A charge of file pages(normal file, tmpfs file(e.g. ipc shared memory)
      | and swaps of tmpfs file) mmapped by the target task. Unlike the case of
@@ -636,8 +630,6 @@ memory cgroup.

8.3 TODO

- Implement madvise(2) to let users decide the vma to be moved or not to be
  moved.
- All of moving charge operations are done under cgroup_mutex. It's not good
  behavior to hold the mutex too long, so we may need some trick.

+60 −0
Original line number Diff line number Diff line
* Dialog DA9052/53 Power Management Integrated Circuit (PMIC)

Required properties:
- compatible : Should be "dlg,da9052", "dlg,da9053-aa",
			 "dlg,da9053-ab", or "dlg,da9053-bb"

Sub-nodes:
- regulators : Contain the regulator nodes. The DA9052/53 regulators are
  bound using their names as listed below:

    buck0     : regulator BUCK0
    buck1     : regulator BUCK1
    buck2     : regulator BUCK2
    buck3     : regulator BUCK3
    ldo4      : regulator LDO4
    ldo5      : regulator LDO5
    ldo6      : regulator LDO6
    ldo7      : regulator LDO7
    ldo8      : regulator LDO8
    ldo9      : regulator LDO9
    ldo10     : regulator LDO10
    ldo11     : regulator LDO11
    ldo12     : regulator LDO12
    ldo13     : regulator LDO13

  The bindings details of individual regulator device can be found in:
  Documentation/devicetree/bindings/regulator/regulator.txt

Examples:

i2c@63fc8000 { /* I2C1 */
	status = "okay";

	pmic: dialog@48 {
		compatible = "dlg,da9053-aa";
		reg = <0x48>;

		regulators {
			buck0 {
				regulator-min-microvolt = <500000>;
				regulator-max-microvolt = <2075000>;
			};

			buck1 {
				regulator-min-microvolt = <500000>;
				regulator-max-microvolt = <2075000>;
			};

			buck2 {
				regulator-min-microvolt = <925000>;
				regulator-max-microvolt = <2500000>;
			};

			buck3 {
				regulator-min-microvolt = <925000>;
				regulator-max-microvolt = <2500000>;
			};
		};
	};
};
+133 −0
Original line number Diff line number Diff line
TPS65910 Power Management Integrated Circuit

Required properties:
- compatible: "ti,tps65910" or "ti,tps65911"
- reg: I2C slave address
- interrupts: the interrupt outputs of the controller
- #gpio-cells: number of cells to describe a GPIO, this should be 2.
  The first cell is the GPIO number.
  The second cell is used to specify additional options <unused>.
- gpio-controller: mark the device as a GPIO controller
- #interrupt-cells: the number of cells to describe an IRQ, this should be 2.
  The first cell is the IRQ number.
  The second cell is the flags, encoded as the trigger masks from
  Documentation/devicetree/bindings/interrupts.txt
- regulators: This is the list of child nodes that specify the regulator
  initialization data for defined regulators. Not all regulators for the given
  device need to be present. The definition for each of these nodes is defined
  using the standard binding for regulators found at
  Documentation/devicetree/bindings/regulator/regulator.txt.

  The valid names for regulators are:
  tps65910: vrtc, vio, vdd1, vdd2, vdd3, vdig1, vdig2, vpll, vdac, vaux1,
            vaux2, vaux33, vmmc
  tps65911: vrtc, vio, vdd1, vdd3, vddctrl, ldo1, ldo2, ldo3, ldo4, ldo5,
            ldo6, ldo7, ldo8

Optional properties:
- ti,vmbch-threshold: (tps65911) main battery charged threshold
  comparator. (see VMBCH_VSEL in TPS65910 datasheet)
- ti,vmbch2-threshold: (tps65911) main battery discharged threshold
  comparator. (see VMBCH_VSEL in TPS65910 datasheet)
- ti,en-gpio-sleep: enable sleep control for gpios
  There should be 9 entries here, one for each gpio.

Regulator Optional properties:
- ti,regulator-ext-sleep-control: enable external sleep
  control through external inputs [0 (not enabled), 1 (EN1), 2 (EN2) or 4(EN3)]
  If this property is not defined, it defaults to 0 (not enabled).

Example:

	pmu: tps65910@d2 {
		compatible = "ti,tps65910";
		reg = <0xd2>;
		interrupt-parent = <&intc>;
		interrupts = < 0 118 0x04 >;

		#gpio-cells = <2>;
		gpio-controller;

		#interrupt-cells = <2>;
		interrupt-controller;

		ti,vmbch-threshold = 0;
		ti,vmbch2-threshold = 0;

		ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>;

		regulators {
			vdd1_reg: vdd1 {
				regulator-min-microvolt = < 600000>;
				regulator-max-microvolt = <1500000>;
				regulator-always-on;
				regulator-boot-on;
				ti,regulator-ext-sleep-control = <0>;
			};
			vdd2_reg: vdd2 {
				regulator-min-microvolt = < 600000>;
				regulator-max-microvolt = <1500000>;
				regulator-always-on;
				regulator-boot-on;
				ti,regulator-ext-sleep-control = <4>;
			};
			vddctrl_reg: vddctrl {
				regulator-min-microvolt = < 600000>;
				regulator-max-microvolt = <1400000>;
				regulator-always-on;
				regulator-boot-on;
				ti,regulator-ext-sleep-control = <0>;
			};
			vio_reg: vio {
				regulator-min-microvolt = <1500000>;
				regulator-max-microvolt = <1800000>;
				regulator-always-on;
				regulator-boot-on;
				ti,regulator-ext-sleep-control = <1>;
			};
			ldo1_reg: ldo1 {
				regulator-min-microvolt = <1000000>;
				regulator-max-microvolt = <3300000>;
				ti,regulator-ext-sleep-control = <0>;
			};
			ldo2_reg: ldo2 {
				regulator-min-microvolt = <1050000>;
				regulator-max-microvolt = <1050000>;
				ti,regulator-ext-sleep-control = <0>;
			};
			ldo3_reg: ldo3 {
				regulator-min-microvolt = <1000000>;
				regulator-max-microvolt = <3300000>;
				ti,regulator-ext-sleep-control = <0>;
			};
			ldo4_reg: ldo4 {
				regulator-min-microvolt = <1000000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
				ti,regulator-ext-sleep-control = <0>;
			};
			ldo5_reg: ldo5 {
				regulator-min-microvolt = <1000000>;
				regulator-max-microvolt = <3300000>;
				ti,regulator-ext-sleep-control = <0>;
			};
			ldo6_reg: ldo6 {
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <1200000>;
				ti,regulator-ext-sleep-control = <0>;
			};
			ldo7_reg: ldo7 {
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <1200000>;
				regulator-always-on;
				regulator-boot-on;
				ti,regulator-ext-sleep-control = <1>;
			};
			ldo8_reg: ldo8 {
				regulator-min-microvolt = <1000000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
				ti,regulator-ext-sleep-control = <1>;
			};
		};
	};
+62 −0
Original line number Diff line number Diff line
Texas Instruments TWL6040 family

The TWL6040s are 8-channel high quality low-power audio codecs providing audio
and vibra functionality on OMAP4+ platforms.
They are connected ot the host processor via i2c for commands, McPDM for audio
data and commands.

Required properties:
- compatible : Must be "ti,twl6040";
- reg: must be 0x4b for i2c address
- interrupts: twl6040 has one interrupt line connecteded to the main SoC
- interrupt-parent: The parent interrupt controller
- twl6040,audpwron-gpio: Power on GPIO line for the twl6040

- vio-supply: Regulator for the twl6040 VIO supply
- v2v1-supply: Regulator for the twl6040 V2V1 supply

Optional properties, nodes:
- enable-active-high: To power on the twl6040 during boot.

Vibra functionality
Required properties:
- vddvibl-supply: Regulator for the left vibra motor
- vddvibr-supply: Regulator for the right vibra motor
- vibra { }: Configuration section for vibra parameters containing the following
	     properties:
- ti,vibldrv-res: Resistance parameter for left driver
- ti,vibrdrv-res: Resistance parameter for right driver
- ti,viblmotor-res: Resistance parameter for left motor
- ti,viblmotor-res: Resistance parameter for right motor

Optional properties within vibra { } section:
- vddvibl_uV: If the vddvibl default voltage need to be changed
- vddvibr_uV: If the vddvibr default voltage need to be changed

Example:
&i2c1 {
	twl6040: twl@4b {
		compatible = "ti,twl6040";
		reg = <0x4b>;

		interrupts = <0 119 4>;
		interrupt-parent = <&gic>;
		twl6040,audpwron-gpio = <&gpio4 31 0>;

		vio-supply = <&v1v8>;
		v2v1-supply = <&v2v1>;
		enable-active-high;

		/* regulators for vibra motor */
		vddvibl-supply = <&vbat>;
		vddvibr-supply = <&vbat>;

		vibra {
			/* Vibra driver, motor resistance parameters */
			ti,vibldrv-res = <8>;
			ti,vibrdrv-res = <3>;
			ti,viblmotor-res = <10>;
			ti,vibrmotor-res = <10>;
		};
	};
};
Loading