Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'v4.8-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt

Audio support and spi-flash on rk3288-veyron Chromedevices
as well as i2s and ethernet support on rk3228/rk3229 devices
and a dts file for the rk3229 eval board.

* tag 'v4.8-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
ARM: dts: rockchip: add support rk3229 evb board
ARM: dts: rockchip: add GMAC nodes for RK322x SoCs
ARM: dts: rockchip: add i2s nodes for RK322x SoCs
ARM: dts: rockchip: rename rk3228.dtsi to rk322x.dtsi
clk: rockchip: add clock-ids for rk3228 MAC clocks
clk: rockchip: add clock-ids for rk3228 audio clocks
ARM: dts: rockchip: rename i2s model for Veyron devices
ARM: dts: rockchip: move rk3288 io-domain nodes to the grf
ARM: dts: rockchip: Enable analog audio on rk3288-veyron chromebooks
ARM: dts: rockchip: Add shared file for audio on rk3288-veyron boards
ARM: dts: rockchip: add SPI flash node for rk3288-veyron

Signed-off-by: Olof Johansson <olof@lixom.net>

+409 -77
+3
Documentation/devicetree/bindings/arm/rockchip.txt
··· 107 107 Required root node properties: 108 108 - compatible = "rockchip,rk3228-evb", "rockchip,rk3228"; 109 109 110 + - Rockchip RK3229 Evaluation board: 111 + - compatible = "rockchip,rk3229-evb", "rockchip,rk3229"; 112 + 110 113 - Rockchip RK3399 evb: 111 114 Required root node properties: 112 115 - compatible = "rockchip,rk3399-evb", "rockchip,rk3399";
+1
arch/arm/boot/dts/Makefile
··· 617 617 rk3066a-rayeager.dtb \ 618 618 rk3188-radxarock.dtb \ 619 619 rk3228-evb.dtb \ 620 + rk3229-evb.dtb \ 620 621 rk3288-evb-act8846.dtb \ 621 622 rk3288-evb-rk808.dtb \ 622 623 rk3288-firefly-beta.dtb \
+1 -1
arch/arm/boot/dts/rk3228-evb.dts
··· 40 40 41 41 /dts-v1/; 42 42 43 - #include "rk3228.dtsi" 43 + #include "rk322x.dtsi" 44 44 45 45 / { 46 46 model = "Rockchip RK3228 Evaluation board";
+116 -2
arch/arm/boot/dts/rk3228.dtsi arch/arm/boot/dts/rk322x.dtsi
··· 47 47 #include "skeleton.dtsi" 48 48 49 49 / { 50 - compatible = "rockchip,rk3228"; 51 - 52 50 interrupt-parent = <&gic>; 53 51 54 52 aliases { ··· 136 138 clock-frequency = <24000000>; 137 139 clock-output-names = "xin24m"; 138 140 #clock-cells = <0>; 141 + }; 142 + 143 + i2s1: i2s1@100b0000 { 144 + compatible = "rockchip,rk3228-i2s", "rockchip,rk3066-i2s"; 145 + reg = <0x100b0000 0x4000>; 146 + interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 147 + #address-cells = <1>; 148 + #size-cells = <0>; 149 + clock-names = "i2s_clk", "i2s_hclk"; 150 + clocks = <&cru SCLK_I2S1>, <&cru HCLK_I2S1_8CH>; 151 + dmas = <&pdma 14>, <&pdma 15>; 152 + dma-names = "tx", "rx"; 153 + pinctrl-names = "default"; 154 + pinctrl-0 = <&i2s1_bus>; 155 + status = "disabled"; 156 + }; 157 + 158 + i2s0: i2s0@100c0000 { 159 + compatible = "rockchip,rk3228-i2s", "rockchip,rk3066-i2s"; 160 + reg = <0x100c0000 0x4000>; 161 + interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 162 + #address-cells = <1>; 163 + #size-cells = <0>; 164 + clock-names = "i2s_clk", "i2s_hclk"; 165 + clocks = <&cru SCLK_I2S0>, <&cru HCLK_I2S0_8CH>; 166 + dmas = <&pdma 11>, <&pdma 12>; 167 + dma-names = "tx", "rx"; 168 + status = "disabled"; 169 + }; 170 + 171 + i2s2: i2s2@100e0000 { 172 + compatible = "rockchip,rk3228-i2s", "rockchip,rk3066-i2s"; 173 + reg = <0x100e0000 0x4000>; 174 + interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; 175 + #address-cells = <1>; 176 + #size-cells = <0>; 177 + clock-names = "i2s_clk", "i2s_hclk"; 178 + clocks = <&cru SCLK_I2S2>, <&cru HCLK_I2S2_2CH>; 179 + dmas = <&pdma 0>, <&pdma 1>; 180 + dma-names = "tx", "rx"; 181 + status = "disabled"; 139 182 }; 140 183 141 184 grf: syscon@11000000 { ··· 415 376 status = "disabled"; 416 377 }; 417 378 379 + gmac: ethernet@30200000 { 380 + compatible = "rockchip,rk3228-gmac"; 381 + reg = <0x30200000 0x10000>; 382 + interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 383 + interrupt-names = "macirq"; 384 + clocks = <&cru SCLK_MAC>, <&cru SCLK_MAC_RX>, 385 + <&cru SCLK_MAC_TX>, <&cru SCLK_MAC_REF>, 386 + <&cru SCLK_MAC_REFOUT>, <&cru ACLK_GMAC>, 387 + <&cru PCLK_GMAC>; 388 + clock-names = "stmmaceth", "mac_clk_rx", 389 + "mac_clk_tx", "clk_mac_ref", 390 + "clk_mac_refout", "aclk_mac", 391 + "pclk_mac"; 392 + resets = <&cru SRST_GMAC>; 393 + reset-names = "stmmaceth"; 394 + rockchip,grf = <&grf>; 395 + status = "disabled"; 396 + }; 397 + 418 398 gic: interrupt-controller@32010000 { 419 399 compatible = "arm,gic-400"; 420 400 interrupt-controller; ··· 518 460 bias-disable; 519 461 }; 520 462 463 + pcfg_pull_none_drv_12ma: pcfg-pull-none-drv-12ma { 464 + drive-strength = <12>; 465 + }; 466 + 521 467 emmc { 522 468 emmc_clk: emmc-clk { 523 469 rockchip,pins = <2 7 RK_FUNC_2 &pcfg_pull_none>; ··· 540 478 <1 29 RK_FUNC_2 &pcfg_pull_none>, 541 479 <1 30 RK_FUNC_2 &pcfg_pull_none>, 542 480 <1 31 RK_FUNC_2 &pcfg_pull_none>; 481 + }; 482 + }; 483 + 484 + gmac { 485 + rgmii_pins: rgmii-pins { 486 + rockchip,pins = <2 14 RK_FUNC_1 &pcfg_pull_none>, 487 + <2 12 RK_FUNC_1 &pcfg_pull_none>, 488 + <2 25 RK_FUNC_1 &pcfg_pull_none>, 489 + <2 19 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 490 + <2 18 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 491 + <2 22 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 492 + <2 23 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 493 + <2 9 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 494 + <2 13 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 495 + <2 17 RK_FUNC_1 &pcfg_pull_none>, 496 + <2 16 RK_FUNC_1 &pcfg_pull_none>, 497 + <2 21 RK_FUNC_2 &pcfg_pull_none>, 498 + <2 20 RK_FUNC_2 &pcfg_pull_none>, 499 + <2 11 RK_FUNC_1 &pcfg_pull_none>, 500 + <2 8 RK_FUNC_1 &pcfg_pull_none>; 501 + }; 502 + 503 + rmii_pins: rmii-pins { 504 + rockchip,pins = <2 14 RK_FUNC_1 &pcfg_pull_none>, 505 + <2 12 RK_FUNC_1 &pcfg_pull_none>, 506 + <2 25 RK_FUNC_1 &pcfg_pull_none>, 507 + <2 19 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 508 + <2 18 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 509 + <2 13 RK_FUNC_1 &pcfg_pull_none_drv_12ma>, 510 + <2 17 RK_FUNC_1 &pcfg_pull_none>, 511 + <2 16 RK_FUNC_1 &pcfg_pull_none>, 512 + <2 8 RK_FUNC_1 &pcfg_pull_none>, 513 + <2 15 RK_FUNC_1 &pcfg_pull_none>; 514 + }; 515 + 516 + phy_pins: phy-pins { 517 + rockchip,pins = <2 14 RK_FUNC_2 &pcfg_pull_none>, 518 + <2 8 RK_FUNC_2 &pcfg_pull_none>; 543 519 }; 544 520 }; 545 521 ··· 606 506 i2c3_xfer: i2c3-xfer { 607 507 rockchip,pins = <0 6 RK_FUNC_1 &pcfg_pull_none>, 608 508 <0 7 RK_FUNC_1 &pcfg_pull_none>; 509 + }; 510 + }; 511 + 512 + i2s1 { 513 + i2s1_bus: i2s1-bus { 514 + rockchip,pins = <0 8 RK_FUNC_1 &pcfg_pull_none>, 515 + <0 9 RK_FUNC_1 &pcfg_pull_none>, 516 + <0 11 RK_FUNC_1 &pcfg_pull_none>, 517 + <0 12 RK_FUNC_1 &pcfg_pull_none>, 518 + <0 13 RK_FUNC_1 &pcfg_pull_none>, 519 + <0 14 RK_FUNC_1 &pcfg_pull_none>, 520 + <1 2 RK_FUNC_1 &pcfg_pull_none>, 521 + <1 4 RK_FUNC_1 &pcfg_pull_none>, 522 + <1 5 RK_FUNC_1 &pcfg_pull_none>; 609 523 }; 610 524 }; 611 525
+90
arch/arm/boot/dts/rk3229-evb.dts
··· 1 + /* 2 + * This file is dual-licensed: you can use it either under the terms 3 + * of the GPL or the X11 license, at your option. Note that this dual 4 + * licensing only applies to this file, and not this project as a 5 + * whole. 6 + * 7 + * a) This file is free software; you can redistribute it and/or 8 + * modify it under the terms of the GNU General Public License as 9 + * published by the Free Software Foundation; either version 2 of the 10 + * License, or (at your option) any later version. 11 + * 12 + * This file is distributed in the hope that it will be useful, 13 + * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 + * GNU General Public License for more details. 16 + * 17 + * Or, alternatively, 18 + * 19 + * b) Permission is hereby granted, free of charge, to any person 20 + * obtaining a copy of this software and associated documentation 21 + * files (the "Software"), to deal in the Software without 22 + * restriction, including without limitation the rights to use, 23 + * copy, modify, merge, publish, distribute, sublicense, and/or 24 + * sell copies of the Software, and to permit persons to whom the 25 + * Software is furnished to do so, subject to the following 26 + * conditions: 27 + * 28 + * The above copyright notice and this permission notice shall be 29 + * included in all copies or substantial portions of the Software. 30 + * 31 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 32 + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 33 + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 34 + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 35 + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 36 + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 37 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 38 + * OTHER DEALINGS IN THE SOFTWARE. 39 + */ 40 + 41 + /dts-v1/; 42 + 43 + #include "rk322x.dtsi" 44 + 45 + / { 46 + model = "Rockchip RK3229 Evaluation board"; 47 + compatible = "rockchip,rk3229-evb", "rockchip,rk3229"; 48 + 49 + memory { 50 + device_type = "memory"; 51 + reg = <0x60000000 0x40000000>; 52 + }; 53 + 54 + ext_gmac: ext_gmac { 55 + compatible = "fixed-clock"; 56 + clock-frequency = <125000000>; 57 + clock-output-names = "ext_gmac"; 58 + #clock-cells = <0>; 59 + }; 60 + 61 + vcc_phy: vcc-phy-regulator { 62 + compatible = "regulator-fixed"; 63 + enable-active-high; 64 + regulator-name = "vcc_phy"; 65 + regulator-min-microvolt = <1800000>; 66 + regulator-max-microvolt = <1800000>; 67 + regulator-always-on; 68 + regulator-boot-on; 69 + }; 70 + }; 71 + 72 + &gmac { 73 + assigned-clocks = <&cru SCLK_MAC_EXTCLK>, <&cru SCLK_MAC>; 74 + assigned-clock-parents = <&ext_gmac>, <&cru SCLK_MAC_EXTCLK>; 75 + clock_in_out = "input"; 76 + phy-supply = <&vcc_phy>; 77 + phy-mode = "rgmii"; 78 + pinctrl-names = "default"; 79 + pinctrl-0 = <&rgmii_pins>; 80 + snps,reset-gpio = <&gpio2 24 GPIO_ACTIVE_LOW>; 81 + snps,reset-active-low; 82 + snps,reset-delays-us = <0 10000 1000000>; 83 + tx_delay = <0x30>; 84 + rx_delay = <0x10>; 85 + status = "okay"; 86 + }; 87 + 88 + &uart2 { 89 + status = "okay"; 90 + };
+15 -16
arch/arm/boot/dts/rk3288-firefly.dtsi
··· 64 64 clock-output-names = "ext_gmac"; 65 65 }; 66 66 67 - io_domains: io-domains { 68 - compatible = "rockchip,rk3288-io-voltage-domain"; 69 - rockchip,grf = <&grf>; 70 - 71 - audio-supply = <&vcca_33>; 72 - bb-supply = <&vcc_io>; 73 - dvp-supply = <&dovdd_1v8>; 74 - flash0-supply = <&vcc_flash>; 75 - flash1-supply = <&vcc_lan>; 76 - gpio30-supply = <&vcc_io>; 77 - gpio1830-supply = <&vcc_io>; 78 - lcdc-supply = <&vcc_io>; 79 - sdcard-supply = <&vccio_sd>; 80 - wifi-supply = <&vccio_wl>; 81 - }; 82 - 83 67 ir: ir-receiver { 84 68 compatible = "gpio-ir-receiver"; 85 69 pinctrl-names = "default"; ··· 379 395 380 396 &i2c5 { 381 397 status = "okay"; 398 + }; 399 + 400 + &io_domains { 401 + status = "okay"; 402 + 403 + audio-supply = <&vcca_33>; 404 + bb-supply = <&vcc_io>; 405 + dvp-supply = <&dovdd_1v8>; 406 + flash0-supply = <&vcc_flash>; 407 + flash1-supply = <&vcc_lan>; 408 + gpio30-supply = <&vcc_io>; 409 + gpio1830-supply = <&vcc_io>; 410 + lcdc-supply = <&vcc_io>; 411 + sdcard-supply = <&vccio_sd>; 412 + wifi-supply = <&vccio_wl>; 382 413 }; 383 414 384 415 &pinctrl {
+13 -13
arch/arm/boot/dts/rk3288-miqi.dts
··· 64 64 clock-output-names = "ext_gmac"; 65 65 }; 66 66 67 - io_domains: io-domains { 68 - compatible = "rockchip,rk3288-io-voltage-domain"; 69 - 70 - audio-supply = <&vcca_33>; 71 - flash0-supply = <&vcc_flash>; 72 - flash1-supply = <&vcc_lan>; 73 - gpio30-supply = <&vcc_io>; 74 - gpio1830-supply = <&vcc_io>; 75 - lcdc-supply = <&vcc_io>; 76 - sdcard-supply = <&vccio_sd>; 77 - wifi-supply = <&vcc_18>; 78 - }; 79 - 80 67 leds { 81 68 compatible = "gpio-leds"; 82 69 ··· 306 319 307 320 &i2c5 { 308 321 status = "okay"; 322 + }; 323 + 324 + &io_domains { 325 + status = "okay"; 326 + 327 + audio-supply = <&vcca_33>; 328 + flash0-supply = <&vcc_flash>; 329 + flash1-supply = <&vcc_lan>; 330 + gpio30-supply = <&vcc_io>; 331 + gpio1830-supply = <&vcc_io>; 332 + lcdc-supply = <&vcc_io>; 333 + sdcard-supply = <&vccio_sd>; 334 + wifi-supply = <&vcc_18>; 309 335 }; 310 336 311 337 &pinctrl {
+15 -16
arch/arm/boot/dts/rk3288-popmetal.dts
··· 77 77 }; 78 78 }; 79 79 80 - io_domains: io-domains { 81 - compatible = "rockchip,rk3288-io-voltage-domain"; 82 - rockchip,grf = <&grf>; 83 - 84 - audio-supply = <&vcca_33>; 85 - bb-supply = <&vcc_io>; 86 - dvp-supply = <&vcc18_dvp>; 87 - flash0-supply = <&vcc_flash>; 88 - flash1-supply = <&vcc_lan>; 89 - gpio30-supply = <&vcc_io>; 90 - gpio1830-supply = <&vcc_io>; 91 - lcdc-supply = <&vcc_io>; 92 - sdcard-supply = <&vccio_sd>; 93 - wifi-supply = <&vccio_wl>; 94 - }; 95 - 96 80 ir: ir-receiver { 97 81 compatible = "gpio-ir-receiver"; 98 82 gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; ··· 419 435 420 436 &i2c5 { 421 437 status = "okay"; 438 + }; 439 + 440 + &io_domains { 441 + status = "okay"; 442 + 443 + audio-supply = <&vcca_33>; 444 + bb-supply = <&vcc_io>; 445 + dvp-supply = <&vcc18_dvp>; 446 + flash0-supply = <&vcc_flash>; 447 + flash1-supply = <&vcc_lan>; 448 + gpio30-supply = <&vcc_io>; 449 + gpio1830-supply = <&vcc_io>; 450 + lcdc-supply = <&vcc_io>; 451 + sdcard-supply = <&vccio_sd>; 452 + wifi-supply = <&vccio_wl>; 422 453 }; 423 454 424 455 &pinctrl {
+15 -16
arch/arm/boot/dts/rk3288-rock2-som.dtsi
··· 61 61 clock-output-names = "ext_gmac"; 62 62 }; 63 63 64 - io_domains: io-domains { 65 - compatible = "rockchip,rk3288-io-voltage-domain"; 66 - rockchip,grf = <&grf>; 67 - 68 - audio-supply = <&vcc_io>; 69 - bb-supply = <&vcc_io>; 70 - dvp-supply = <&vcc_18>; 71 - flash0-supply = <&vcc_flash>; 72 - flash1-supply = <&vccio_pmu>; 73 - gpio30-supply = <&vccio_pmu>; 74 - gpio1830 = <&vcc_io>; 75 - lcdc-supply = <&vcc_io>; 76 - sdcard-supply = <&vccio_sd>; 77 - wifi-supply = <&vcc_18>; 78 - }; 79 - 80 64 vcc_flash: flash-regulator { 81 65 compatible = "regulator-fixed"; 82 66 regulator-name = "vcc_sys"; ··· 241 257 regulator-ramp-delay = <8000>; 242 258 vin-supply = <&vcc_sys>; 243 259 }; 260 + }; 261 + 262 + &io_domains { 263 + status = "okay"; 264 + 265 + audio-supply = <&vcc_io>; 266 + bb-supply = <&vcc_io>; 267 + dvp-supply = <&vcc_18>; 268 + flash0-supply = <&vcc_flash>; 269 + flash1-supply = <&vccio_pmu>; 270 + gpio30-supply = <&vccio_pmu>; 271 + gpio1830 = <&vcc_io>; 272 + lcdc-supply = <&vcc_io>; 273 + sdcard-supply = <&vccio_sd>; 274 + wifi-supply = <&vcc_18>; 244 275 }; 245 276 246 277 &pinctrl {
+101
arch/arm/boot/dts/rk3288-veyron-analog-audio.dtsi
··· 1 + /* 2 + * Google Veyron (and derivatives) fragment for the max98090 audio 3 + * codec and analog headphone jack. 4 + * 5 + * Copyright 2016 Google, Inc 6 + * 7 + * This program is free software; you can redistribute it and/or modify 8 + * it under the terms of the GNU General Public License version 2 as 9 + * published by the Free Software Foundation. 10 + */ 11 + 12 + / { 13 + sound { 14 + compatible = "rockchip,rockchip-audio-max98090"; 15 + pinctrl-names = "default"; 16 + pinctrl-0 = <&mic_det>, <&hp_det>; 17 + rockchip,model = "VEYRON-I2S"; 18 + rockchip,i2s-controller = <&i2s>; 19 + rockchip,audio-codec = <&max98090>; 20 + rockchip,hp-det-gpios = <&gpio6 5 GPIO_ACTIVE_HIGH>; 21 + rockchip,mic-det-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; 22 + rockchip,headset-codec = <&headsetcodec>; 23 + }; 24 + }; 25 + 26 + &i2c2 { 27 + max98090: max98090@10 { 28 + compatible = "maxim,max98090"; 29 + reg = <0x10>; 30 + interrupt-parent = <&gpio6>; 31 + interrupts = <7 IRQ_TYPE_EDGE_FALLING>; 32 + clock-names = "mclk"; 33 + clocks = <&cru SCLK_I2S0_OUT>; 34 + pinctrl-names = "default"; 35 + pinctrl-0 = <&int_codec>; 36 + }; 37 + }; 38 + 39 + &i2c4 { 40 + headsetcodec: ts3a227e@3b { 41 + compatible = "ti,ts3a227e"; 42 + reg = <0x3b>; 43 + interrupt-parent = <&gpio0>; 44 + interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 45 + pinctrl-names = "default"; 46 + pinctrl-0 = <&ts3a227e_int_l>; 47 + ti,micbias = <7>; /* MICBIAS = 2.8V */ 48 + }; 49 + }; 50 + 51 + &i2s { 52 + status = "okay"; 53 + }; 54 + 55 + &io_domains { 56 + audio-supply = <&vcc18_codec>; 57 + }; 58 + 59 + &rk808 { 60 + vcc10-supply = <&vcc33_sys>; 61 + 62 + regulators { 63 + vcc18_codec: LDO_REG6 { 64 + regulator-name = "vcc18_codec"; 65 + regulator-always-on; 66 + regulator-boot-on; 67 + regulator-min-microvolt = <1800000>; 68 + regulator-max-microvolt = <1800000>; 69 + regulator-state-mem { 70 + regulator-off-in-suspend; 71 + }; 72 + }; 73 + }; 74 + }; 75 + 76 + &pinctrl { 77 + codec { 78 + hp_det: hp-det { 79 + rockchip,pins = <6 5 RK_FUNC_GPIO &pcfg_pull_up>; 80 + }; 81 + 82 + /* 83 + * HACK: We're going to _pull down_ this _active low_ interrupt 84 + * so that it never fires. We don't need this interrupt because 85 + * we've got a ts3a227e chip but the driver requires it. 86 + */ 87 + int_codec: int-codec { 88 + rockchip,pins = <6 7 RK_FUNC_GPIO &pcfg_pull_down>; 89 + }; 90 + 91 + mic_det: mic-det { 92 + rockchip,pins = <6 11 RK_FUNC_GPIO &pcfg_pull_up>; 93 + }; 94 + }; 95 + 96 + headset { 97 + ts3a227e_int_l: ts3a227e-int-l { 98 + rockchip,pins = <0 3 RK_FUNC_GPIO &pcfg_pull_up>; 99 + }; 100 + }; 101 + };
+1
arch/arm/boot/dts/rk3288-veyron-chromebook.dtsi
··· 46 46 #include <dt-bindings/clock/rockchip,rk808.h> 47 47 #include <dt-bindings/input/input.h> 48 48 #include "rk3288-veyron.dtsi" 49 + #include "rk3288-veyron-analog-audio.dtsi" 49 50 #include "rk3288-veyron-sdmmc.dtsi" 50 51 51 52 / {
+18 -13
arch/arm/boot/dts/rk3288-veyron.dtsi
··· 83 83 reset-gpios = <&gpio2 9 GPIO_ACTIVE_HIGH>; 84 84 }; 85 85 86 - io_domains: io-domains { 87 - compatible = "rockchip,rk3288-io-voltage-domain"; 88 - rockchip,grf = <&grf>; 89 - 90 - bb-supply = <&vcc33_io>; 91 - dvp-supply = <&vcc_18>; 92 - flash0-supply = <&vcc18_flashio>; 93 - gpio1830-supply = <&vcc33_io>; 94 - gpio30-supply = <&vcc33_io>; 95 - lcdc-supply = <&vcc33_lcd>; 96 - wifi-supply = <&vcc18_wl>; 97 - }; 98 - 99 86 sdio_pwrseq: sdio-pwrseq { 100 87 compatible = "mmc-pwrseq-simple"; 101 88 clocks = <&rk808 RK808_CLKOUT1>; ··· 342 355 i2c-scl-rising-time-ns = <1000>; 343 356 }; 344 357 358 + &io_domains { 359 + status = "okay"; 360 + 361 + bb-supply = <&vcc33_io>; 362 + dvp-supply = <&vcc_18>; 363 + flash0-supply = <&vcc18_flashio>; 364 + gpio1830-supply = <&vcc33_io>; 365 + gpio30-supply = <&vcc33_io>; 366 + lcdc-supply = <&vcc33_lcd>; 367 + wifi-supply = <&vcc18_wl>; 368 + }; 369 + 345 370 &pwm1 { 346 371 status = "okay"; 347 372 }; ··· 382 383 status = "okay"; 383 384 384 385 rx-sample-delay-ns = <12>; 386 + 387 + flash@0 { 388 + compatible = "jedec,spi-nor"; 389 + spi-max-frequency = <50000000>; 390 + reg = <0>; 391 + }; 385 392 }; 386 393 387 394 &tsadc {
+5
arch/arm/boot/dts/rk3288.dtsi
··· 826 826 #phy-cells = <0>; 827 827 status = "disabled"; 828 828 }; 829 + 830 + io_domains: io-domains { 831 + compatible = "rockchip,rk3288-io-voltage-domain"; 832 + status = "disabled"; 833 + }; 829 834 }; 830 835 831 836 wdt: watchdog@ff800000 {
+15
include/dt-bindings/clock/rk3228-cru.h
··· 52 52 #define SCLK_EMMC_SAMPLE 121 53 53 #define SCLK_VOP 122 54 54 #define SCLK_HDMI_HDCP 123 55 + #define SCLK_MAC_SRC 124 56 + #define SCLK_MAC_EXTCLK 125 57 + #define SCLK_MAC 126 58 + #define SCLK_MAC_REFOUT 127 59 + #define SCLK_MAC_REF 128 60 + #define SCLK_MAC_RX 129 61 + #define SCLK_MAC_TX 130 62 + #define SCLK_MAC_PHY 131 63 + #define SCLK_MAC_OUT 132 55 64 56 65 /* dclk gates */ 57 66 #define DCLK_VOP 190 ··· 70 61 #define ACLK_DMAC 194 71 62 #define ACLK_PERI 210 72 63 #define ACLK_VOP 211 64 + #define ACLK_GMAC 212 73 65 74 66 /* pclk gates */ 75 67 #define PCLK_GPIO0 320 ··· 92 82 #define PCLK_PERI 363 93 83 #define PCLK_HDMI_CTRL 364 94 84 #define PCLK_HDMI_PHY 365 85 + #define PCLK_GMAC 367 95 86 96 87 /* hclk gates */ 88 + #define HCLK_I2S0_8CH 442 89 + #define HCLK_I2S1_8CH 443 90 + #define HCLK_I2S2_2CH 444 91 + #define HCLK_SPDIF_8CH 445 97 92 #define HCLK_VOP 452 98 93 #define HCLK_NANDC 453 99 94 #define HCLK_SDMMC 456