1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2013 MundoReader S.L. 4 * Author: Heiko Stuebner <heiko@sntech.de> 5 */ 6 7/dts-v1/; 8#include <dt-bindings/input/input.h> 9#include "rk3066a.dtsi" 10 11/ { 12 model = "bq Curie 2"; 13 compatible = "mundoreader,bq-curie2", "rockchip,rk3066a"; 14 15 aliases { 16 mmc0 = &mmc0; 17 mmc1 = &mmc1; 18 }; 19 20 memory@60000000 { 21 device_type = "memory"; 22 reg = <0x60000000 0x40000000>; 23 }; 24 25 vdd_log: vdd-log { 26 compatible = "pwm-regulator"; 27 pwms = <&pwm3 0 1000>; 28 regulator-name = "vdd_log"; 29 regulator-min-microvolt = <1200000>; 30 regulator-max-microvolt = <1200000>; 31 regulator-always-on; 32 voltage-table = <1000000 100>, 33 <1200000 42>; 34 status = "okay"; 35 }; 36 37 vcc_sd0: fixed-regulator { 38 compatible = "regulator-fixed"; 39 regulator-name = "sdmmc-supply"; 40 regulator-min-microvolt = <3000000>; 41 regulator-max-microvolt = <3000000>; 42 gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>; 43 startup-delay-us = <100000>; 44 vin-supply = <&vcc_io>; 45 }; 46 47 gpio-keys { 48 compatible = "gpio-keys"; 49 autorepeat; 50 51 power { 52 gpios = <&gpio6 RK_PA2 GPIO_ACTIVE_LOW>; /* GPIO6_A2 */ 53 linux,code = <KEY_POWER>; 54 label = "GPIO Key Power"; 55 linux,input-type = <1>; 56 wakeup-source; 57 debounce-interval = <100>; 58 }; 59 volume-down { 60 gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_LOW>; /* GPIO4_C5 */ 61 linux,code = <KEY_VOLUMEDOWN>; 62 label = "GPIO Key Vol-"; 63 linux,input-type = <1>; 64 debounce-interval = <100>; 65 }; 66 /* VOL+ comes somehow thru the ADC */ 67 }; 68}; 69 70&cpu0 { 71 cpu-supply = <&vdd_arm>; 72}; 73 74&cpu1 { 75 cpu-supply = <&vdd_arm>; 76}; 77 78&i2c1 { 79 status = "okay"; 80 clock-frequency = <400000>; 81 82 tps: tps@2d { 83 reg = <0x2d>; 84 85 interrupt-parent = <&gpio6>; 86 interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>; 87 88 vcc5-supply = <&vcc_io>; 89 vcc6-supply = <&vcc_io>; 90 91 regulators { 92 vcc_rtc: regulator@0 { 93 regulator-name = "vcc_rtc"; 94 regulator-always-on; 95 }; 96 97 vcc_io: regulator@1 { 98 regulator-name = "vcc_io"; 99 regulator-always-on; 100 }; 101 102 vdd_arm: regulator@2 { 103 regulator-name = "vdd_arm"; 104 regulator-min-microvolt = <600000>; 105 regulator-max-microvolt = <1500000>; 106 regulator-boot-on; 107 regulator-always-on; 108 }; 109 110 vcc_ddr: regulator@3 { 111 regulator-name = "vcc_ddr"; 112 regulator-min-microvolt = <600000>; 113 regulator-max-microvolt = <1500000>; 114 regulator-boot-on; 115 regulator-always-on; 116 }; 117 118 vcc18_cif: regulator@5 { 119 regulator-name = "vcc18_cif"; 120 regulator-always-on; 121 }; 122 123 vdd_11: regulator@6 { 124 regulator-name = "vdd_11"; 125 regulator-always-on; 126 }; 127 128 vcc_25: regulator@7 { 129 regulator-name = "vcc_25"; 130 regulator-always-on; 131 }; 132 133 vcc_18: regulator@8 { 134 regulator-name = "vcc_18"; 135 regulator-always-on; 136 }; 137 138 vcc25_hdmi: regulator@9 { 139 regulator-name = "vcc25_hdmi"; 140 regulator-always-on; 141 }; 142 143 vcca_33: regulator@10 { 144 regulator-name = "vcca_33"; 145 regulator-always-on; 146 }; 147 148 vcc_tp: regulator@11 { 149 regulator-name = "vcc_tp"; 150 regulator-always-on; 151 }; 152 153 vcc28_cif: regulator@12 { 154 regulator-name = "vcc28_cif"; 155 regulator-always-on; 156 }; 157 }; 158 }; 159}; 160 161/* must be included after &tps gets defined */ 162#include "tps65910.dtsi" 163 164&mmc0 { /* sdmmc */ 165 status = "okay"; 166 pinctrl-names = "default"; 167 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>; 168 vmmc-supply = <&vcc_sd0>; 169 bus-width = <4>; 170 cap-mmc-highspeed; 171 cap-sd-highspeed; 172 disable-wp; 173}; 174 175&mmc1 { /* wifi */ 176 status = "okay"; 177 non-removable; 178 179 pinctrl-names = "default"; 180 pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus4>; 181 182 bus-width = <4>; 183}; 184 185&pwm3 { 186 status = "okay"; 187}; 188 189&uart0 { 190 status = "okay"; 191}; 192 193&uart1 { 194 status = "okay"; 195}; 196 197&uart2 { 198 status = "okay"; 199}; 200 201&uart3 { 202 status = "okay"; 203}; 204 205&wdt { 206 status = "okay"; 207}; 208