dm: sound: exynos: Add support for max98090
[platform/kernel/u-boot.git] / arch / arm / dts / exynos5800-peach-pi.dts
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * SAMSUNG/GOOGLE Peach-Pit board device tree source
4  *
5  * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6  *              http://www.samsung.com
7  */
8
9 /dts-v1/;
10 #include "exynos54xx.dtsi"
11
12 / {
13         model = "Samsung/Google Peach Pi board based on Exynos5800";
14         cpu-model = "Exynos5800";
15
16         compatible = "google,pit-rev#", "google,pit",
17                 "google,peach", "samsung,exynos5800", "samsung,exynos5";
18
19         config {
20                 google,bad-wake-gpios = <&gpx0 6 GPIO_ACTIVE_HIGH>;
21                 hwid = "PIT TEST A-A 7848";
22                 lazy-init = <1>;
23         };
24
25         aliases {
26                 serial0 = "/serial@12C30000";
27                 console = "/serial@12C30000";
28                 pmic = "/i2c@12CA0000";
29                 i2c104 = &i2c_tunnel;
30         };
31
32         backlight: backlight {
33                 compatible = "pwm-backlight";
34                 pwms = <&pwm 0 1000000 0>;
35                 brightness-levels = <0 100 500 1000 1500 2000 2500 2800>;
36                 default-brightness-level = <7>;
37                 enable-gpios = <&gpx2 2 GPIO_ACTIVE_HIGH>;
38                 power-supply = <&tps65090_fet1>;
39         };
40
41         panel: panel {
42                 compatible = "auo,b133htn01";
43                 power-supply = <&tps65090_fet6>;
44                 backlight = <&backlight>;
45
46                 port {
47                         panel_in: endpoint {
48                                 remote-endpoint = <&dp_out>;
49                         };
50                 };
51         };
52
53         dmc {
54                 mem-manuf = "samsung";
55                 mem-type = "ddr3";
56                 clock-frequency = <800000000>;
57                 arm-frequency = <900000000>;
58         };
59
60         tmu@10060000 {
61                 samsung,min-temp        = <25>;
62                 samsung,max-temp        = <125>;
63                 samsung,start-warning   = <95>;
64                 samsung,start-tripping  = <105>;
65                 samsung,hw-tripping     = <110>;
66                 samsung,efuse-min-value = <40>;
67                 samsung,efuse-value     = <55>;
68                 samsung,efuse-max-value = <100>;
69                 samsung,slope           = <274761730>;
70                 samsung,dc-value        = <25>;
71         };
72
73         /* MAX77802 is on i2c bus 4 */
74         i2c@12CA0000 {
75                 clock-frequency = <400000>;
76                 power-regulator@9 {
77                         compatible = "maxim,max77802-pmic";
78                         reg = <0x9>;
79                 };
80         };
81
82         i2c@12CD0000 { /* i2c7 */
83                 clock-frequency = <100000>;
84                 soundcodec@10 {
85                         reg = <0x10>;
86                         compatible = "maxim,max98090-codec";
87                 };
88         };
89
90         sound@3830000 {
91                 samsung,codec-type = "max98090";
92         };
93
94         i2c@12E10000 { /* i2c9 */
95                 clock-frequency = <400000>;
96                 tpm@20 {
97                         compatible = "infineon,slb9645tt";
98                         reg = <0x20>;
99                 };
100         };
101
102         spi@12d30000 { /* spi1 */
103                 spi-max-frequency = <50000000>;
104                 firmware_storage_spi: flash@0 {
105                         reg = <0>;
106
107                         /*
108                          * A region for the kernel to store a panic event
109                          * which the firmware will add to the log.
110                         */
111                         elog-panic-event-offset = <0x01e00000 0x100000>;
112
113                         elog-shrink-size = <0x400>;
114                         elog-full-threshold = <0xc00>;
115                 };
116         };
117
118         xhci@12000000 {
119                 samsung,vbus-gpio = <&gph0 0 GPIO_ACTIVE_HIGH>;
120         };
121
122         xhci@12400000 {
123                 samsung,vbus-gpio = <&gph0 1 GPIO_ACTIVE_HIGH>;
124         };
125
126         fimd@14400000 {
127                 samsung,vl-freq = <60>;
128                 samsung,vl-col = <1920>;
129                 samsung,vl-row = <1080>;
130                 samsung,vl-width = <1920>;
131                 samsung,vl-height = <1080>;
132
133                 samsung,vl-clkp;
134                 samsung,vl-dp;
135                 samsung,vl-bpix = <4>;
136
137                 samsung,vl-hspw = <80>;
138                 samsung,vl-hbpd = <172>;
139                 samsung,vl-hfpd = <60>;
140                 samsung,vl-vspw = <10>;
141                 samsung,vl-vbpd = <25>;
142                 samsung,vl-vfpd = <10>;
143                 samsung,vl-cmd-allow-len = <0xf>;
144
145                 samsung,power-on-delay = <30000>;
146                 samsung,winid = <3>;
147                 samsung,interface-mode = <1>;
148                 samsung,dp-enabled = <1>;
149                 samsung,dual-lcd-enabled = <0>;
150
151                 samsung,bl-en-gpio = <&gpx2 2 GPIO_ACTIVE_HIGH>;
152         };
153 };
154
155 &dp {
156         status = "okay";
157         samsung,color-space = <0>;
158         samsung,dynamic-range = <0>;
159         samsung,ycbcr-coeff = <0>;
160         samsung,color-depth = <1>;
161         samsung,link-rate = <0x0a>;
162         samsung,lane-count = <2>;
163         samsung,hpd-gpio = <&gpx2 6 GPIO_ACTIVE_HIGH>;
164
165         ports {
166                 port {
167                         dp_out: endpoint {
168                                 remote-endpoint = <&panel_in>;
169                         };
170                 };
171         };
172 };
173
174 &spi_2 {
175         spi-max-frequency = <3125000>;
176         spi-deactivate-delay = <200>;
177         status = "okay";
178         num-cs = <1>;
179         samsung,spi-src-clk = <0>;
180         cs-gpios = <&gpb1 2 0>;
181
182         cros_ec: cros-ec@0 {
183                 compatible = "google,cros-ec-spi";
184                 interrupt-parent = <&gpx1>;
185                 interrupts = <5 0>;
186                 reg = <0>;
187                 spi-half-duplex;
188                 spi-max-timeout-ms = <1100>;
189                 ec-interrupt = <&gpx1 5 GPIO_ACTIVE_LOW>;
190
191                 /*
192                  * This describes the flash memory within the EC. Note
193                  * that the STM32L flash erases to 0, not 0xff.
194                  */
195                 #address-cells = <1>;
196                 #size-cells = <1>;
197                 flash@8000000 {
198                         reg = <0x08000000 0x20000>;
199                         erase-value = <0>;
200                 };
201
202                 controller-data {
203                         samsung,spi-feedback-delay = <1>;
204                 };
205
206                 i2c_tunnel: i2c-tunnel {
207                         compatible = "google,cros-ec-i2c-tunnel";
208                         #address-cells = <1>;
209                         #size-cells = <0>;
210                         google,remote-bus = <0>;
211
212                         battery: sbs-battery@b {
213                                 compatible = "sbs,sbs-battery";
214                                 reg = <0xb>;
215                                 sbs,poll-retry-count = <1>;
216                                 sbs,i2c-retry-count = <2>;
217                         };
218
219                         power-regulator@48 {
220                                 compatible = "ti,tps65090";
221                                 reg = <0x48>;
222
223                                 regulators {
224                                         tps65090_dcdc1: dcdc1 {
225                                                 ti,enable-ext-control;
226                                         };
227                                         tps65090_dcdc2: dcdc2 {
228                                                 ti,enable-ext-control;
229                                         };
230                                         tps65090_dcdc3: dcdc3 {
231                                                 ti,enable-ext-control;
232                                         };
233                                         tps65090_fet1: fet1 {
234                                                 regulator-name = "vcd_led";
235                                         };
236                                         tps65090_fet2: fet2 {
237                                                 regulator-name = "video_mid";
238                                                 regulator-always-on;
239                                         };
240                                         tps65090_fet3: fet3 {
241                                                 regulator-name = "wwan_r";
242                                                 regulator-always-on;
243                                         };
244                                         tps65090_fet4: fet4 {
245                                                 regulator-name = "sdcard";
246                                                 regulator-always-on;
247                                         };
248                                         tps65090_fet5: fet5 {
249                                                 regulator-name = "camout";
250                                                 regulator-always-on;
251                                         };
252                                         tps65090_fet6: fet6 {
253                                                 regulator-name = "lcd_vdd";
254                                         };
255                                         tps65090_fet7: fet7 {
256                                                 regulator-name = "video_mid_1a";
257                                                 regulator-always-on;
258                                         };
259                                         tps65090_ldo1: ldo1 {
260                                         };
261                                         tps65090_ldo2: ldo2 {
262                                         };
263                                 };
264
265                                 charger {
266                                         compatible = "ti,tps65090-charger";
267                                 };
268                         };
269                 };
270         };
271 };
272
273 #include "cros-ec-keyboard.dtsi"