0001 // SPDX-License-Identifier: GPL-2.0-only
0002
0003 / {
0004 gpio_keys {
0005 compatible = "gpio-keys";
0006 pinctrl-names = "default";
0007 pinctrl-0 = <&gpio_key_pins>;
0008
0009 sysboot2 {
0010 label = "gpio3";
0011 gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; /* gpio_111 / uP_GPIO_3 */
0012 linux,code = <BTN_0>;
0013 wakeup-source;
0014 };
0015 };
0016
0017 sound {
0018 compatible = "ti,omap-twl4030";
0019 ti,model = "omap3logic";
0020 ti,mcbsp = <&mcbsp2>;
0021 };
0022
0023 leds {
0024 compatible = "gpio-leds";
0025 pinctrl-names = "default";
0026 pinctrl-0 = <&led_pins &led_pins_wkup>;
0027
0028 led1 {
0029 label = "led1";
0030 gpios = <&gpio5 5 GPIO_ACTIVE_LOW>; /* gpio133 */
0031 linux,default-trigger = "cpu0";
0032 };
0033
0034 led2 {
0035 label = "led2";
0036 gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; /* gpio11 */
0037 linux,default-trigger = "none";
0038 };
0039 };
0040 };
0041
0042 &vaux1 {
0043 regulator-min-microvolt = <3000000>;
0044 regulator-max-microvolt = <3000000>;
0045 };
0046
0047 &vaux4 {
0048 regulator-min-microvolt = <1800000>;
0049 regulator-max-microvolt = <1800000>;
0050 };
0051
0052 &mcbsp2 {
0053 status = "okay";
0054 pinctrl-names = "default";
0055 pinctrl-0 = <&mcbsp2_pins>;
0056 };
0057
0058 &charger {
0059 ti,bb-uvolt = <3200000>;
0060 ti,bb-uamp = <150>;
0061 };
0062
0063 &gpmc {
0064 ranges = <0 0 0x30000000 0x1000000 /* CS0: 16MB for NAND */
0065 1 0 0x2c000000 0x1000000 /* CS1: 16MB for LAN9221 */
0066 2 0 0x10000000 0x2000000>; /* CS2: 32MB for NOR */
0067
0068 ethernet@gpmc {
0069 pinctrl-names = "default";
0070 pinctrl-0 = <&lan9221_pins>;
0071 interrupt-parent = <&gpio5>;
0072 interrupts = <24 IRQ_TYPE_LEVEL_LOW>; /* gpio_152 */
0073 reg = <1 0 0xff>;
0074 };
0075 };
0076
0077 &vpll2 {
0078 regulator-always-on;
0079 };
0080
0081 &dss {
0082 status = "okay";
0083 vdds_dsi-supply = <&vpll2>;
0084 vdda_video-supply = <&video_reg>;
0085 pinctrl-names = "default";
0086 pinctrl-0 = <&dss_dpi_pins1>;
0087 port {
0088 dpi_out: endpoint {
0089 remote-endpoint = <&lcd_in>;
0090 data-lines = <16>;
0091 };
0092 };
0093 };
0094
0095 / {
0096 aliases {
0097 display0 = &lcd0;
0098 };
0099
0100 video_reg: video_reg {
0101 compatible = "regulator-fixed";
0102 regulator-name = "fixed-supply";
0103 regulator-min-microvolt = <3300000>;
0104 regulator-max-microvolt = <3300000>;
0105 };
0106
0107 lcd0: display {
0108 /* This isn't the exact LCD, but the timings meet spec */
0109 compatible = "logicpd,type28";
0110 pinctrl-names = "default";
0111 pinctrl-0 = <&lcd_enable_pin>;
0112 backlight = <&bl>;
0113 enable-gpios = <&gpio5 27 GPIO_ACTIVE_HIGH>;
0114 port {
0115 lcd_in: endpoint {
0116 remote-endpoint = <&dpi_out>;
0117 };
0118 };
0119 };
0120
0121 bl: backlight {
0122 compatible = "pwm-backlight";
0123 pinctrl-names = "default";
0124 pinctrl-0 = <&backlight_pins>;
0125 pwms = <&twl_pwm 0 5000000>;
0126 brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
0127 default-brightness-level = <7>;
0128 enable-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; /* gpio_8 */
0129 };
0130 };
0131
0132 &mmc1 {
0133 interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
0134 pinctrl-names = "default";
0135 pinctrl-0 = <&mmc1_pins>;
0136 wp-gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>; /* gpio_126 */
0137 cd-gpios = <&gpio4 14 GPIO_ACTIVE_LOW>; /* gpio_110 */
0138 vmmc-supply = <&vmmc1>;
0139 bus-width = <4>;
0140 cap-power-off-card;
0141 };
0142
0143 &omap3_pmx_core {
0144 gpio_key_pins: pinmux_gpio_key_pins {
0145 pinctrl-single,pins = <
0146 OMAP3_CORE1_IOPAD(0x212e, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_xclkb.gpio_111 / uP_GPIO_3*/
0147 >;
0148 };
0149
0150 led_pins: pinmux_led_pins {
0151 pinctrl-single,pins = <
0152 OMAP3_CORE1_IOPAD(0x215e, PIN_OUTPUT_PULLUP | MUX_MODE4) /* sdmmc2_dat1.gpio_133 / uP_GPIO_0 */
0153 >;
0154 };
0155
0156 lan9221_pins: pinmux_lan9221_pins {
0157 pinctrl-single,pins = <
0158 OMAP3_CORE1_IOPAD(0x2184, PIN_INPUT_PULLUP | MUX_MODE4) /* mcbsp4_clkx.gpio_152 */
0159 >;
0160 };
0161
0162 mmc1_pins: pinmux_mmc1_pins {
0163 pinctrl-single,pins = <
0164 OMAP3_CORE1_IOPAD(0x2144, PIN_OUTPUT | MUX_MODE0) /* sdmmc1_clk.sdmmc1_clk */
0165 OMAP3_CORE1_IOPAD(0x2146, PIN_INPUT | MUX_MODE0) /* sdmmc1_cmd.sdmmc1_cmd */
0166 OMAP3_CORE1_IOPAD(0x2148, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat0.sdmmc1_dat0 */
0167 OMAP3_CORE1_IOPAD(0x214a, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat1.sdmmc1_dat1 */
0168 OMAP3_CORE1_IOPAD(0x214c, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat2.sdmmc1_dat2 */
0169 OMAP3_CORE1_IOPAD(0x214e, PIN_INPUT | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
0170 OMAP3_CORE1_IOPAD(0x2132, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_strobe.gpio_126 */
0171 OMAP3_CORE1_IOPAD(0x212c, PIN_INPUT_PULLUP | MUX_MODE4) /* cam_d11.gpio_110 */
0172 >;
0173 };
0174
0175 lcd_enable_pin: pinmux_lcd_enable_pin {
0176 pinctrl-single,pins = <
0177 OMAP3_CORE1_IOPAD(0x218a, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* mcbsp4_fs.gpio_155 */
0178 >;
0179 };
0180
0181 dss_dpi_pins1: pinmux_dss_dpi_pins1 {
0182 pinctrl-single,pins = <
0183 OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_pclk.dss_pclk */
0184 OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_hsync.dss_hsync */
0185 OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_vsync.dss_vsync */
0186 OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_acbias.dss_acbias */
0187
0188 OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data0.dss_data0 */
0189 OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data1.dss_data1 */
0190 OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data2.dss_data2 */
0191 OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data3.dss_data3 */
0192 OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data4.dss_data4 */
0193 OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data5.dss_data5 */
0194 OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data6.dss_data6 */
0195 OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data7.dss_data7 */
0196 OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data8.dss_data8 */
0197 OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data9.dss_data9 */
0198 OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data10.dss_data10 */
0199 OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data11.dss_data11 */
0200 OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data12.dss_data12 */
0201 OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data13.dss_data13 */
0202 OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data14.dss_data14 */
0203 OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT_PULLDOWN | PIN_OFF_OUTPUT_LOW | MUX_MODE0) /* dss_data15.dss_data15 */
0204 >;
0205 };
0206 };
0207
0208 &omap3_pmx_wkup {
0209 led_pins_wkup: pinmux_led_pins_wkup {
0210 pinctrl-single,pins = <
0211 OMAP3_WKUP_IOPAD(0x2a24, PIN_OUTPUT_PULLUP | MUX_MODE4) /* jtag_emu0.gpio_11 / uP_GPIO_1 */
0212 >;
0213 };
0214
0215 backlight_pins: pinmux_backlight_pins {
0216 pinctrl-single,pins = <
0217 OMAP3_WKUP_IOPAD(0x2a16, PIN_OUTPUT | PIN_OFF_OUTPUT_LOW | MUX_MODE4) /* sys_boot6.gpio_8 */
0218 >;
0219 };
0220 };
0221
0222
0223 &uart1 {
0224 interrupts-extended = <&intc 72 &omap3_pmx_core OMAP3_UART1_RX>;
0225 };
0226
0227 /* Wired to the tps65950 on the SOM, only the USB connector is on the devkit */
0228 &usb_otg_hs {
0229 pinctrl-names = "default";
0230 pinctrl-0 = <&hsusb_otg_pins>;
0231 interface-type = <0>;
0232 usb-phy = <&usb2_phy>;
0233 phys = <&usb2_phy>;
0234 phy-names = "usb2-phy";
0235 mode = <3>;
0236 power = <50>;
0237 };