/* * Copyright (C) 2015 CompuLab, Ltd. - http://www.compulab.co.il/ * * 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/; #include #include #include #include "am4372.dtsi" / { model = "CompuLab CM-T43"; compatible = "compulab,am437x-cm-t43", "ti,am4372", "ti,am43"; leds { compatible = "gpio-leds"; ledb { label = "cm-t43:green"; gpios = <&gpio0 24 GPIO_ACTIVE_HIGH>; linux,default-trigger = "heartbeat"; }; }; }; &am43xx_pinmux { pinctrl-names = "default"; pinctrl-0 = <&cm_t43_led_pins>; cm_t43_led_pins: cm_t43_led_pins { pinctrl-single,pins = < AM4372_IOPAD(0xa78, MUX_MODE7) >; }; i2c0_pins: i2c0_pins { pinctrl-single,pins = < AM4372_IOPAD(0x988, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_sda.i2c0_sda */ AM4372_IOPAD(0x98c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* i2c0_scl.i2c0_scl */ >; }; spi0_pins: pinmux_spi0_pins { pinctrl-single,pins = < AM4372_IOPAD(0x950, PIN_INPUT | MUX_MODE0) /* spi0_sclk.spi0_sclk */ AM4372_IOPAD(0x954, PIN_INPUT | MUX_MODE0) /* spi0_d0.spi0_d0 */ AM4372_IOPAD(0x958, PIN_OUTPUT | MUX_MODE0) /* spi0_d1.spi0_d1 */ AM4372_IOPAD(0x95C, PIN_OUTPUT | MUX_MODE0) /* spi0_cs0.spi0_cs0 */ >; }; nand_flash_x8: nand_flash_x8 { pinctrl-single,pins = < AM4372_IOPAD(0x800, PIN_INPUT | PULL_DISABLE | MUX_MODE0) AM4372_IOPAD(0x804, PIN_INPUT | PULL_DISABLE | MUX_MODE0) AM4372_IOPAD(0x808, PIN_INPUT | PULL_DISABLE | MUX_MODE0) AM4372_IOPAD(0x80c, PIN_INPUT | PULL_DISABLE | MUX_MODE0) AM4372_IOPAD(0x810, PIN_INPUT | PULL_DISABLE | MUX_MODE0) AM4372_IOPAD(0x814, PIN_INPUT | PULL_DISABLE | MUX_MODE0) AM4372_IOPAD(0x818, PIN_INPUT | PULL_DISABLE | MUX_MODE0) AM4372_IOPAD(0x81c, PIN_INPUT | PULL_DISABLE | MUX_MODE0) AM4372_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0) AM4372_IOPAD(0x874, PIN_OUTPUT_PULLUP | MUX_MODE0) AM4372_IOPAD(0x87c, PIN_OUTPUT_PULLUP | MUX_MODE0) AM4372_IOPAD(0x898, PIN_OUTPUT_PULLDOWN | MUX_MODE0) AM4372_IOPAD(0x894, PIN_OUTPUT_PULLDOWN | MUX_MODE0) AM4372_IOPAD(0x890, PIN_OUTPUT_PULLDOWN | MUX_MODE0) AM4372_IOPAD(0x89c, PIN_OUTPUT_PULLDOWN | MUX_MODE0) >; }; }; &gpmc { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&nand_flash_x8>; ranges = <0 0 0x08000000 0x1000000>; nand@0,0 { reg = <0 0 0>; ti,nand-ecc-opt = "bch8"; ti,elm-id = <&elm>; nand-bus-width = <8>; gpmc,device-width = <1>; gpmc,sync-clk-ps = <0>; gpmc,cs-on-ns = <0>; gpmc,cs-rd-off-ns = <44>; gpmc,cs-wr-off-ns = <44>; gpmc,adv-on-ns = <6>; gpmc,adv-rd-off-ns = <34>; gpmc,adv-wr-off-ns = <44>; gpmc,we-on-ns = <0>; gpmc,we-off-ns = <40>; gpmc,oe-on-ns = <0>; gpmc,oe-off-ns = <54>; gpmc,access-ns = <64>; gpmc,rd-cycle-ns = <82>; gpmc,wr-cycle-ns = <82>; gpmc,wait-on-read = "true"; gpmc,wait-on-write = "true"; gpmc,bus-turnaround-ns = <0>; gpmc,cycle2cycle-delay-ns = <0>; gpmc,clk-activation-ns = <0>; gpmc,wait-monitoring-ns = <0>; gpmc,wr-access-ns = <40>; gpmc,wr-data-mux-bus-ns = <0>; gpmc,wait-pin = <0>; #address-cells = <1>; #size-cells = <1>; /* MTD partition table */ partition@0 { label = "kernel"; reg = <0x0 0x00980000>; }; partition@980000 { label = "dtb"; reg = <0x00980000 0x00080000>; }; partition@a00000 { label = "rootfs"; reg = <0x00a00000 0x0>; }; }; }; &i2c0 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins>; clock-frequency = <100000>; tps65218: tps65218@24 { compatible = "ti,tps65218"; reg = <0x24>; interrupts = ; /* NMIn */ interrupt-parent = <&gic>; interrupt-controller; #interrupt-cells = <2>; dcdc1: regulator-dcdc1 { compatible = "ti,tps65218-dcdc1"; regulator-name = "vdd_core"; regulator-min-microvolt = <912000>; regulator-max-microvolt = <1144000>; regulator-boot-on; regulator-always-on; }; dcdc2: regulator-dcdc2 { compatible = "ti,tps65218-dcdc2"; regulator-name = "vdd_mpu"; regulator-min-microvolt = <912000>; regulator-max-microvolt = <1378000>; regulator-boot-on; regulator-always-on; }; dcdc3: regulator-dcdc3 { compatible = "ti,tps65218-dcdc3"; regulator-name = "vdcdc3"; regulator-suspend-enable; regulator-min-microvolt = <1500000>; regulator-max-microvolt = <1500000>; regulator-boot-on; regulator-always-on; }; dcdc5: regulator-dcdc5 { compatible = "ti,tps65218-dcdc5"; regulator-name = "v1_0bat"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1000000>; regulator-boot-on; regulator-always-on; }; dcdc6: regulator-dcdc6 { compatible = "ti,tps65218-dcdc6"; regulator-name = "v1_8bat"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-boot-on; regulator-always-on; }; ldo1: regulator-ldo1 { compatible = "ti,tps65218-ldo1"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; regulator-boot-on; regulator-always-on; }; }; eeprom_module: at24@50 { compatible = "atmel,24c02"; reg = <0x50>; pagesize = <16>; }; }; &gpio0 { status = "okay"; }; &gpio1 { status = "okay"; }; &gpio2 { status = "okay"; }; &gpio3 { status = "okay"; }; &gpio4 { status = "okay"; }; &gpio5 { status = "okay"; }; &spi0 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&spi0_pins>; dmas = <&edma 16 &edma 17>; dma-names = "tx0", "rx0"; flash: w25q64cvzpig@0 { #address-cells = <1>; #size-cells = <1>; compatible = "jedec,spi-nor"; reg = <0>; spi-max-frequency = <20000000>; partition@0 { label = "uboot"; reg = <0x0 0xc0000>; }; partition@c0000 { label = "uboot environment"; reg = <0xc0000 0x40000>; }; partition@100000 { label = "reserved"; reg = <0x100000 0x100000>; }; }; }; &elm { status = "okay"; }; &uart0 { status = "okay"; }; &cpu { cpu0-supply = <&dcdc2>; operating-points = <1000000 1330000>, <800000 1260000>, <720000 1200000>, <600000 1100000>, <300000 950000>; };