// SPDX-License-Identifier: GPL-2.0+ // // Copyright 2012 Freescale Semiconductor, Inc. /dts-v1/; #include "imx28.dtsi" / { model = "SHARP Brain PW-A7200"; compatible = "sharp,pw-a7200", "fsl,imx28"; memory@40000000 { device_type = "memory"; reg = <0x40000000 0x08000000>; }; reg_3p3v: regulator-3p3v { compatible = "regulator-fixed"; regulator-name = "3P3V"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; reg_vddio_sd0: regulator-vddio-sd0 { compatible = "regulator-fixed"; regulator-name = "vddio-sd0"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; gpio = <&gpio3 28 0>; }; reg_fec_3v3: regulator-fec-3v3 { compatible = "regulator-fixed"; regulator-name = "fec-3v3"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; gpio = <&gpio2 15 0>; }; reg_usb0_vbus: regulator-usb0-vbus { compatible = "regulator-fixed"; regulator-name = "usb0_vbus"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; gpio = <&gpio3 9 0>; enable-active-high; }; reg_lcd_3v3: regulator-lcd-3v3 { compatible = "regulator-fixed"; regulator-name = "lcd-3v3"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; gpio = <&gpio3 30 0>; enable-active-high; }; reg_can_3v3: regulator-can-3v3 { compatible = "regulator-fixed"; regulator-name = "can-3v3"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; gpio = <&gpio2 13 0>; enable-active-high; }; reg_lcd_5v: regulator-lcd-5v { compatible = "regulator-fixed"; regulator-name = "lcd-5v"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; }; apb@80000000 { apbh@80000000 { ssp0: spi@80010000 { compatible = "fsl,imx28-mmc"; pinctrl-names = "default"; pinctrl-0 = <&mmc0_8bit_pins_a &mmc0_cd_cfg &mmc0_sck_cfg>; bus-width = <8>; wp-gpios = <&gpio2 12 0>; vmmc-supply = <®_vddio_sd0>; status = "okay"; }; ssp1: spi@80012000 { compatible = "fsl,imx28-mmc"; pinctrl-names = "default"; pinctrl-0 = <&mmc1_4bit_pins_a &mmc1_cd_cfg &mmc1_sck_cfg>; bus-width = <4>; status = "okay"; }; pinctrl@80018000 { pinctrl-names = "default"; pinctrl-0 = <&hog_pins_3v3_pullup &hog_pins_3v3_nopull &hog_pins_1v8_nopull>; hog_pins_3v3_pullup: hog@0 { reg = <0>; fsl,pinmux-ids = < MX28_PAD_GPMI_CLE__GPIO_0_27 >; fsl,drive-strength = ; fsl,voltage = ; fsl,pull-up = ; }; hog_pins_3v3_nopull: hog@1 { reg = <1>; fsl,pinmux-ids = < MX28_PAD_SSP1_CMD__GPIO_2_13 MX28_PAD_SSP1_DATA3__GPIO_2_15 MX28_PAD_ENET0_RX_CLK__GPIO_4_13 MX28_PAD_SSP1_SCK__GPIO_2_12 MX28_PAD_PWM3__GPIO_3_28 MX28_PAD_AUART2_RX__GPIO_3_8 MX28_PAD_AUART2_TX__GPIO_3_9 >; fsl,drive-strength = ; fsl,voltage = ; fsl,pull-up = ; }; hog_pins_1v8_nopull: hog@2 { reg = <2>; fsl,pinmux-ids = < MX28_PAD_GPMI_ALE__GPIO_0_26 >; fsl,drive-strength = ; fsl,voltage = ; fsl,pull-up = ; }; pwm_pins: pwm@0 { reg = <0>; fsl,pinmux-ids = < MX28_PAD_AUART1_RX__PWM_0 MX28_PAD_AUART1_TX__PWM_1 MX28_PAD_PWM4__PWM_4 MX28_PAD_SAIF1_SDATA0__GPIO_3_26 >; fsl,drive-strength = ; fsl,voltage = ; fsl,pull-up = ; }; lcdif_pins: lcdif@0 { reg = <0>; fsl,pinmux-ids = < MX28_PAD_LCD_D00__LCD_D0 MX28_PAD_LCD_D01__LCD_D1 MX28_PAD_LCD_D02__LCD_D2 MX28_PAD_LCD_D03__LCD_D3 MX28_PAD_LCD_D04__LCD_D4 MX28_PAD_LCD_D05__LCD_D5 MX28_PAD_LCD_D06__LCD_D6 MX28_PAD_LCD_D07__LCD_D7 MX28_PAD_LCD_D08__LCD_D8 MX28_PAD_LCD_D09__LCD_D9 MX28_PAD_LCD_D10__LCD_D10 MX28_PAD_LCD_D11__LCD_D11 MX28_PAD_LCD_D12__LCD_D12 MX28_PAD_LCD_D13__LCD_D13 MX28_PAD_LCD_D14__LCD_D14 MX28_PAD_LCD_D15__LCD_D15 MX28_PAD_LCD_RD_E__LCD_RD_E MX28_PAD_LCD_WR_RWN__LCD_WR_RWN MX28_PAD_LCD_RS__LCD_RS MX28_PAD_LCD_CS__LCD_CS MX28_PAD_LCD_RESET__LCD_RESET >; fsl,drive-strength = ; fsl,voltage = ; fsl,pull-up = ; }; }; brainlcd: lcdif@80030000 { compatible = "sharp,brainlcd"; pinctrl-names = "default"; pinctrl-0 = <&lcdif_pins>; status = "disabled"; }; }; apbx@80040000 { saif0: saif@80042000 { pinctrl-names = "default"; pinctrl-0 = <&saif0_pins_a>; status = "okay"; }; saif1: saif@80046000 { status = "disabled"; }; lradc@80050000 { status = "okay"; fsl,lradc-touchscreen-wires = <4>; fsl,ave-ctrl = <4>; fsl,ave-delay = <2>; fsl,settling = <10>; }; mxs_rtc: rtc@80056000 { status = "disabled"; }; i2c0: i2c@80058000 { pinctrl-names = "default"; pinctrl-0 = <&i2c0_pins_a>; status = "okay"; sgtl5000: codec@a { compatible = "fsl,sgtl5000"; reg = <0x0a>; #sound-dai-cells = <0>; VDDA-supply = <®_3p3v>; VDDIO-supply = <®_3p3v>; clocks = <&saif0>; }; keyboard_i2c: keyboard_i2c@28 { status = "disabled"; compatible = "sharp,brain-kbd-i2c"; reg = <0x28>; interrupt-parent = <&gpio4>; interrupts = <2 4>; }; lcd_touchscreen_i2c: sx8650@48 { compatible = "semtech,sx8650"; reg = <0x48>; interrupt-parent = <&gpio3>; interrupts = <1 2>; }; }; i2c1: i2c@8005a000 { status = "disabled"; }; pwm: pwm@80064000 { pinctrl-names = "default"; pinctrl-0 = <&pwm_pins>; status = "okay"; }; duart: serial@80074000 { pinctrl-names = "default"; pinctrl-0 = <&duart_pins_a>; status = "okay"; }; usbphy0: usbphy@8007c000 { status = "okay"; }; usbphy1: usbphy@8007e000 { status = "okay"; }; }; }; ahb@80080000 { usb0: usb@80080000 { pinctrl-names = "default"; pinctrl-0 = <&usb0_id_pins_a>; vbus-supply = <®_usb0_vbus>; dr_mode = "host"; status = "okay"; }; }; sound { compatible = "fsl,imx28-evk-sgtl5000", "fsl,mxs-audio-sgtl5000"; model = "imx28-evk-sgtl5000"; saif-controllers = <&saif0 &saif1>; audio-codec = <&sgtl5000>; }; backlight_display: backlight { compatible = "pwm-backlight"; pwms = <&pwm 0 50000>, <&pwm 1 50000>; brightness-levels = <0 4 8 16 32 64 128 255>; default-brightness-level = <4>; //Set 4 for identification on probing }; buzzer_cold: buzzer_cold { compatible = "regulator-fixed"; regulator-name = "fixed-supply"; regulator-max-microvolt = <3300000>; regulator-min-microvolt = <3300000>; gpios = <&gpio3 26 GPIO_ACTIVE_LOW>; regulator-always-on; }; buzzer: buzzer { compatible = "pwm-beeper"; pwms = <&pwm 4 50000>; amp-supply = <&buzzer_cold>; }; };