am335x-bone.dts 5.6 KB
Newer Older
1 2 3 4 5 6 7 8 9
/*
 * Copyright (C) 2012 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.
 */
/dts-v1/;

10
#include "am33xx.dtsi"
11 12 13 14 15

/ {
	model = "TI AM335x BeagleBone";
	compatible = "ti,am335x-bone", "ti,am33xx";

16 17 18 19 20 21
	cpus {
		cpu@0 {
			cpu0-supply = <&dcdc2_reg>;
		};
	};

22 23 24 25
	memory {
		device_type = "memory";
		reg = <0x80000000 0x10000000>; /* 256 MB */
	};
26

27 28
	am33xx_pinmux: pinmux@44e10800 {
		pinctrl-names = "default";
29
		pinctrl-0 = <&clkout2_pin>;
30 31 32

		user_leds_s0: user_leds_s0 {
			pinctrl-single,pins = <
33 34 35 36
				0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a5.gpio1_21 */
				0x58 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* gpmc_a6.gpio1_22 */
				0x5c (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a7.gpio1_23 */
				0x60 (PIN_OUTPUT_PULLUP | MUX_MODE7)	/* gpmc_a8.gpio1_24 */
37 38
			>;
		};
39 40 41

		i2c0_pins: pinmux_i2c0_pins {
			pinctrl-single,pins = <
42 43
				0x188 (PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c0_sda.i2c0_sda */
				0x18c (PIN_INPUT_PULLUP | MUX_MODE0)	/* i2c0_scl.i2c0_scl */
44 45
			>;
		};
46 47 48

		uart0_pins: pinmux_uart0_pins {
			pinctrl-single,pins = <
49 50
				0x170 (PIN_INPUT_PULLUP | MUX_MODE0)	/* uart0_rxd.uart0_rxd */
				0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* uart0_txd.uart0_txd */
51 52
			>;
		};
53 54 55

		clkout2_pin: pinmux_clkout2_pin {
			pinctrl-single,pins = <
56
				0x1b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)	/* xdma_event_intr1.clkout2 */
57 58
			>;
		};
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112

		cpsw_default: cpsw_default {
			pinctrl-single,pins = <
				/* Slave 1 */
				0x110 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mii1_rxerr.mii1_rxerr */
				0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* mii1_txen.mii1_txen */
				0x118 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mii1_rxdv.mii1_rxdv */
				0x11c (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* mii1_txd3.mii1_txd3 */
				0x120 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* mii1_txd2.mii1_txd2 */
				0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* mii1_txd1.mii1_txd1 */
				0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* mii1_txd0.mii1_txd0 */
				0x12c (PIN_INPUT_PULLUP | MUX_MODE0)	/* mii1_txclk.mii1_txclk */
				0x130 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mii1_rxclk.mii1_rxclk */
				0x134 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mii1_rxd3.mii1_rxd3 */
				0x138 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mii1_rxd2.mii1_rxd2 */
				0x13c (PIN_INPUT_PULLUP | MUX_MODE0)	/* mii1_rxd1.mii1_rxd1 */
				0x140 (PIN_INPUT_PULLUP | MUX_MODE0)	/* mii1_rxd0.mii1_rxd0 */
			>;
		};

		cpsw_sleep: cpsw_sleep {
			pinctrl-single,pins = <
				/* Slave 1 reset value */
				0x110 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
			>;
		};

		davinci_mdio_default: davinci_mdio_default {
			pinctrl-single,pins = <
				/* MDIO */
				0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)	/* mdio_data.mdio_data */
				0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0)			/* mdio_clk.mdio_clk */
			>;
		};

		davinci_mdio_sleep: davinci_mdio_sleep {
			pinctrl-single,pins = <
				/* MDIO reset value */
				0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
				0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
			>;
		};
113 114
	};

115
	ocp {
116
		uart0: serial@44e09000 {
117 118 119
			pinctrl-names = "default";
			pinctrl-0 = <&uart0_pins>;

120 121
			status = "okay";
		};
122

123
		i2c0: i2c@44e0b000 {
124 125 126
			pinctrl-names = "default";
			pinctrl-0 = <&i2c0_pins>;

127 128 129 130 131 132 133 134 135
			status = "okay";
			clock-frequency = <400000>;

			tps: tps@24 {
				reg = <0x24>;
			};

		};
	};
136 137

	leds {
138 139 140
		pinctrl-names = "default";
		pinctrl-0 = <&user_leds_s0>;

141 142 143 144
		compatible = "gpio-leds";

		led@2 {
			label = "beaglebone:green:heartbeat";
145
			gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
146 147 148 149 150 151
			linux,default-trigger = "heartbeat";
			default-state = "off";
		};

		led@3 {
			label = "beaglebone:green:mmc0";
152
			gpios = <&gpio1 22 GPIO_ACTIVE_HIGH>;
153 154 155 156 157 158
			linux,default-trigger = "mmc0";
			default-state = "off";
		};

		led@4 {
			label = "beaglebone:green:usr2";
159
			gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>;
160 161 162 163 164
			default-state = "off";
		};

		led@5 {
			label = "beaglebone:green:usr3";
165
			gpios = <&gpio1 24 GPIO_ACTIVE_HIGH>;
166 167 168
			default-state = "off";
		};
	};
169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211
};

/include/ "tps65217.dtsi"

&tps {
	regulators {
		dcdc1_reg: regulator@0 {
			regulator-always-on;
		};

		dcdc2_reg: regulator@1 {
			/* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */
			regulator-name = "vdd_mpu";
			regulator-min-microvolt = <925000>;
			regulator-max-microvolt = <1325000>;
			regulator-boot-on;
			regulator-always-on;
		};

		dcdc3_reg: regulator@2 {
			/* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
			regulator-name = "vdd_core";
			regulator-min-microvolt = <925000>;
			regulator-max-microvolt = <1150000>;
			regulator-boot-on;
			regulator-always-on;
		};

		ldo1_reg: regulator@3 {
			regulator-always-on;
		};

		ldo2_reg: regulator@4 {
			regulator-always-on;
		};

		ldo3_reg: regulator@5 {
			regulator-always-on;
		};

		ldo4_reg: regulator@6 {
			regulator-always-on;
		};
212
	};
213
};
214 215 216 217 218 219 220 221

&cpsw_emac0 {
	phy_id = <&davinci_mdio>, <0>;
};

&cpsw_emac1 {
	phy_id = <&davinci_mdio>, <1>;
};
222 223 224 225 226 227 228 229 230 231 232 233 234

&mac {
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&cpsw_default>;
	pinctrl-1 = <&cpsw_sleep>;

};

&davinci_mdio {
	pinctrl-names = "default", "sleep";
	pinctrl-0 = <&davinci_mdio_default>;
	pinctrl-1 = <&davinci_mdio_sleep>;
};