mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
Device tree changes for omaps for v4.11 merge window. These changes add earlycon stdout-path propety for the SoCs so far tested with it. The other changes are addition of BeagleBone green and making WLAN work on BeagleBone black wireless and green wireless. The rest of the changes are the usual enabling features on various devices: - Enable devices on am335x-sl50 - Changes to dra7-evm boards to enable enable irqs for dp83867 eth phys, add pinmux configuration for mmc, remov erratum i869 pinmux configurations, disable NAND support because of pin conflict, add pcf8575 used for lcd - Remove NAND partition table for omap3-igep - Configure USB Ethernet MAC from device tree for beagleboard xm, pandaboard, omap5-uevm and igepv5 - Configure am335x-chilisom to wake from RTC-only state - Update Nanobone for external FRAM chip - Clean up n900 dts - Update am335x-phycore and am335x-wega for various devices - Changes for am57xx-beagle-x15 to implement rgmii2 errata * tag 'omap-for-v4.11/dt-signed-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (35 commits) ARM: dts: dra72/1-evm: add pcf8575 used for lcd ARM: dts: dra7xx: Add stdout-path property ARM: dts: am57xx: Add stdout-path property ARM: dts: am43xx: Add stdout-path property ARM: dts: am33xx: Add stdout-path property ARM: dts: am335x-sl50: Enable the Ambient Light Sensor. ARM: dts: am335x-sl50: Enable the MCP23017 GPIO Expander. ARM: dts: am335x-sl50: Enable BQ32000 Real Time Clock. ARM: dts: am335x-sl50: Enable SPI0 interface and Flash Memory. ARM: dts: am335x-sl50: Enable UART1. ARM: dts: am335x-sl50: Remove I2C1 node. ARM: dts: omap3-igep: Remove NAND partition table ARM: dts: am57xx-beagle-x15: implement errata "Ethernet RGMII2 Limited to 10/100 Mbps" ARM: dts: am335x-phycore-som: Remove partition tables ARM: dts: dra72-evm-revc: enable irqs for dp83867 eth phys ARM: dts: Configure BeagleBone peripheral USB VBUS irq ARM: dts: omap5-igep0050: Allow bootloader to configure USB Ethernet MAC ARM: dts: omap5-uevm: Allow bootloader to configure USB Ethernet MAC ARM: dts: pandaboard: Allow bootloader to configure USB Ethernet MAC ARM: omap3: beagleboard-xm: dt: Add ethernet to the device tree ... Signed-off-by: Olof Johansson <olof@lixom.net>
418 lines
10 KiB
Plaintext
418 lines
10 KiB
Plaintext
/*
|
|
* 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.
|
|
*/
|
|
|
|
/ {
|
|
cpus {
|
|
cpu@0 {
|
|
cpu0-supply = <&dcdc2_reg>;
|
|
};
|
|
};
|
|
|
|
memory@80000000 {
|
|
device_type = "memory";
|
|
reg = <0x80000000 0x10000000>; /* 256 MB */
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = &uart0;
|
|
};
|
|
|
|
leds {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&user_leds_s0>;
|
|
|
|
compatible = "gpio-leds";
|
|
|
|
led2 {
|
|
label = "beaglebone:green:heartbeat";
|
|
gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
|
|
linux,default-trigger = "heartbeat";
|
|
default-state = "off";
|
|
};
|
|
|
|
led3 {
|
|
label = "beaglebone:green:mmc0";
|
|
gpios = <&gpio1 22 GPIO_ACTIVE_HIGH>;
|
|
linux,default-trigger = "mmc0";
|
|
default-state = "off";
|
|
};
|
|
|
|
led4 {
|
|
label = "beaglebone:green:usr2";
|
|
gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>;
|
|
linux,default-trigger = "cpu0";
|
|
default-state = "off";
|
|
};
|
|
|
|
led5 {
|
|
label = "beaglebone:green:usr3";
|
|
gpios = <&gpio1 24 GPIO_ACTIVE_HIGH>;
|
|
linux,default-trigger = "mmc1";
|
|
default-state = "off";
|
|
};
|
|
};
|
|
|
|
vmmcsd_fixed: fixedregulator0 {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vmmcsd_fixed";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
};
|
|
};
|
|
|
|
&am33xx_pinmux {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&clkout2_pin>;
|
|
|
|
user_leds_s0: user_leds_s0 {
|
|
pinctrl-single,pins = <
|
|
AM33XX_IOPAD(0x854, PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a5.gpio1_21 */
|
|
AM33XX_IOPAD(0x858, PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_a6.gpio1_22 */
|
|
AM33XX_IOPAD(0x85c, PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a7.gpio1_23 */
|
|
AM33XX_IOPAD(0x860, PIN_OUTPUT_PULLUP | MUX_MODE7) /* gpmc_a8.gpio1_24 */
|
|
>;
|
|
};
|
|
|
|
i2c0_pins: pinmux_i2c0_pins {
|
|
pinctrl-single,pins = <
|
|
AM33XX_IOPAD(0x988, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
|
|
AM33XX_IOPAD(0x98c, PIN_INPUT_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
|
|
>;
|
|
};
|
|
|
|
i2c2_pins: pinmux_i2c2_pins {
|
|
pinctrl-single,pins = <
|
|
AM33XX_IOPAD(0x978, PIN_INPUT_PULLUP | MUX_MODE3) /* uart1_ctsn.i2c2_sda */
|
|
AM33XX_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE3) /* uart1_rtsn.i2c2_scl */
|
|
>;
|
|
};
|
|
|
|
uart0_pins: pinmux_uart0_pins {
|
|
pinctrl-single,pins = <
|
|
AM33XX_IOPAD(0x970, PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
|
|
AM33XX_IOPAD(0x974, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
|
|
>;
|
|
};
|
|
|
|
clkout2_pin: pinmux_clkout2_pin {
|
|
pinctrl-single,pins = <
|
|
AM33XX_IOPAD(0x9b4, PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr1.clkout2 */
|
|
>;
|
|
};
|
|
|
|
cpsw_default: cpsw_default {
|
|
pinctrl-single,pins = <
|
|
/* Slave 1 */
|
|
AM33XX_IOPAD(0x910, PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxerr.mii1_rxerr */
|
|
AM33XX_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txen.mii1_txen */
|
|
AM33XX_IOPAD(0x918, PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxdv.mii1_rxdv */
|
|
AM33XX_IOPAD(0x91c, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd3.mii1_txd3 */
|
|
AM33XX_IOPAD(0x920, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd2.mii1_txd2 */
|
|
AM33XX_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd1.mii1_txd1 */
|
|
AM33XX_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_txd0.mii1_txd0 */
|
|
AM33XX_IOPAD(0x92c, PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_txclk.mii1_txclk */
|
|
AM33XX_IOPAD(0x930, PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxclk.mii1_rxclk */
|
|
AM33XX_IOPAD(0x934, PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd3.mii1_rxd3 */
|
|
AM33XX_IOPAD(0x938, PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd2.mii1_rxd2 */
|
|
AM33XX_IOPAD(0x93c, PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd1.mii1_rxd1 */
|
|
AM33XX_IOPAD(0x940, PIN_INPUT_PULLUP | MUX_MODE0) /* mii1_rxd0.mii1_rxd0 */
|
|
>;
|
|
};
|
|
|
|
cpsw_sleep: cpsw_sleep {
|
|
pinctrl-single,pins = <
|
|
/* Slave 1 reset value */
|
|
AM33XX_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x914, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x91c, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x920, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x924, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x928, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x92c, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
>;
|
|
};
|
|
|
|
davinci_mdio_default: davinci_mdio_default {
|
|
pinctrl-single,pins = <
|
|
/* MDIO */
|
|
AM33XX_IOPAD(0x948, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
|
|
AM33XX_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
|
|
>;
|
|
};
|
|
|
|
davinci_mdio_sleep: davinci_mdio_sleep {
|
|
pinctrl-single,pins = <
|
|
/* MDIO reset value */
|
|
AM33XX_IOPAD(0x948, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
AM33XX_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
|
|
>;
|
|
};
|
|
|
|
mmc1_pins: pinmux_mmc1_pins {
|
|
pinctrl-single,pins = <
|
|
AM33XX_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* GPIO0_6 */
|
|
>;
|
|
};
|
|
|
|
emmc_pins: pinmux_emmc_pins {
|
|
pinctrl-single,pins = <
|
|
AM33XX_IOPAD(0x880, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
|
|
AM33XX_IOPAD(0x884, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd */
|
|
AM33XX_IOPAD(0x800, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
|
|
AM33XX_IOPAD(0x804, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
|
|
AM33XX_IOPAD(0x808, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
|
|
AM33XX_IOPAD(0x80c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
|
|
AM33XX_IOPAD(0x810, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */
|
|
AM33XX_IOPAD(0x814, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */
|
|
AM33XX_IOPAD(0x818, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */
|
|
AM33XX_IOPAD(0x81c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
|
|
>;
|
|
};
|
|
};
|
|
|
|
&uart0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart0_pins>;
|
|
|
|
status = "okay";
|
|
};
|
|
|
|
&usb {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_ctrl_mod {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb0_phy {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb1_phy {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb0 {
|
|
status = "okay";
|
|
dr_mode = "peripheral";
|
|
interrupts-extended = <&intc 18 &tps 0>;
|
|
interrupt-names = "mc", "vbus";
|
|
};
|
|
|
|
&usb1 {
|
|
status = "okay";
|
|
dr_mode = "host";
|
|
};
|
|
|
|
&cppi41dma {
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c0 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c0_pins>;
|
|
|
|
status = "okay";
|
|
clock-frequency = <400000>;
|
|
|
|
tps: tps@24 {
|
|
reg = <0x24>;
|
|
};
|
|
|
|
baseboard_eeprom: baseboard_eeprom@50 {
|
|
compatible = "at,24c256";
|
|
reg = <0x50>;
|
|
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
baseboard_data: baseboard_data@0 {
|
|
reg = <0 0x100>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&i2c2 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&i2c2_pins>;
|
|
|
|
status = "okay";
|
|
clock-frequency = <100000>;
|
|
|
|
cape_eeprom0: cape_eeprom0@54 {
|
|
compatible = "at,24c256";
|
|
reg = <0x54>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
cape0_data: cape_data@0 {
|
|
reg = <0 0x100>;
|
|
};
|
|
};
|
|
|
|
cape_eeprom1: cape_eeprom1@55 {
|
|
compatible = "at,24c256";
|
|
reg = <0x55>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
cape1_data: cape_data@0 {
|
|
reg = <0 0x100>;
|
|
};
|
|
};
|
|
|
|
cape_eeprom2: cape_eeprom2@56 {
|
|
compatible = "at,24c256";
|
|
reg = <0x56>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
cape2_data: cape_data@0 {
|
|
reg = <0 0x100>;
|
|
};
|
|
};
|
|
|
|
cape_eeprom3: cape_eeprom3@57 {
|
|
compatible = "at,24c256";
|
|
reg = <0x57>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
cape3_data: cape_data@0 {
|
|
reg = <0 0x100>;
|
|
};
|
|
};
|
|
};
|
|
|
|
|
|
/include/ "tps65217.dtsi"
|
|
|
|
&tps {
|
|
/*
|
|
* Configure pmic to enter OFF-state instead of SLEEP-state ("RTC-only
|
|
* mode") at poweroff. Most BeagleBone versions do not support RTC-only
|
|
* mode and risk hardware damage if this mode is entered.
|
|
*
|
|
* For details, see linux-omap mailing list May 2015 thread
|
|
* [PATCH] ARM: dts: am335x-bone* enable pmic-shutdown-controller
|
|
* In particular, messages:
|
|
* http://www.spinics.net/lists/linux-omap/msg118585.html
|
|
* http://www.spinics.net/lists/linux-omap/msg118615.html
|
|
*
|
|
* You can override this later with
|
|
* &tps { /delete-property/ ti,pmic-shutdown-controller; }
|
|
* if you want to use RTC-only mode and made sure you are not affected
|
|
* by the hardware problems. (Tip: double-check by performing a current
|
|
* measurement after shutdown: it should be less than 1 mA.)
|
|
*/
|
|
|
|
interrupts = <7>; /* NMI */
|
|
interrupt-parent = <&intc>;
|
|
|
|
ti,pmic-shutdown-controller;
|
|
|
|
charger {
|
|
interrupts = <0>, <1>;
|
|
interrupt-names = "USB", "AC";
|
|
status = "okay";
|
|
};
|
|
|
|
pwrbutton {
|
|
interrupts = <2>;
|
|
status = "okay";
|
|
};
|
|
|
|
regulators {
|
|
dcdc1_reg: regulator@0 {
|
|
regulator-name = "vdds_dpr";
|
|
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 = <1351500>;
|
|
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-name = "vio,vrtc,vdds";
|
|
regulator-always-on;
|
|
};
|
|
|
|
ldo2_reg: regulator@4 {
|
|
regulator-name = "vdd_3v3aux";
|
|
regulator-always-on;
|
|
};
|
|
|
|
ldo3_reg: regulator@5 {
|
|
regulator-name = "vdd_1v8";
|
|
regulator-always-on;
|
|
};
|
|
|
|
ldo4_reg: regulator@6 {
|
|
regulator-name = "vdd_3v3a";
|
|
regulator-always-on;
|
|
};
|
|
};
|
|
};
|
|
|
|
&cpsw_emac0 {
|
|
phy_id = <&davinci_mdio>, <0>;
|
|
phy-mode = "mii";
|
|
};
|
|
|
|
&mac {
|
|
slaves = <1>;
|
|
pinctrl-names = "default", "sleep";
|
|
pinctrl-0 = <&cpsw_default>;
|
|
pinctrl-1 = <&cpsw_sleep>;
|
|
status = "okay";
|
|
};
|
|
|
|
&davinci_mdio {
|
|
pinctrl-names = "default", "sleep";
|
|
pinctrl-0 = <&davinci_mdio_default>;
|
|
pinctrl-1 = <&davinci_mdio_sleep>;
|
|
status = "okay";
|
|
};
|
|
|
|
&mmc1 {
|
|
status = "okay";
|
|
bus-width = <0x4>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&mmc1_pins>;
|
|
cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
&aes {
|
|
status = "okay";
|
|
};
|
|
|
|
&sham {
|
|
status = "okay";
|
|
};
|
|
|
|
&rtc {
|
|
clocks = <&clk_32768_ck>, <&clkdiv32k_ick>;
|
|
clock-names = "ext-clk", "int-clk";
|
|
};
|