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

Commit 759417ac authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'davinci-for-v3.10/dt' of...

Merge tag 'davinci-for-v3.10/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/soc

From Sekhar Nori <nsekhar@ti.com>:

v3.10 DT updates for DaVinci

The pull request adds support for MMC/SD and regulator on DA850 EVM.

* tag 'davinci-for-v3.10/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci

:
  ARM: davinci: da850: override mmc DT node device name
  ARM: davinci: da850: add mmc DT entries
  mmc: davinci_mmc: add DT support
  ARM: davinci: da850: add tps6507x regulator DT data
  ARM: regulator: add tps6507x device tree data

Merged into soc branch rather than DT branch to avoid circular dependencies.

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents ac5ac893 db4c8fa7
Loading
Loading
Loading
Loading
+33 −0
Original line number Original line Diff line number Diff line
* TI Highspeed MMC host controller for DaVinci

The Highspeed MMC Host Controller on TI DaVinci family
provides an interface for MMC, SD and SDIO types of memory cards.

This file documents the properties used by the davinci_mmc driver.

Required properties:
- compatible:
 Should be "ti,da830-mmc": for da830, da850, dm365
 Should be "ti,dm355-mmc": for dm355, dm644x

Optional properties:
- bus-width: Number of data lines, can be <1>, <4>, or <8>, default <1>
- max-frequency: Maximum operating clock frequency, default 25MHz.
- dmas: List of DMA specifiers with the controller specific format
	as described in the generic DMA client binding. A tx and rx
	specifier is required.
- dma-names: RX and TX  DMA request names. These strings correspond
	1:1 with the DMA specifiers listed in dmas.

Example:
mmc0: mmc@1c40000 {
	compatible = "ti,da830-mmc",
	reg = <0x40000 0x1000>;
	interrupts = <16>;
	status = "okay";
	bus-width = <4>;
	max-frequency = <50000000>;
	dmas = <&edma 16
		&edma 17>;
	dma-names = "rx", "tx";
};
+70 −0
Original line number Original line Diff line number Diff line
@@ -35,14 +35,84 @@
			clock-frequency = <100000>;
			clock-frequency = <100000>;
			pinctrl-names = "default";
			pinctrl-names = "default";
			pinctrl-0 = <&i2c0_pins>;
			pinctrl-0 = <&i2c0_pins>;

			tps: tps@48 {
				reg = <0x48>;
			};
		};
		};
		wdt: wdt@1c21000 {
		wdt: wdt@1c21000 {
			status = "okay";
			status = "okay";
		};
		};
		mmc0: mmc@1c40000 {
			max-frequency = <50000000>;
			bus-width = <4>;
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <&mmc0_pins>;
		};
	};
	};
	nand_cs3@62000000 {
	nand_cs3@62000000 {
		status = "okay";
		status = "okay";
		pinctrl-names = "default";
		pinctrl-names = "default";
		pinctrl-0 = <&nand_cs3_pins>;
		pinctrl-0 = <&nand_cs3_pins>;
	};
	};
	vbat: fixedregulator@0 {
		compatible = "regulator-fixed";
		regulator-name = "vbat";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		regulator-boot-on;
	};
};

/include/ "tps6507x.dtsi"

