/*
 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

/*
 * Integrated Power Management Chip
 */
&twl {
	compatible = "ti,twl4030";
	interrupt-controller;
	#interrupt-cells = <1>;

	rtc {
		compatible = "ti,twl4030-rtc";
		interrupts = <11>;
	};

	charger: bci {
		compatible = "ti,twl4030-bci";
		interrupts = <9>, <2>;
		bci3v1-supply = <&vusb3v1>;
	};

	watchdog {
		compatible = "ti,twl4030-wdt";
	};

	vaux1: regulator-vaux1 {
		compatible = "ti,twl4030-vaux1";
	};

	vaux2: regulator-vaux2 {
		compatible = "ti,twl4030-vaux2";
	};

	vaux3: regulator-vaux3 {
		compatible = "ti,twl4030-vaux3";
	};

	vaux4: regulator-vaux4 {
		compatible = "ti,twl4030-vaux4";
	};

	vcc: regulator-vdd1 {
		compatible = "ti,twl4030-vdd1";
		regulator-min-microvolt = <600000>;
		regulator-max-microvolt = <1450000>;
	};

	vdac: regulator-vdac {
		compatible = "ti,twl4030-vdac";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
	};

	vio: regulator-vio {
		compatible = "ti,twl4030-vio";
	};

	vintana1: regulator-vintana1 {
		compatible = "ti,twl4030-vintana1";
	};

	vintana2: regulator-vintana2 {
		compatible = "ti,twl4030-vintana2";
	};

	vintdig: regulator-vintdig {
		compatible = "ti,twl4030-vintdig";
	};

	vmmc1: regulator-vmmc1 {
		compatible = "ti,twl4030-vmmc1";
		regulator-min-microvolt = <1850000>;
		regulator-max-microvolt = <3150000>;
	};

	vmmc2: regulator-vmmc2 {
		compatible = "ti,twl4030-vmmc2";
		regulator-min-microvolt = <1850000>;
		regulator-max-microvolt = <3150000>;
	};

	vusb1v5: regulator-vusb1v5 {
		compatible = "ti,twl4030-vusb1v5";
	};

	vusb1v8: regulator-vusb1v8 {
		compatible = "ti,twl4030-vusb1v8";
	};

	vusb3v1: regulator-vusb3v1 {
		compatible = "ti,twl4030-vusb3v1";
	};

	vpll1: regulator-vpll1 {
		compatible = "ti,twl4030-vpll1";
	};

	vpll2: regulator-vpll2 {
		compatible = "ti,twl4030-vpll2";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
	};

	vsim: regulator-vsim {
		compatible = "ti,twl4030-vsim";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <3000000>;
	};

	twl_gpio: gpio {
		compatible = "ti,twl4030-gpio";
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-controller;
		#interrupt-cells = <1>;
	};

	usb2_phy: twl4030-usb {
		compatible = "ti,twl4030-usb";
		interrupts = <10>, <4>;
		usb1v5-supply = <&vusb1v5>;
		usb1v8-supply = <&vusb1v8>;
		usb3v1-supply = <&vusb3v1>;
		usb_mode = <1>;
		#phy-cells = <0>;
	};

	twl_pwm: pwm {
		compatible = "ti,twl4030-pwm";
		#pwm-cells = <2>;
	};

	twl_pwmled: pwmled {
		compatible = "ti,twl4030-pwmled";
		#pwm-cells = <2>;
	};

	twl_pwrbutton: pwrbutton {
		compatible = "ti,twl4030-pwrbutton";
		interrupts = <8>;
	};
};
