Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003  * Device tree file for Phytec PCM-947 carrier board
0004  * Copyright (C) 2017 PHYTEC Messtechnik GmbH
0005  * Author: Wadim Egorov <w.egorov@phytec.de>
0006  */
0007 
0008 /dts-v1/;
0009 
0010 #include <dt-bindings/input/input.h>
0011 #include <dt-bindings/leds/leds-pca9532.h>
0012 #include "rk3288-phycore-som.dtsi"
0013 
0014 / {
0015         model = "Phytec RK3288 PCM-947";
0016         compatible = "phytec,rk3288-pcm-947", "phytec,rk3288-phycore-som", "rockchip,rk3288";
0017 
0018         user_buttons: user-buttons {
0019                 compatible = "gpio-keys";
0020                 pinctrl-names = "default";
0021                 pinctrl-0 = <&user_button_pins>;
0022 
0023                 button-0 {
0024                         label = "home";
0025                         linux,code = <KEY_HOME>;
0026                         gpios = <&gpio8 0 GPIO_ACTIVE_HIGH>;
0027                         wakeup-source;
0028                 };
0029 
0030                 button-1 {
0031                         label = "menu";
0032                         linux,code = <KEY_MENU>;
0033                         gpios = <&gpio8 3 GPIO_ACTIVE_HIGH>;
0034                         wakeup-source;
0035                 };
0036         };
0037 
0038         vcc_host0_5v: usb-host0-regulator {
0039                 compatible = "regulator-fixed";
0040                 gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>;
0041                 pinctrl-names = "default";
0042                 pinctrl-0 = <&host0_vbus_drv>;
0043                 regulator-name = "vcc_host0_5v";
0044                 regulator-min-microvolt = <5000000>;
0045                 regulator-max-microvolt = <5000000>;
0046                 regulator-always-on;
0047                 vin-supply = <&vdd_in_otg_out>;
0048         };
0049 
0050         vcc_host1_5v: usb-host1-regulator {
0051                 compatible = "regulator-fixed";
0052                 gpio = <&gpio2 0 GPIO_ACTIVE_HIGH>;
0053                 pinctrl-names = "default";
0054                 pinctrl-0 = <&host1_vbus_drv>;
0055                 regulator-name = "vcc_host1_5v";
0056                 regulator-min-microvolt = <5000000>;
0057                 regulator-max-microvolt = <5000000>;
0058                 regulator-always-on;
0059                 vin-supply = <&vdd_in_otg_out>;
0060         };
0061 
0062         vcc_otg_5v: usb-otg-regulator {
0063                 compatible = "regulator-fixed";
0064                 gpio = <&gpio2 12 GPIO_ACTIVE_HIGH>;
0065                 pinctrl-names = "default";
0066                 pinctrl-0 = <&otg_vbus_drv>;
0067                 regulator-name = "vcc_otg_5v";
0068                 regulator-min-microvolt = <5000000>;
0069                 regulator-max-microvolt = <5000000>;
0070                 regulator-always-on;
0071                 vin-supply = <&vdd_in_otg_out>;
0072         };
0073 };
0074 
0075 &gmac {
0076         status = "okay";
0077 };
0078 
0079 &hdmi {
0080         status = "okay";
0081 };
0082 
0083 &i2c1 {
0084         status = "okay";
0085 
0086         touchscreen@44 {
0087                 compatible = "st,stmpe811";
0088                 reg = <0x44>;
0089         };
0090 
0091         adc@64 {
0092                 compatible = "maxim,max1037";
0093                 reg = <0x64>;
0094         };
0095 
0096         i2c_rtc: rtc@68 {
0097                 compatible = "rv4162";
0098                 reg = <0x68>;
0099                 pinctrl-names = "default";
0100                 pinctrl-0 = <&i2c_rtc_int>;
0101                 interrupt-parent = <&gpio5>;
0102                 interrupts = <10 0>;
0103         };
0104 };
0105 
0106 &i2c3 {
0107         status = "okay";
0108 
0109         i2c_eeprom_cb: eeprom@51 {
0110                 compatible = "atmel,24c32";
0111                 reg = <0x51>;
0112                 pagesize = <32>;
0113         };
0114 };
0115 
0116 &i2c4 {
0117         status = "okay";
0118 
0119         /* PCA9533 - 4-bit LED dimmer */
0120         leddim: leddimmer@62 {
0121                 compatible = "nxp,pca9533";
0122                 reg = <0x62>;
0123 
0124                 led1 {
0125                         label = "red:user1";
0126                         linux,default-trigger = "none";
0127                         type = <PCA9532_TYPE_LED>;
0128                 };
0129 
0130                 led2 {
0131                         label = "green:user2";
0132                         linux,default-trigger = "none";
0133                         type = <PCA9532_TYPE_LED>;
0134                 };
0135 
0136                 led3 {
0137                         label = "blue:user3";
0138                         linux,default-trigger = "none";
0139                         type = <PCA9532_TYPE_LED>;
0140                 };
0141 
0142                 led4 {
0143                         label = "red:user4";
0144                         linux,default-trigger = "none";
0145                         type = <PCA9532_TYPE_LED>;
0146                 };
0147         };
0148 };
0149 
0150 &i2c5 {
0151         status = "okay";
0152 };
0153 
0154 &pinctrl {
0155         pcfg_pull_up_drv_12ma: pcfg-pull-up-drv-12ma {
0156                 bias-pull-up;
0157                 drive-strength = <12>;
0158         };
0159 
0160         buttons {
0161                 user_button_pins: user-button-pins {
0162                         /* button 1 */
0163                         rockchip,pins = <8 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>,
0164                         /* button 2 */
0165                                         <8 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>;
0166                 };
0167         };
0168 
0169         rv4162 {
0170                 i2c_rtc_int: i2c-rtc-int {
0171                         rockchip,pins = <5 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
0172                 };
0173         };
0174 
0175         sdmmc {
0176                 /*
0177                  * Default drive strength isn't enough to achieve even
0178                  * high-speed mode on pcm-947 board so bump up to 12 mA.
0179                  */
0180                 sdmmc_bus4: sdmmc-bus4 {
0181                         rockchip,pins = <6 RK_PC0 1 &pcfg_pull_up_drv_12ma>,
0182                                         <6 RK_PC1 1 &pcfg_pull_up_drv_12ma>,
0183                                         <6 RK_PC2 1 &pcfg_pull_up_drv_12ma>,
0184                                         <6 RK_PC3 1 &pcfg_pull_up_drv_12ma>;
0185                 };
0186 
0187                 sdmmc_clk: sdmmc-clk {
0188                         rockchip,pins = <6 RK_PC4 1 &pcfg_pull_none_12ma>;
0189                 };
0190 
0191                 sdmmc_cmd: sdmmc-cmd {
0192                         rockchip,pins = <6 RK_PC5 1 &pcfg_pull_up_drv_12ma>;
0193                 };
0194 
0195                 sdmmc_pwr: sdmmc-pwr {
0196                         rockchip,pins = <7 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
0197                 };
0198         };
0199 
0200         touchscreen {
0201                 ts_irq_pin: ts-irq-pin {
0202                         rockchip,pins = <5 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
0203                 };
0204         };
0205 
0206         usb_host {
0207                 host0_vbus_drv: host0-vbus-drv {
0208                         rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
0209                 };
0210 
0211                 host1_vbus_drv: host1-vbus-drv {
0212                         rockchip,pins = <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
0213                 };
0214         };
0215 
0216         usb_otg {
0217                 otg_vbus_drv: otg-vbus-drv {
0218                         rockchip,pins = <2 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
0219                 };
0220         };
0221 };
0222 
0223 &sdmmc {
0224         bus-width = <4>;
0225         cap-mmc-highspeed;
0226         cap-sd-highspeed;
0227         card-detect-delay = <200>;
0228         disable-wp;
0229         pinctrl-names = "default";
0230         pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
0231         sd-uhs-sdr12;
0232         sd-uhs-sdr25;
0233         sd-uhs-sdr50;
0234         sd-uhs-sdr104;
0235         vmmc-supply = <&vdd_sd>;
0236         vqmmc-supply = <&vdd_io_sd>;
0237         status = "okay";
0238 };
0239 
0240 &uart0 {
0241         pinctrl-names = "default";
0242         pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
0243         status = "okay";
0244 };
0245 
0246 &uart2 {
0247         status = "okay";
0248 };
0249 
0250 &usbphy {
0251         status = "okay";
0252 };
0253 
0254 &usb_host0_ehci {
0255         status = "okay";
0256 };
0257 
0258 &usb_host1 {
0259         status = "okay";
0260 };
0261 
0262 &usb_otg {
0263         status = "okay";
0264 };