&tps {
	vdcdc1_2-supply = <&vbat>;
	vdcdc3-supply = <&vbat>;
	vldo1_2-supply = <&vbat>;

	regulators {
		vdcdc1_reg: regulator@0 {
			regulator-name = "VDCDC1_3.3V";
			regulator-min-microvolt = <3150000>;
			regulator-max-microvolt = <3450000>;
			regulator-always-on;
			regulator-boot-on;
		};

		vdcdc2_reg: regulator@1 {
			regulator-name = "VDCDC2_3.3V";
			regulator-min-microvolt = <1710000>;
			regulator-max-microvolt = <3450000>;
			regulator-always-on;
			regulator-boot-on;
			ti,defdcdc_default = <1>;
		};

		vdcdc3_reg: regulator@2 {
			regulator-name = "VDCDC3_1.2V";
			regulator-min-microvolt = <950000>;
			regulator-max-microvolt = <1350000>;
			regulator-always-on;
			regulator-boot-on;
			ti,defdcdc_default = <1>;
		};

		ldo1_reg: regulator@3 {
			regulator-name = "LDO1_1.8V";
			regulator-min-microvolt = <1710000>;
			regulator-max-microvolt = <1890000>;
			regulator-always-on;
			regulator-boot-on;
		};

		ldo2_reg: regulator@4 {
			regulator-name = "LDO2_1.2V";
			regulator-min-microvolt = <1140000>;
			regulator-max-microvolt = <1320000>;
			regulator-always-on;
			regulator-boot-on;
		};
	};
};
};
+15 −0
Original line number Original line Diff line number Diff line
@@ -62,6 +62,15 @@
					0x10 0x00002200 0x0000ff00
					0x10 0x00002200 0x0000ff00
				>;
				>;
			};
			};
			mmc0_pins: pinmux_mmc_pins {
				pinctrl-single,bits = <
					/* MMCSD0_DAT[3] MMCSD0_DAT[2]
					 * MMCSD0_DAT[1] MMCSD0_DAT[0]
					 * MMCSD0_CMD    MMCSD0_CLK
					 */
					0x28 0x00222222  0x00ffffff
				>;
			};
		};
		};
		serial0: serial@1c42000 {
		serial0: serial@1c42000 {
			compatible = "ns16550a";
			compatible = "ns16550a";
@@ -107,6 +116,12 @@
			reg = <0x21000 0x1000>;
			reg = <0x21000 0x1000>;
			status = "disabled";
			status = "disabled";
		};
		};
		mmc0: mmc@1c40000 {
			compatible = "ti,da830-mmc";
			reg = <0x40000 0x1000>;
			interrupts = <16>;
			status = "disabled";
		};
	};
	};
	nand_cs3@62000000 {
	nand_cs3@62000000 {
		compatible = "ti,davinci-nand";
		compatible = "ti,davinci-nand";
+47 −0
Original line number Original line Diff line number Diff line
/*
 * Copyright (C) 2013 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
 * http://www.ti.com/lit/ds/symlink/tps65070.pdf
 */

&tps {
	compatible = "ti,tps6507x";

	regulators {
		#address-cells = <1>;
		#size-cells = <0>;

		vdcdc1_reg: regulator@0 {
			reg = <0>;
			regulator-compatible = "VDCDC1";
		};

		vdcdc2_reg: regulator@1 {
			reg = <1>;
			regulator-compatible = "VDCDC2";
		};

		vdcdc3_reg: regulator@2 {
			reg = <2>;
			regulator-compatible = "VDCDC3";
		};

		ldo1_reg: regulator@3 {
			reg = <3>;
			regulator-compatible = "LDO1";
		};

		ldo2_reg: regulator@4 {
			reg = <4>;
			regulator-compatible = "LDO2";
		};

	};
};
+1 −0
Original line number Original line Diff line number Diff line
@@ -40,6 +40,7 @@ static void __init da8xx_init_irq(void)
struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
	OF_DEV_AUXDATA("ti,davinci-i2c", 0x01c22000, "i2c_davinci.1", NULL),
	OF_DEV_AUXDATA("ti,davinci-i2c", 0x01c22000, "i2c_davinci.1", NULL),
	OF_DEV_AUXDATA("ti,davinci-wdt", 0x01c21000, "watchdog", NULL),
	OF_DEV_AUXDATA("ti,davinci-wdt", 0x01c21000, "watchdog", NULL),
	OF_DEV_AUXDATA("ti,da830-mmc", 0x01c40000, "da830-mmc.0", NULL),
	{}
	{}
};
};


Loading