# 1 "arch/arm/boot/dts/am335x-boneblack-spi0.dts" # 1 "" # 1 "" # 1 "arch/arm/boot/dts/am335x-boneblack-spi0.dts" /dts-v1/; # 1 "arch/arm/boot/dts/am33xx.dtsi" 1 # 11 "arch/arm/boot/dts/am33xx.dtsi" # 1 "./arch/arm/boot/dts/include/dt-bindings/gpio/gpio.h" 1 # 12 "arch/arm/boot/dts/am33xx.dtsi" 2 # 1 "./arch/arm/boot/dts/include/dt-bindings/pinctrl/am33xx.h" 1 # 1 "./arch/arm/boot/dts/include/dt-bindings/pinctrl/omap.h" 1 # 9 "./arch/arm/boot/dts/include/dt-bindings/pinctrl/am33xx.h" 2 # 13 "arch/arm/boot/dts/am33xx.dtsi" 2 # 1 "arch/arm/boot/dts/skeleton.dtsi" 1 / { #address-cells = <1>; #size-cells = <1>; chosen { }; aliases { }; memory { device_type = "memory"; reg = <0 0>; }; }; # 15 "arch/arm/boot/dts/am33xx.dtsi" 2 / { compatible = "ti,am33xx"; interrupt-parent = <&intc>; aliases { i2c0 = &i2c0; i2c1 = &i2c1; i2c2 = &i2c2; serial0 = &uart0; serial1 = &uart1; serial2 = &uart2; serial3 = &uart3; serial4 = &uart4; serial5 = &uart5; d_can0 = &dcan0; d_can1 = &dcan1; usb0 = &usb0; usb1 = &usb1; phy0 = &usb0_phy; phy1 = &usb1_phy; ethernet0 = &cpsw_emac0; ethernet1 = &cpsw_emac1; }; cpus { #address-cells = <1>; #size-cells = <0>; cpu@0 { compatible = "arm,cortex-a8"; device_type = "cpu"; reg = <0>; voltage-tolerance = <2>; clocks = <&dpll_mpu_ck>; clock-names = "cpu"; clock-latency = <300000>; }; }; pmu { compatible = "arm,cortex-a8-pmu"; interrupts = <3>; }; soc { compatible = "ti,omap-infra"; mpu { compatible = "ti,omap3-mpu"; ti,hwmods = "mpu"; sram = <&ocmcram>; }; }; # 82 "arch/arm/boot/dts/am33xx.dtsi" ocp: ocp { compatible = "simple-bus"; #address-cells = <1>; #size-cells = <1>; ranges; ti,hwmods = "l3_main"; l4_wkup: l4_wkup@44c00000 { compatible = "ti,am3-l4-wkup", "simple-bus"; #address-cells = <1>; #size-cells = <1>; ranges = <0 0x44c00000 0x280000>; wkup_m3: wkup_m3@100000 { compatible = "ti,am3352-wkup-m3"; reg = <0x100000 0x4000>, <0x180000 0x2000>; reg-names = "umem", "dmem"; ti,hwmods = "wkup_m3"; ti,pm-firmware = "am335x-pm-firmware.elf"; }; prcm: prcm@200000 { compatible = "ti,am3-prcm"; reg = <0x200000 0x4000>; prcm_clocks: clocks { #address-cells = <1>; #size-cells = <0>; }; prcm_clockdomains: clockdomains { }; }; scm: scm@210000 { compatible = "ti,am3-scm", "simple-bus"; reg = <0x210000 0x2000>; #address-cells = <1>; #size-cells = <1>; ranges = <0 0x210000 0x2000>; am33xx_pinmux: pinmux@800 { compatible = "pinctrl-single"; reg = <0x800 0x238>; #address-cells = <1>; #size-cells = <0>; pinctrl-single,register-width = <32>; pinctrl-single,function-mask = <0x7f>; }; scm_conf: scm_conf@0 { compatible = "syscon"; reg = <0x0 0x800>; #address-cells = <1>; #size-cells = <1>; scm_clocks: clocks { #address-cells = <1>; #size-cells = <0>; }; }; wkup_m3_ipc: wkup_m3_ipc@1324 { compatible = "ti,am3352-wkup-m3-ipc"; reg = <0x1324 0x24>; interrupts = <78>; ti,rproc = <&wkup_m3>; mboxes = <&mailbox &mbox_wkupm3>; }; edma_xbar: dma-router@f90 { compatible = "ti,am335x-edma-crossbar"; reg = <0xf90 0x40>; #dma-cells = <3>; dma-requests = <32>; dma-masters = <&edma>; }; scm_clockdomains: clockdomains { }; }; }; intc: interrupt-controller@48200000 { compatible = "ti,am33xx-intc"; interrupt-controller; #interrupt-cells = <1>; reg = <0x48200000 0x1000>; }; edma: edma@49000000 { compatible = "ti,edma3-tpcc"; ti,hwmods = "tpcc"; reg = <0x49000000 0x10000>; reg-names = "edma3_cc"; interrupts = <12 13 14>; interrupt-names = "edma3_ccint", "emda3_mperr", "edma3_ccerrint"; dma-requests = <64>; #dma-cells = <2>; ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>, <&edma_tptc2 0>; ti,edma-memcpy-channels = <20 21>; }; edma_tptc0: tptc@49800000 { compatible = "ti,edma3-tptc"; ti,hwmods = "tptc0"; reg = <0x49800000 0x100000>; interrupts = <112>; interrupt-names = "edma3_tcerrint"; }; edma_tptc1: tptc@49900000 { compatible = "ti,edma3-tptc"; ti,hwmods = "tptc1"; reg = <0x49900000 0x100000>; interrupts = <113>; interrupt-names = "edma3_tcerrint"; }; edma_tptc2: tptc@49a00000 { compatible = "ti,edma3-tptc"; ti,hwmods = "tptc2"; reg = <0x49a00000 0x100000>; interrupts = <114>; interrupt-names = "edma3_tcerrint"; }; emif: emif@4c000000 { compatible = "ti,emif-am3352"; reg = <0x4C000000 0x1000>; sram = <&ocmcram>; }; gpio0: gpio@44e07000 { compatible = "ti,omap4-gpio"; ti,hwmods = "gpio1"; gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; reg = <0x44e07000 0x1000>; interrupts = <96>; }; gpio1: gpio@4804c000 { compatible = "ti,omap4-gpio"; ti,hwmods = "gpio2"; gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; reg = <0x4804c000 0x1000>; interrupts = <98>; }; gpio2: gpio@481ac000 { compatible = "ti,omap4-gpio"; ti,hwmods = "gpio3"; gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; reg = <0x481ac000 0x1000>; interrupts = <32>; }; gpio3: gpio@481ae000 { compatible = "ti,omap4-gpio"; ti,hwmods = "gpio4"; gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; reg = <0x481ae000 0x1000>; interrupts = <62>; }; uart0: serial@44e09000 { compatible = "ti,am3352-uart", "ti,omap3-uart"; ti,hwmods = "uart1"; clock-frequency = <48000000>; reg = <0x44e09000 0x2000>; interrupts = <72>; status = "disabled"; dmas = <&edma 26 0>, <&edma 27 0>; dma-names = "tx", "rx"; }; uart1: serial@48022000 { compatible = "ti,am3352-uart", "ti,omap3-uart"; ti,hwmods = "uart2"; clock-frequency = <48000000>; reg = <0x48022000 0x2000>; interrupts = <73>; status = "disabled"; dmas = <&edma 28 0>, <&edma 29 0>; dma-names = "tx", "rx"; }; uart2: serial@48024000 { compatible = "ti,am3352-uart", "ti,omap3-uart"; ti,hwmods = "uart3"; clock-frequency = <48000000>; reg = <0x48024000 0x2000>; interrupts = <74>; status = "disabled"; dmas = <&edma 30 0>, <&edma 31 0>; dma-names = "tx", "rx"; }; uart3: serial@481a6000 { compatible = "ti,am3352-uart", "ti,omap3-uart"; ti,hwmods = "uart4"; clock-frequency = <48000000>; reg = <0x481a6000 0x2000>; interrupts = <44>; status = "disabled"; }; uart4: serial@481a8000 { compatible = "ti,am3352-uart", "ti,omap3-uart"; ti,hwmods = "uart5"; clock-frequency = <48000000>; reg = <0x481a8000 0x2000>; interrupts = <45>; status = "disabled"; }; uart5: serial@481aa000 { compatible = "ti,am3352-uart", "ti,omap3-uart"; ti,hwmods = "uart6"; clock-frequency = <48000000>; reg = <0x481aa000 0x2000>; interrupts = <46>; status = "disabled"; }; i2c0: i2c@44e0b000 { compatible = "ti,omap4-i2c"; #address-cells = <1>; #size-cells = <0>; ti,hwmods = "i2c1"; reg = <0x44e0b000 0x1000>; interrupts = <70>; status = "disabled"; }; i2c1: i2c@4802a000 { compatible = "ti,omap4-i2c"; #address-cells = <1>; #size-cells = <0>; ti,hwmods = "i2c2"; reg = <0x4802a000 0x1000>; interrupts = <71>; status = "disabled"; }; i2c2: i2c@4819c000 { compatible = "ti,omap4-i2c"; #address-cells = <1>; #size-cells = <0>; ti,hwmods = "i2c3"; reg = <0x4819c000 0x1000>; interrupts = <30>; status = "disabled"; }; mmc1: mmc@48060000 { compatible = "ti,omap4-hsmmc"; ti,hwmods = "mmc1"; ti,dual-volt; ti,needs-special-reset; ti,needs-special-hs-handling; dmas = <&edma_xbar 24 0 0 &edma_xbar 25 0 0>; dma-names = "tx", "rx"; interrupts = <64>; interrupt-parent = <&intc>; reg = <0x48060000 0x1000>; status = "disabled"; }; mmc2: mmc@481d8000 { compatible = "ti,omap4-hsmmc"; ti,hwmods = "mmc2"; ti,needs-special-reset; dmas = <&edma 2 0 &edma 3 0>; dma-names = "tx", "rx"; interrupts = <28>; interrupt-parent = <&intc>; reg = <0x481d8000 0x1000>; status = "disabled"; }; mmc3: mmc@47810000 { compatible = "ti,omap4-hsmmc"; ti,hwmods = "mmc3"; ti,needs-special-reset; interrupts = <29>; interrupt-parent = <&intc>; reg = <0x47810000 0x1000>; status = "disabled"; }; hwspinlock: spinlock@480ca000 { compatible = "ti,omap4-hwspinlock"; reg = <0x480ca000 0x1000>; ti,hwmods = "spinlock"; #hwlock-cells = <1>; }; wdt2: wdt@44e35000 { compatible = "ti,omap3-wdt"; ti,hwmods = "wd_timer2"; reg = <0x44e35000 0x1000>; interrupts = <91>; }; dcan0: can@481cc000 { compatible = "ti,am3352-d_can"; ti,hwmods = "d_can0"; reg = <0x481cc000 0x2000>; clocks = <&dcan0_fck>; clock-names = "fck"; syscon-raminit = <&scm_conf 0x644 0>; interrupts = <52>; status = "disabled"; }; dcan1: can@481d0000 { compatible = "ti,am3352-d_can"; ti,hwmods = "d_can1"; reg = <0x481d0000 0x2000>; clocks = <&dcan1_fck>; clock-names = "fck"; syscon-raminit = <&scm_conf 0x644 1>; interrupts = <55>; status = "disabled"; }; mailbox: mailbox@480C8000 { compatible = "ti,omap4-mailbox"; reg = <0x480C8000 0x200>; interrupts = <77>; ti,hwmods = "mailbox"; #mbox-cells = <1>; ti,mbox-num-users = <4>; ti,mbox-num-fifos = <8>; mbox_wkupm3: wkup_m3 { ti,mbox-send-noirq; ti,mbox-tx = <0 0 0>; ti,mbox-rx = <0 0 3>; }; mbox_pru0: mbox_pru0 { ti,mbox-tx = <2 0 0>; ti,mbox-rx = <3 0 0>; }; mbox_pru1: mbox_pru1 { ti,mbox-tx = <4 0 0>; ti,mbox-rx = <5 0 0>; }; }; timer1: timer@44e31000 { compatible = "ti,am335x-timer-1ms"; reg = <0x44e31000 0x400>; interrupts = <67>; ti,hwmods = "timer1"; ti,timer-alwon; }; timer2: timer@48040000 { compatible = "ti,am335x-timer"; reg = <0x48040000 0x400>; interrupts = <68>; ti,hwmods = "timer2"; }; timer3: timer@48042000 { compatible = "ti,am335x-timer"; reg = <0x48042000 0x400>; interrupts = <69>; ti,hwmods = "timer3"; }; timer4: timer@48044000 { compatible = "ti,am335x-timer"; reg = <0x48044000 0x400>; interrupts = <92>; ti,hwmods = "timer4"; ti,timer-pwm; }; timer5: timer@48046000 { compatible = "ti,am335x-timer"; reg = <0x48046000 0x400>; interrupts = <93>; ti,hwmods = "timer5"; ti,timer-pwm; }; timer6: timer@48048000 { compatible = "ti,am335x-timer"; reg = <0x48048000 0x400>; interrupts = <94>; ti,hwmods = "timer6"; ti,timer-pwm; }; timer7: timer@4804a000 { compatible = "ti,am335x-timer"; reg = <0x4804a000 0x400>; interrupts = <95>; ti,hwmods = "timer7"; ti,timer-pwm; }; rtc: rtc@44e3e000 { compatible = "ti,am3352-rtc", "ti,da830-rtc"; reg = <0x44e3e000 0x1000>; interrupts = <75 76>; ti,hwmods = "rtc"; }; cppi41dma: dma-controller@47402000 { compatible = "ti,am3359-cppi41"; reg = <0x47400000 0x1000 0x47402000 0x1000 0x47403000 0x1000 0x47404000 0x4000>; reg-names = "glue", "controller", "scheduler", "queuemgr"; interrupts = <17>; interrupt-names = "glue"; #dma-cells = <2>; #dma-channels = <30>; #dma-requests = <256>; status = "disabled"; }; spi0: spi@48030000 { compatible = "ti,omap4-mcspi"; #address-cells = <1>; #size-cells = <0>; reg = <0x48030000 0x400>; interrupts = <65>; ti,spi-num-cs = <2>; ti,hwmods = "spi0"; dmas = <&edma 16 0 &edma 17 0 &edma 18 0 &edma 19 0>; dma-names = "tx0", "rx0", "tx1", "rx1"; status = "disabled"; }; spi1: spi@481a0000 { compatible = "ti,omap4-mcspi"; #address-cells = <1>; #size-cells = <0>; reg = <0x481a0000 0x400>; interrupts = <125>; ti,spi-num-cs = <2>; ti,hwmods = "spi1"; dmas = <&edma 42 0 &edma 43 0 &edma 44 0 &edma 45 0>; dma-names = "tx0", "rx0", "tx1", "rx1"; status = "disabled"; }; usb: usb@47400000 { compatible = "ti,am33xx-usb"; reg = <0x47400000 0x1000>; ranges; #address-cells = <1>; #size-cells = <1>; ti,hwmods = "usb_otg_hs"; status = "disabled"; usb_ctrl_mod: control@44e10620 { compatible = "ti,am335x-usb-ctrl-module"; reg = <0x44e10620 0x10 0x44e10648 0x4>; reg-names = "phy_ctrl", "wakeup"; status = "disabled"; }; usb0_phy: usb-phy@47401300 { compatible = "ti,am335x-usb-phy"; reg = <0x47401300 0x100>; reg-names = "phy"; status = "disabled"; ti,ctrl_mod = <&usb_ctrl_mod>; }; usb0: usb@47401000 { compatible = "ti,musb-am33xx"; status = "disabled"; reg = <0x47401400 0x400 0x47401000 0x200>; reg-names = "mc", "control"; interrupts = <18>; interrupt-names = "mc"; dr_mode = "otg"; mentor,multipoint = <1>; mentor,num-eps = <16>; mentor,ram-bits = <12>; mentor,power = <500>; phys = <&usb0_phy>; dmas = <&cppi41dma 0 0 &cppi41dma 1 0 &cppi41dma 2 0 &cppi41dma 3 0 &cppi41dma 4 0 &cppi41dma 5 0 &cppi41dma 6 0 &cppi41dma 7 0 &cppi41dma 8 0 &cppi41dma 9 0 &cppi41dma 10 0 &cppi41dma 11 0 &cppi41dma 12 0 &cppi41dma 13 0 &cppi41dma 14 0 &cppi41dma 0 1 &cppi41dma 1 1 &cppi41dma 2 1 &cppi41dma 3 1 &cppi41dma 4 1 &cppi41dma 5 1 &cppi41dma 6 1 &cppi41dma 7 1 &cppi41dma 8 1 &cppi41dma 9 1 &cppi41dma 10 1 &cppi41dma 11 1 &cppi41dma 12 1 &cppi41dma 13 1 &cppi41dma 14 1>; dma-names = "rx1", "rx2", "rx3", "rx4", "rx5", "rx6", "rx7", "rx8", "rx9", "rx10", "rx11", "rx12", "rx13", "rx14", "rx15", "tx1", "tx2", "tx3", "tx4", "tx5", "tx6", "tx7", "tx8", "tx9", "tx10", "tx11", "tx12", "tx13", "tx14", "tx15"; }; usb1_phy: usb-phy@47401b00 { compatible = "ti,am335x-usb-phy"; reg = <0x47401b00 0x100>; reg-names = "phy"; status = "disabled"; ti,ctrl_mod = <&usb_ctrl_mod>; }; usb1: usb@47401800 { compatible = "ti,musb-am33xx"; status = "disabled"; reg = <0x47401c00 0x400 0x47401800 0x200>; reg-names = "mc", "control"; interrupts = <19>; interrupt-names = "mc"; dr_mode = "otg"; mentor,multipoint = <1>; mentor,num-eps = <16>; mentor,ram-bits = <12>; mentor,power = <500>; phys = <&usb1_phy>; dmas = <&cppi41dma 15 0 &cppi41dma 16 0 &cppi41dma 17 0 &cppi41dma 18 0 &cppi41dma 19 0 &cppi41dma 20 0 &cppi41dma 21 0 &cppi41dma 22 0 &cppi41dma 23 0 &cppi41dma 24 0 &cppi41dma 25 0 &cppi41dma 26 0 &cppi41dma 27 0 &cppi41dma 28 0 &cppi41dma 29 0 &cppi41dma 15 1 &cppi41dma 16 1 &cppi41dma 17 1 &cppi41dma 18 1 &cppi41dma 19 1 &cppi41dma 20 1 &cppi41dma 21 1 &cppi41dma 22 1 &cppi41dma 23 1 &cppi41dma 24 1 &cppi41dma 25 1 &cppi41dma 26 1 &cppi41dma 27 1 &cppi41dma 28 1 &cppi41dma 29 1>; dma-names = "rx1", "rx2", "rx3", "rx4", "rx5", "rx6", "rx7", "rx8", "rx9", "rx10", "rx11", "rx12", "rx13", "rx14", "rx15", "tx1", "tx2", "tx3", "tx4", "tx5", "tx6", "tx7", "tx8", "tx9", "tx10", "tx11", "tx12", "tx13", "tx14", "tx15"; }; }; epwmss0: epwmss@48300000 { compatible = "ti,am33xx-pwmss"; reg = <0x48300000 0x10>; ti,hwmods = "epwmss0"; #address-cells = <1>; #size-cells = <1>; status = "disabled"; ranges = <0x48300100 0x48300100 0x80 0x48300180 0x48300180 0x80 0x48300200 0x48300200 0x80>; ecap0: ecap@48300100 { compatible = "ti,am33xx-ecap"; #pwm-cells = <3>; reg = <0x48300100 0x80>; interrupts = <31>; interrupt-names = "ecap0"; ti,hwmods = "ecap0"; status = "disabled"; }; ehrpwm0: ehrpwm@48300200 { compatible = "ti,am33xx-ehrpwm"; #pwm-cells = <3>; reg = <0x48300200 0x80>; ti,hwmods = "ehrpwm0"; status = "disabled"; }; eqep0: eqep@0x48300180 { compatible = "ti,am33xx-eqep"; reg = <0x48300180 0x80>; interrupt-parent = <&intc>; interrupts = <79>; ti,hwmods = "eqep0"; status = "disabled"; }; }; epwmss1: epwmss@48302000 { compatible = "ti,am33xx-pwmss"; reg = <0x48302000 0x10>; ti,hwmods = "epwmss1"; #address-cells = <1>; #size-cells = <1>; status = "disabled"; ranges = <0x48302100 0x48302100 0x80 0x48302180 0x48302180 0x80 0x48302200 0x48302200 0x80>; ecap1: ecap@48302100 { compatible = "ti,am33xx-ecap"; #pwm-cells = <3>; reg = <0x48302100 0x80>; interrupts = <47>; interrupt-names = "ecap1"; ti,hwmods = "ecap1"; status = "disabled"; }; ehrpwm1: ehrpwm@48302200 { compatible = "ti,am33xx-ehrpwm"; #pwm-cells = <3>; reg = <0x48302200 0x80>; ti,hwmods = "ehrpwm1"; status = "disabled"; }; eqep1: eqep@0x48302180 { compatible = "ti,am33xx-eqep"; reg = <0x48302180 0x80>; interrupt-parent = <&intc>; interrupts = <88>; ti,hwmods = "eqep1"; status = "disabled"; }; }; epwmss2: epwmss@48304000 { compatible = "ti,am33xx-pwmss"; reg = <0x48304000 0x10>; ti,hwmods = "epwmss2"; #address-cells = <1>; #size-cells = <1>; status = "disabled"; ranges = <0x48304100 0x48304100 0x80 0x48304180 0x48304180 0x80 0x48304200 0x48304200 0x80>; ecap2: ecap@48304100 { compatible = "ti,am33xx-ecap"; #pwm-cells = <3>; reg = <0x48304100 0x80>; interrupts = <61>; interrupt-names = "ecap2"; ti,hwmods = "ecap2"; status = "disabled"; }; ehrpwm2: ehrpwm@48304200 { compatible = "ti,am33xx-ehrpwm"; #pwm-cells = <3>; reg = <0x48304200 0x80>; ti,hwmods = "ehrpwm2"; status = "disabled"; }; eqep2: eqep@0x48304180 { compatible = "ti,am33xx-eqep"; reg = <0x48304180 0x80>; interrupt-parent = <&intc>; interrupts = <89>; ti,hwmods = "eqep2"; status = "disabled"; }; }; mac: ethernet@4a100000 { compatible = "ti,am335x-cpsw","ti,cpsw"; ti,hwmods = "cpgmac0"; clocks = <&cpsw_125mhz_gclk>, <&cpsw_cpts_rft_clk>; clock-names = "fck", "cpts"; cpdma_channels = <8>; ale_entries = <1024>; bd_ram_size = <0x2000>; no_bd_ram = <0>; rx_descs = <64>; mac_control = <0x20>; slaves = <2>; active_slave = <0>; cpts_clock_mult = <0x80000000>; cpts_clock_shift = <29>; reg = <0x4a100000 0x800 0x4a101200 0x100>; #address-cells = <1>; #size-cells = <1>; interrupt-parent = <&intc>; interrupts = <40 41 42 43>; ranges; syscon = <&scm_conf>; status = "disabled"; davinci_mdio: mdio@4a101000 { compatible = "ti,davinci_mdio"; #address-cells = <1>; #size-cells = <0>; ti,hwmods = "davinci_mdio"; bus_freq = <1000000>; reg = <0x4a101000 0x100>; status = "disabled"; }; cpsw_emac0: slave@4a100200 { mac-address = [ 00 00 00 00 00 00 ]; }; cpsw_emac1: slave@4a100300 { mac-address = [ 00 00 00 00 00 00 ]; }; phy_sel: cpsw-phy-sel@44e10650 { compatible = "ti,am3352-cpsw-phy-sel"; reg= <0x44e10650 0x4>; reg-names = "gmii-sel"; }; }; ocmcram: ocmcram@40300000 { compatible = "mmio-sram"; reg = <0x40300000 0x10000>; map-exec; }; pruss: pruss@4a300000 { compatible = "ti,am3352-pruss"; ti,hwmods = "pruss"; reg = <0x4a300000 0x2000>, <0x4a302000 0x2000>, <0x4a310000 0x3000>, <0x4a320000 0x2000>, <0x4a326000 0x2000>; reg-names = "dram0", "dram1", "shrdram2", "intc", "cfg"; interrupts = <20 21 22 23 24 25 26 27>; #address-cells = <1>; #size-cells = <1>; ranges; pru0: pru@4a334000 { compatible = "ti,am3352-pru-rproc"; reg = <0x4a334000 0x2000>, <0x4a322000 0x400>, <0x4a322400 0x100>; reg-names = "iram", "control", "debug"; mboxes = <&mailbox &mbox_pru0>; }; pru1: pru@4a338000 { compatible = "ti,am3352-pru-rproc"; reg = <0x4a338000 0x2000>, <0x4a324000 0x400>, <0x4a324400 0x100>; reg-names = "iram", "control", "debug"; mboxes = <&mailbox &mbox_pru1>; }; }; elm: elm@48080000 { compatible = "ti,am3352-elm"; reg = <0x48080000 0x2000>; interrupts = <4>; ti,hwmods = "elm"; status = "disabled"; }; lcdc: lcdc@4830e000 { compatible = "ti,am33xx-tilcdc"; reg = <0x4830e000 0x1000>; interrupt-parent = <&intc>; interrupts = <36>; ti,hwmods = "lcdc"; status = "disabled"; }; tscadc: tscadc@44e0d000 { compatible = "ti,am3359-tscadc"; reg = <0x44e0d000 0x1000>; interrupt-parent = <&intc>; interrupts = <16>; ti,hwmods = "adc_tsc"; status = "disabled"; tsc { compatible = "ti,am3359-tsc"; }; am335x_adc: adc { #io-channel-cells = <1>; compatible = "ti,am3359-adc"; }; }; gpmc: gpmc@50000000 { compatible = "ti,am3352-gpmc"; ti,hwmods = "gpmc"; ti,no-idle-on-init; reg = <0x50000000 0x2000>; interrupts = <100>; dmas = <&edma 52 0>; dma-names = "rxtx"; gpmc,num-cs = <7>; gpmc,num-waitpins = <2>; #address-cells = <2>; #size-cells = <1>; gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; status = "disabled"; }; sham: sham@53100000 { compatible = "ti,omap4-sham"; ti,hwmods = "sham"; reg = <0x53100000 0x200>; interrupts = <109>; dmas = <&edma 36 0>; dma-names = "rx"; }; aes: aes@53500000 { compatible = "ti,omap4-aes"; ti,hwmods = "aes"; reg = <0x53500000 0xa0>; interrupts = <103>; dmas = <&edma 6 0>, <&edma 5 0>; dma-names = "tx", "rx"; }; mcasp0: mcasp@48038000 { compatible = "ti,am33xx-mcasp-audio"; ti,hwmods = "mcasp0"; reg = <0x48038000 0x2000>, <0x46000000 0x400000>; reg-names = "mpu", "dat"; interrupts = <80>, <81>; interrupt-names = "tx", "rx"; status = "disabled"; dmas = <&edma 8 2>, <&edma 9 2>; dma-names = "tx", "rx"; }; mcasp1: mcasp@4803C000 { compatible = "ti,am33xx-mcasp-audio"; ti,hwmods = "mcasp1"; reg = <0x4803C000 0x2000>, <0x46400000 0x400000>; reg-names = "mpu", "dat"; interrupts = <82>, <83>; interrupt-names = "tx", "rx"; status = "disabled"; dmas = <&edma 10 2>, <&edma 11 2>; dma-names = "tx", "rx"; }; rng: rng@48310000 { compatible = "ti,omap4-rng"; ti,hwmods = "rng"; reg = <0x48310000 0x2000>; interrupts = <111>; }; sgx: sgx@0x56000000 { compatible = "ti,am3352-sgx530", "img,sgx530"; ti,hwmods = "gfx"; reg = <0x56000000 0x1000000>; interrupts = <37>; status = "disabled"; }; }; }; /include/ "am33xx-clocks.dtsi" # 11 "arch/arm/boot/dts/am335x-boneblack-spi0.dts" 2 # 1 "arch/arm/boot/dts/am335x-bone-common.dtsi" 1 # 9 "arch/arm/boot/dts/am335x-bone-common.dtsi" / { cpus { cpu@0 { cpu0-supply = <&dcdc2_reg>; }; }; memory { device_type = "memory"; reg = <0x80000000 0x10000000>; }; leds { pinctrl-names = "default"; pinctrl-0 = <&user_leds_s0>; compatible = "gpio-leds"; led@2 { label = "beaglebone:green:usr0"; gpios = <&gpio1 21 0>; linux,default-trigger = "heartbeat"; default-state = "off"; }; led@3 { label = "beaglebone:green:usr1"; gpios = <&gpio1 22 0>; linux,default-trigger = "mmc0"; default-state = "off"; }; led@4 { label = "beaglebone:green:usr2"; gpios = <&gpio1 23 0>; linux,default-trigger = "cpu0"; default-state = "off"; }; led@5 { label = "beaglebone:green:usr3"; gpios = <&gpio1 24 0>; linux,default-trigger = "mmc1"; default-state = "off"; }; }; vmmcsd_fixed: fixedregulator@0 { 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 = < 0x54 (0 | 7) 0x58 (((1 << 4)) | 7) 0x5c (0 | 7) 0x60 (((1 << 4)) | 7) >; }; i2c0_pins: pinmux_i2c0_pins { pinctrl-single,pins = < 0x188 (((1 << 5) | (1 << 4)) | 0) 0x18c (((1 << 5) | (1 << 4)) | 0) >; }; i2c2_pins: pinmux_i2c2_pins { pinctrl-single,pins = < 0x178 (((1 << 5) | (1 << 4)) | 3) 0x17c (((1 << 5) | (1 << 4)) | 3) >; }; uart0_pins: pinmux_uart0_pins { pinctrl-single,pins = < 0x170 (((1 << 5) | (1 << 4)) | 0) 0x174 (0 | 0) >; }; clkout2_pin: pinmux_clkout2_pin { pinctrl-single,pins = < 0x1b4 (0 | 3) >; }; cpsw_default: cpsw_default { pinctrl-single,pins = < 0x108 (((1 << 5) | (1 << 3)) | 0) 0x10c (((1 << 5) | (1 << 3)) | 0) 0x110 (((1 << 5) | (1 << 4)) | 0) 0x114 (0 | 0) 0x118 (((1 << 5) | (1 << 4)) | 0) 0x11c (0 | 0) 0x120 (0 | 0) 0x124 (0 | 0) 0x128 (0 | 0) 0x12c (((1 << 5) | (1 << 4)) | 0) 0x130 (((1 << 5) | (1 << 4)) | 0) 0x134 (((1 << 5) | (1 << 4)) | 0) 0x138 (((1 << 5) | (1 << 4)) | 0) 0x13c (((1 << 5) | (1 << 4)) | 0) 0x140 (((1 << 5) | (1 << 4)) | 0) >; }; cpsw_sleep: cpsw_sleep { pinctrl-single,pins = < 0x108 (((1 << 5)) | 7) 0x10c (((1 << 5)) | 7) 0x110 (((1 << 5)) | 7) 0x114 (((1 << 5)) | 7) 0x118 (((1 << 5)) | 7) 0x11c (((1 << 5)) | 7) 0x120 (((1 << 5)) | 7) 0x124 (((1 << 5)) | 7) 0x128 (((1 << 5)) | 7) 0x12c (((1 << 5)) | 7) 0x130 (((1 << 5)) | 7) 0x134 (((1 << 5)) | 7) 0x138 (((1 << 5)) | 7) 0x13c (((1 << 5)) | 7) 0x140 (((1 << 5)) | 7) >; }; davinci_mdio_default: davinci_mdio_default { pinctrl-single,pins = < 0x148 (((1 << 5) | (1 << 4)) | 0 | 0) 0x14c (((1 << 4)) | 0) >; }; davinci_mdio_sleep: davinci_mdio_sleep { pinctrl-single,pins = < 0x148 (((1 << 5)) | 7) 0x14c (((1 << 5)) | 7) >; }; mmc1_pins_default: pinmux_mmc1_pins { pinctrl-single,pins = < 0x0F0 (((1 << 5) | (1 << 4)) | 0) 0x0F4 (((1 << 5) | (1 << 4)) | 0) 0x0F8 (((1 << 5) | (1 << 4)) | 0) 0x0FC (((1 << 5) | (1 << 4)) | 0) 0x100 (((1 << 5) | (1 << 4)) | 0) 0x104 (((1 << 5) | (1 << 4)) | 0) 0x160 (((1 << 5) | (1 << 3)) | 7) >; }; mmc1_pins_sleep: pinmux_mmc1_pins_sleep { pinctrl-single,pins = < 0x0F0 (((1 << 5)) | 7) 0x0F4 (((1 << 5)) | 7) 0x0F8 (((1 << 5)) | 7) 0x0FC (((1 << 5)) | 7) 0x100 (((1 << 5)) | 7) 0x104 (((1 << 5)) | 7) 0x160 (((1 << 5)) | 7) >; }; emmc_pins: pinmux_emmc_pins { pinctrl-single,pins = < 0x80 (((1 << 5) | (1 << 4)) | 2) 0x84 (((1 << 5) | (1 << 4)) | 2) 0x00 (((1 << 5) | (1 << 4)) | 1) 0x04 (((1 << 5) | (1 << 4)) | 1) 0x08 (((1 << 5) | (1 << 4)) | 1) 0x0c (((1 << 5) | (1 << 4)) | 1) 0x10 (((1 << 5) | (1 << 4)) | 1) 0x14 (((1 << 5) | (1 << 4)) | 1) 0x18 (((1 << 5) | (1 << 4)) | 1) 0x1c (((1 << 5) | (1 << 4)) | 1) >; }; }; &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"; }; &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 { # 331 "arch/arm/boot/dts/am335x-bone-common.dtsi" ti,pmic-shutdown-controller; interrupt-parent = <&intc>; interrupts = <7>; regulators { dcdc1_reg: regulator@0 { regulator-name = "vdds_dpr"; regulator-always-on; }; dcdc2_reg: regulator@1 { regulator-name = "vdd_mpu"; regulator-min-microvolt = <925000>; regulator-max-microvolt = <1378000>; regulator-boot-on; regulator-always-on; }; dcdc3_reg: regulator@2 { 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 { pinctrl-names = "default", "sleep"; pinctrl-0 = <&cpsw_default>; pinctrl-1 = <&cpsw_sleep>; slaves = <1>; 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", "sleep"; pinctrl-0 = <&mmc1_pins_default>; pinctrl-1 = <&mmc1_pins_sleep>; cd-gpios = <&gpio0 6 0>; cd-inverted; }; &aes { status = "okay"; }; &sham { status = "okay"; }; &wkup_m3_ipc { ti,scale-data-fw = "am335x-bone-scale-data.bin"; }; &rtc { system-power-controller; }; / { bone_capemgr { compatible = "ti,bone-capemgr"; status = "okay"; nvmem-cells = <&baseboard_data &cape0_data &cape1_data &cape2_data &cape3_data>; nvmem-cell-names = "baseboard", "slot0", "slot1", "slot2", "slot3"; #slots = <4>; baseboardmaps { baseboard_beaglebone: board@0 { board-name = "A335BONE"; compatible-name = "ti,beaglebone"; }; baseboard_beaglebone_black: board@1 { board-name = "A335BNLT"; compatible-name = "ti,beaglebone-black"; }; }; }; }; # 12 "arch/arm/boot/dts/am335x-boneblack-spi0.dts" 2 # 1 "arch/arm/boot/dts/am33xx-overlay-edma-fix.dtsi" 1 # 11 "arch/arm/boot/dts/am33xx-overlay-edma-fix.dtsi" &uart0 { status = "okay"; }; &uart1 { status = "okay"; }; &uart2 { status = "okay"; }; &spi0 { status = "okay"; }; &spi1 { status = "okay"; }; &mcasp0 { status = "okay"; }; &mcasp1 { status = "okay"; }; # 13 "arch/arm/boot/dts/am335x-boneblack-spi0.dts" 2 / { model = "TI AM335x BeagleBone Black"; compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx"; }; &ldo3_reg { regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-always-on; }; &mmc1 { vmmc-supply = <&vmmcsd_fixed>; }; &mmc2 { vmmc-supply = <&vmmcsd_fixed>; pinctrl-names = "default"; pinctrl-0 = <&emmc_pins>; bus-width = <8>; status = "okay"; }; &sgx { status = "okay"; }; &am33xx_pinmux { nxp_hdmi_bonelt_pins: nxp_hdmi_bonelt_pins { pinctrl-single,pins = < 0x1b0 0x03 0xa0 0x08 0xa4 0x08 0xa8 0x08 0xac 0x08 0xb0 0x08 0xb4 0x08 0xb8 0x08 0xbc 0x08 0xc0 0x08 0xc4 0x08 0xc8 0x08 0xcc 0x08 0xd0 0x08 0xd4 0x08 0xd8 0x08 0xdc 0x08 0xe0 0x00 0xe4 0x00 0xe8 0x00 0xec 0x00 >; }; nxp_hdmi_bonelt_off_pins: nxp_hdmi_bonelt_off_pins { pinctrl-single,pins = < 0x1b0 0x03 >; }; mcasp0_pins: mcasp0_pins { pinctrl-single,pins = < 0x1ac (((1 << 5) | (1 << 4)) | 0) 0x19c (0 | 2) 0x194 (((1 << 4)) | 0) 0x190 (0 | 0) 0x06c (0 | 7) >; }; mcasp0_pins_sleep: mcasp0_pins_sleep { pinctrl-single,pins = < 0x1ac (((1 << 5)) | 7) 0x19c (((1 << 5)) | 7) 0x194 (((1 << 5)) | 7) 0x190 (((1 << 5)) | 7) 0x06c (((1 << 5)) | 7) >; }; bb_spi0_pins: pinmux_bb_spi0_pins { pinctrl-single,pins = < 0x150 0x30 0x154 0x30 0x158 0x10 0x15c 0x10 >; }; }; &lcdc { status = "okay"; port { lcdc_0: endpoint@0 { remote-endpoint = <&hdmi_0>; }; }; }; &i2c0 { tda19988 { compatible = "nxp,tda998x"; reg = <0x70>; pinctrl-names = "default", "off"; pinctrl-0 = <&nxp_hdmi_bonelt_pins>; pinctrl-1 = <&nxp_hdmi_bonelt_off_pins>; port { hdmi_0: endpoint@0 { remote-endpoint = <&lcdc_0>; }; }; }; }; &mcasp0 { pinctrl-names = "default", "sleep"; pinctrl-0 = <&mcasp0_pins>; pinctrl-1 = <&mcasp0_pins_sleep>; status = "okay"; op-mode = <0>; tdm-slots = <2>; serial-dir = < 0 0 1 0 >; tx-num-evt = <1>; rx-num-evt = <1>; }; &spi0 { pinctrl-names = "default"; pinctrl-0 = <&bb_spi0_pins>; status = "okay"; channel@0 { compatible = "spidev"; spi-max-frequency = <16000000>; reg = <0>; spi-cpha; }; channel@1 { compatible = "spidev"; spi-max-frequency = <16000000>; reg = <1>; }; }; / { clk_mcasp0_fixed: clk_mcasp0_fixed { #clock-cells = <0>; compatible = "fixed-clock"; clock-frequency = <24576000>; }; clk_mcasp0: clk_mcasp0 { #clock-cells = <0>; compatible = "gpio-gate-clock"; clocks = <&clk_mcasp0_fixed>; enable-gpios = <&gpio1 27 0>; }; hdmi_audio: hdmi_audio@0 { compatible = "linux,hdmi-audio"; status = "okay"; }; sound { compatible = "ti,beaglebone-black-audio"; ti,model = "TI BeagleBone Black"; ti,audio-codec = <&hdmi_audio>; ti,mcasp-controller = <&mcasp0>; ti,audio-routing = "HDMI Out", "TX"; clocks = <&clk_mcasp0>; clock-names = "mclk"; }; };