1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2016 Andreas Färber 4 */ 5 6#include "meson-gx.dtsi" 7#include <dt-bindings/gpio/meson-gxbb-gpio.h> 8#include <dt-bindings/reset/amlogic,meson-gxbb-reset.h> 9#include <dt-bindings/clock/gxbb-clkc.h> 10#include <dt-bindings/clock/gxbb-aoclkc.h> 11#include <dt-bindings/reset/gxbb-aoclkc.h> 12 13/ { 14 compatible = "amlogic,meson-gxbb"; 15 16 soc { 17 usb0_phy: phy@c0000000 { 18 compatible = "amlogic,meson-gxbb-usb2-phy"; 19 #phy-cells = <0>; 20 reg = <0x0 0xc0000000 0x0 0x20>; 21 resets = <&reset RESET_USB_OTG>; 22 clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB0>; 23 clock-names = "usb_general", "usb"; 24 status = "disabled"; 25 }; 26 27 usb1_phy: phy@c0000020 { 28 compatible = "amlogic,meson-gxbb-usb2-phy"; 29 #phy-cells = <0>; 30 reg = <0x0 0xc0000020 0x0 0x20>; 31 resets = <&reset RESET_USB_OTG>; 32 clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB1>; 33 clock-names = "usb_general", "usb"; 34 status = "disabled"; 35 }; 36 37 usb0: usb@c9000000 { 38 compatible = "amlogic,meson-gxbb-usb", "snps,dwc2"; 39 reg = <0x0 0xc9000000 0x0 0x40000>; 40 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 41 clocks = <&clkc CLKID_USB0_DDR_BRIDGE>; 42 clock-names = "otg"; 43 phys = <&usb0_phy>; 44 phy-names = "usb2-phy"; 45 dr_mode = "host"; 46 status = "disabled"; 47 }; 48 49 usb1: usb@c9100000 { 50 compatible = "amlogic,meson-gxbb-usb", "snps,dwc2"; 51 reg = <0x0 0xc9100000 0x0 0x40000>; 52 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 53 clocks = <&clkc CLKID_USB1_DDR_BRIDGE>; 54 clock-names = "otg"; 55 phys = <&usb1_phy>; 56 phy-names = "usb2-phy"; 57 dr_mode = "host"; 58 status = "disabled"; 59 }; 60 }; 61}; 62 63&aobus { 64 pinctrl_aobus: pinctrl@14 { 65 compatible = "amlogic,meson-gxbb-aobus-pinctrl"; 66 #address-cells = <2>; 67 #size-cells = <2>; 68 ranges; 69 70 gpio_ao: bank@14 { 71 reg = <0x0 0x00014 0x0 0x8>, 72 <0x0 0x0002c 0x0 0x4>, 73 <0x0 0x00024 0x0 0x8>; 74 reg-names = "mux", "pull", "gpio"; 75 gpio-controller; 76 #gpio-cells = <2>; 77 gpio-ranges = <&pinctrl_aobus 0 0 14>; 78 }; 79 80 uart_ao_a_pins: uart_ao_a { 81 mux { 82 groups = "uart_tx_ao_a", "uart_rx_ao_a"; 83 function = "uart_ao"; 84 bias-disable; 85 }; 86 }; 87 88 uart_ao_a_cts_rts_pins: uart_ao_a_cts_rts { 89 mux { 90 groups = "uart_cts_ao_a", 91 "uart_rts_ao_a"; 92 function = "uart_ao"; 93 bias-disable; 94 }; 95 }; 96 97 uart_ao_b_pins: uart_ao_b { 98 mux { 99 groups = "uart_tx_ao_b", "uart_rx_ao_b"; 100 function = "uart_ao_b"; 101 bias-disable; 102 }; 103 }; 104 105 uart_ao_b_cts_rts_pins: uart_ao_b_cts_rts { 106 mux { 107 groups = "uart_cts_ao_b", 108 "uart_rts_ao_b"; 109 function = "uart_ao_b"; 110 bias-disable; 111 }; 112 }; 113 114 remote_input_ao_pins: remote_input_ao { 115 mux { 116 groups = "remote_input_ao"; 117 function = "remote_input_ao"; 118 bias-disable; 119 }; 120 }; 121 122 i2c_ao_pins: i2c_ao { 123 mux { 124 groups = "i2c_sck_ao", 125 "i2c_sda_ao"; 126 function = "i2c_ao"; 127 bias-disable; 128 }; 129 }; 130 131 pwm_ao_a_3_pins: pwm_ao_a_3 { 132 mux { 133 groups = "pwm_ao_a_3"; 134 function = "pwm_ao_a_3"; 135 bias-disable; 136 }; 137 }; 138 139 pwm_ao_a_6_pins: pwm_ao_a_6 { 140 mux { 141 groups = "pwm_ao_a_6"; 142 function = "pwm_ao_a_6"; 143 bias-disable; 144 }; 145 }; 146 147 pwm_ao_a_12_pins: pwm_ao_a_12 { 148 mux { 149 groups = "pwm_ao_a_12"; 150 function = "pwm_ao_a_12"; 151 bias-disable; 152 }; 153 }; 154 155 pwm_ao_b_pins: pwm_ao_b { 156 mux { 157 groups = "pwm_ao_b"; 158 function = "pwm_ao_b"; 159 bias-disable; 160 }; 161 }; 162 163 i2s_am_clk_pins: i2s_am_clk { 164 mux { 165 groups = "i2s_am_clk"; 166 function = "i2s_out_ao"; 167 bias-disable; 168 }; 169 }; 170 171 i2s_out_ao_clk_pins: i2s_out_ao_clk { 172 mux { 173 groups = "i2s_out_ao_clk"; 174 function = "i2s_out_ao"; 175 bias-disable; 176 }; 177 }; 178 179 i2s_out_lr_clk_pins: i2s_out_lr_clk { 180 mux { 181 groups = "i2s_out_lr_clk"; 182 function = "i2s_out_ao"; 183 bias-disable; 184 }; 185 }; 186 187 i2s_out_ch01_ao_pins: i2s_out_ch01_ao { 188 mux { 189 groups = "i2s_out_ch01_ao"; 190 function = "i2s_out_ao"; 191 bias-disable; 192 }; 193 }; 194 195 i2s_out_ch23_ao_pins: i2s_out_ch23_ao { 196 mux { 197 groups = "i2s_out_ch23_ao"; 198 function = "i2s_out_ao"; 199 bias-disable; 200 }; 201 }; 202 203 i2s_out_ch45_ao_pins: i2s_out_ch45_ao { 204 mux { 205 groups = "i2s_out_ch45_ao"; 206 function = "i2s_out_ao"; 207 bias-disable; 208 }; 209 }; 210 211 spdif_out_ao_6_pins: spdif_out_ao_6 { 212 mux { 213 groups = "spdif_out_ao_6"; 214 function = "spdif_out_ao"; 215 }; 216 }; 217 218 spdif_out_ao_13_pins: spdif_out_ao_13 { 219 mux { 220 groups = "spdif_out_ao_13"; 221 function = "spdif_out_ao"; 222 bias-disable; 223 }; 224 }; 225 226 ao_cec_pins: ao_cec { 227 mux { 228 groups = "ao_cec"; 229 function = "cec_ao"; 230 bias-disable; 231 }; 232 }; 233 234 ee_cec_pins: ee_cec { 235 mux { 236 groups = "ee_cec"; 237 function = "cec_ao"; 238 bias-disable; 239 }; 240 }; 241 }; 242}; 243 244&apb { 245 mali: gpu@c0000 { 246 compatible = "amlogic,meson-gxbb-mali", "arm,mali-450"; 247 reg = <0x0 0xc0000 0x0 0x40000>; 248 interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 249 <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>, 250 <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>, 251 <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>, 252 <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>, 253 <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>, 254 <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>, 255 <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>, 256 <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>, 257 <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>; 258 interrupt-names = "gp", "gpmmu", "pp", "pmu", 259 "pp0", "ppmmu0", "pp1", "ppmmu1", 260 "pp2", "ppmmu2"; 261 clocks = <&clkc CLKID_CLK81>, <&clkc CLKID_MALI>; 262 clock-names = "bus", "core"; 263 264 /* 265 * Mali clocking is provided by two identical clock paths 266 * MALI_0 and MALI_1 muxed to a single clock by a glitch 267 * free mux to safely change frequency while running. 268 */ 269 assigned-clocks = <&clkc CLKID_GP0_PLL>, 270 <&clkc CLKID_MALI_0_SEL>, 271 <&clkc CLKID_MALI_0>, 272 <&clkc CLKID_MALI>; /* Glitch free mux */ 273 assigned-clock-parents = <0>, /* Do Nothing */ 274 <&clkc CLKID_GP0_PLL>, 275 <0>, /* Do Nothing */ 276 <&clkc CLKID_MALI_0>; 277 assigned-clock-rates = <744000000>, 278 <0>, /* Do Nothing */ 279 <744000000>, 280 <0>; /* Do Nothing */ 281 }; 282}; 283 284&cbus { 285 spifc: spi@8c80 { 286 compatible = "amlogic,meson-gxbb-spifc"; 287 reg = <0x0 0x08c80 0x0 0x80>; 288 #address-cells = <1>; 289 #size-cells = <0>; 290 clocks = <&clkc CLKID_SPI>; 291 status = "disabled"; 292 }; 293}; 294 295&cec_AO { 296 clocks = <&clkc_AO CLKID_AO_CEC_32K>; 297 clock-names = "core"; 298}; 299 300&clkc_AO { 301 compatible = "amlogic,meson-gxbb-aoclkc", "amlogic,meson-gx-aoclkc"; 302 clocks = <&xtal>, <&clkc CLKID_CLK81>; 303 clock-names = "xtal", "mpeg-clk"; 304}; 305 306&efuse { 307 clocks = <&clkc CLKID_EFUSE>; 308}; 309 310ðmac { 311 clocks = <&clkc CLKID_ETH>, 312 <&clkc CLKID_FCLK_DIV2>, 313 <&clkc CLKID_MPLL2>; 314 clock-names = "stmmaceth", "clkin0", "clkin1"; 315}; 316 317&gpio_intc { 318 compatible = "amlogic,meson-gpio-intc", 319 "amlogic,meson-gxbb-gpio-intc"; 320 status = "okay"; 321}; 322 323&hdmi_tx { 324 compatible = "amlogic,meson-gxbb-dw-hdmi", "amlogic,meson-gx-dw-hdmi"; 325 resets = <&reset RESET_HDMITX_CAPB3>, 326 <&reset RESET_HDMI_SYSTEM_RESET>, 327 <&reset RESET_HDMI_TX>; 328 reset-names = "hdmitx_apb", "hdmitx", "hdmitx_phy"; 329 clocks = <&clkc CLKID_HDMI_PCLK>, 330 <&clkc CLKID_CLK81>, 331 <&clkc CLKID_GCLK_VENCI_INT0>; 332 clock-names = "isfr", "iahb", "venci"; 333}; 334 335&sysctrl { 336 clkc: clock-controller { 337 compatible = "amlogic,gxbb-clkc"; 338 #clock-cells = <1>; 339 clocks = <&xtal>; 340 clock-names = "xtal"; 341 }; 342}; 343 344&hwrng { 345 clocks = <&clkc CLKID_RNG0>; 346 clock-names = "core"; 347}; 348 349&i2c_A { 350 clocks = <&clkc CLKID_I2C>; 351}; 352 353&i2c_AO { 354 clocks = <&clkc CLKID_AO_I2C>; 355}; 356 357&i2c_B { 358 clocks = <&clkc CLKID_I2C>; 359}; 360 361&i2c_C { 362 clocks = <&clkc CLKID_I2C>; 363}; 364 365&periphs { 366 pinctrl_periphs: pinctrl@4b0 { 367 compatible = "amlogic,meson-gxbb-periphs-pinctrl"; 368 #address-cells = <2>; 369 #size-cells = <2>; 370 ranges; 371 372 gpio: bank@4b0 { 373 reg = <0x0 0x004b0 0x0 0x28>, 374 <0x0 0x004e8 0x0 0x14>, 375 <0x0 0x00520 0x0 0x14>, 376 <0x0 0x00430 0x0 0x40>; 377 reg-names = "mux", "pull", "pull-enable", "gpio"; 378 gpio-controller; 379 #gpio-cells = <2>; 380 gpio-ranges = <&pinctrl_periphs 0 0 119>; 381 }; 382 383 emmc_pins: emmc { 384 mux { 385 groups = "emmc_nand_d07", 386 "emmc_cmd", 387 "emmc_clk"; 388 function = "emmc"; 389 bias-disable; 390 }; 391 }; 392 393 emmc_ds_pins: emmc-ds { 394 mux { 395 groups = "emmc_ds"; 396 function = "emmc"; 397 bias-disable; 398 }; 399 }; 400 401 emmc_clk_gate_pins: emmc_clk_gate { 402 mux { 403 groups = "BOOT_8"; 404 function = "gpio_periphs"; 405 bias-pull-down; 406 }; 407 }; 408 409 nor_pins: nor { 410 mux { 411 groups = "nor_d", 412 "nor_q", 413 "nor_c", 414 "nor_cs"; 415 function = "nor"; 416 bias-disable; 417 }; 418 }; 419 420 spi_pins: spi-pins { 421 mux { 422 groups = "spi_miso", 423 "spi_mosi", 424 "spi_sclk"; 425 function = "spi"; 426 bias-disable; 427 }; 428 }; 429 430 spi_ss0_pins: spi-ss0 { 431 mux { 432 groups = "spi_ss0"; 433 function = "spi"; 434 bias-disable; 435 }; 436 }; 437 438 sdcard_pins: sdcard { 439 mux { 440 groups = "sdcard_d0", 441 "sdcard_d1", 442 "sdcard_d2", 443 "sdcard_d3", 444 "sdcard_cmd", 445 "sdcard_clk"; 446 function = "sdcard"; 447 bias-disable; 448 }; 449 }; 450 451 sdcard_clk_gate_pins: sdcard_clk_gate { 452 mux { 453 groups = "CARD_2"; 454 function = "gpio_periphs"; 455 bias-pull-down; 456 }; 457 }; 458 459 sdio_pins: sdio { 460 mux { 461 groups = "sdio_d0", 462 "sdio_d1", 463 "sdio_d2", 464 "sdio_d3", 465 "sdio_cmd", 466 "sdio_clk"; 467 function = "sdio"; 468 bias-disable; 469 }; 470 }; 471 472 sdio_clk_gate_pins: sdio_clk_gate { 473 mux { 474 groups = "GPIOX_4"; 475 function = "gpio_periphs"; 476 bias-pull-down; 477 }; 478 }; 479 480 sdio_irq_pins: sdio_irq { 481 mux { 482 groups = "sdio_irq"; 483 function = "sdio"; 484 bias-disable; 485 }; 486 }; 487 488 uart_a_pins: uart_a { 489 mux { 490 groups = "uart_tx_a", 491 "uart_rx_a"; 492 function = "uart_a"; 493 bias-disable; 494 }; 495 }; 496 497 uart_a_cts_rts_pins: uart_a_cts_rts { 498 mux { 499 groups = "uart_cts_a", 500 "uart_rts_a"; 501 function = "uart_a"; 502 bias-disable; 503 }; 504 }; 505 506 uart_b_pins: uart_b { 507 mux { 508 groups = "uart_tx_b", 509 "uart_rx_b"; 510 function = "uart_b"; 511 bias-disable; 512 }; 513 }; 514 515 uart_b_cts_rts_pins: uart_b_cts_rts { 516 mux { 517 groups = "uart_cts_b", 518 "uart_rts_b"; 519 function = "uart_b"; 520 bias-disable; 521 }; 522 }; 523 524 uart_c_pins: uart_c { 525 mux { 526 groups = "uart_tx_c", 527 "uart_rx_c"; 528 function = "uart_c"; 529 bias-disable; 530 }; 531 }; 532 533 uart_c_cts_rts_pins: uart_c_cts_rts { 534 mux { 535 groups = "uart_cts_c", 536 "uart_rts_c"; 537 function = "uart_c"; 538 bias-disable; 539 }; 540 }; 541 542 i2c_a_pins: i2c_a { 543 mux { 544 groups = "i2c_sck_a", 545 "i2c_sda_a"; 546 function = "i2c_a"; 547 bias-disable; 548 }; 549 }; 550 551 i2c_b_pins: i2c_b { 552 mux { 553 groups = "i2c_sck_b", 554 "i2c_sda_b"; 555 function = "i2c_b"; 556 bias-disable; 557 }; 558 }; 559 560 i2c_c_pins: i2c_c { 561 mux { 562 groups = "i2c_sck_c", 563 "i2c_sda_c"; 564 function = "i2c_c"; 565 bias-disable; 566 }; 567 }; 568 569 eth_rgmii_pins: eth-rgmii { 570 mux { 571 groups = "eth_mdio", 572 "eth_mdc", 573 "eth_clk_rx_clk", 574 "eth_rx_dv", 575 "eth_rxd0", 576 "eth_rxd1", 577 "eth_rxd2", 578 "eth_rxd3", 579 "eth_rgmii_tx_clk", 580 "eth_tx_en", 581 "eth_txd0", 582 "eth_txd1", 583 "eth_txd2", 584 "eth_txd3"; 585 function = "eth"; 586 bias-disable; 587 }; 588 }; 589 590 eth_rmii_pins: eth-rmii { 591 mux { 592 groups = "eth_mdio", 593 "eth_mdc", 594 "eth_clk_rx_clk", 595 "eth_rx_dv", 596 "eth_rxd0", 597 "eth_rxd1", 598 "eth_tx_en", 599 "eth_txd0", 600 "eth_txd1"; 601 function = "eth"; 602 bias-disable; 603 }; 604 }; 605 606 pwm_a_x_pins: pwm_a_x { 607 mux { 608 groups = "pwm_a_x"; 609 function = "pwm_a_x"; 610 bias-disable; 611 }; 612 }; 613 614 pwm_a_y_pins: pwm_a_y { 615 mux { 616 groups = "pwm_a_y"; 617 function = "pwm_a_y"; 618 bias-disable; 619 }; 620 }; 621 622 pwm_b_pins: pwm_b { 623 mux { 624 groups = "pwm_b"; 625 function = "pwm_b"; 626 bias-disable; 627 }; 628 }; 629 630 pwm_d_pins: pwm_d { 631 mux { 632 groups = "pwm_d"; 633 function = "pwm_d"; 634 bias-disable; 635 }; 636 }; 637 638 pwm_e_pins: pwm_e { 639 mux { 640 groups = "pwm_e"; 641 function = "pwm_e"; 642 bias-disable; 643 }; 644 }; 645 646 pwm_f_x_pins: pwm_f_x { 647 mux { 648 groups = "pwm_f_x"; 649 function = "pwm_f_x"; 650 bias-disable; 651 }; 652 }; 653 654 pwm_f_y_pins: pwm_f_y { 655 mux { 656 groups = "pwm_f_y"; 657 function = "pwm_f_y"; 658 bias-disable; 659 }; 660 }; 661 662 hdmi_hpd_pins: hdmi_hpd { 663 mux { 664 groups = "hdmi_hpd"; 665 function = "hdmi_hpd"; 666 bias-disable; 667 }; 668 }; 669 670 hdmi_i2c_pins: hdmi_i2c { 671 mux { 672 groups = "hdmi_sda", "hdmi_scl"; 673 function = "hdmi_i2c"; 674 bias-disable; 675 }; 676 }; 677 678 i2sout_ch23_y_pins: i2sout_ch23_y { 679 mux { 680 groups = "i2sout_ch23_y"; 681 function = "i2s_out"; 682 bias-disable; 683 }; 684 }; 685 686 i2sout_ch45_y_pins: i2sout_ch45_y { 687 mux { 688 groups = "i2sout_ch45_y"; 689 function = "i2s_out"; 690 bias-disable; 691 }; 692 }; 693 694 i2sout_ch67_y_pins: i2sout_ch67_y { 695 mux { 696 groups = "i2sout_ch67_y"; 697 function = "i2s_out"; 698 bias-disable; 699 }; 700 }; 701 702 spdif_out_y_pins: spdif_out_y { 703 mux { 704 groups = "spdif_out_y"; 705 function = "spdif_out"; 706 bias-disable; 707 }; 708 }; 709 }; 710}; 711 712&pwrc_vpu { 713 resets = <&reset RESET_VIU>, 714 <&reset RESET_VENC>, 715 <&reset RESET_VCBUS>, 716 <&reset RESET_BT656>, 717 <&reset RESET_DVIN_RESET>, 718 <&reset RESET_RDMA>, 719 <&reset RESET_VENCI>, 720 <&reset RESET_VENCP>, 721 <&reset RESET_VDAC>, 722 <&reset RESET_VDI6>, 723 <&reset RESET_VENCL>, 724 <&reset RESET_VID_LOCK>; 725 clocks = <&clkc CLKID_VPU>, 726 <&clkc CLKID_VAPB>; 727 clock-names = "vpu", "vapb"; 728 /* 729 * VPU clocking is provided by two identical clock paths 730 * VPU_0 and VPU_1 muxed to a single clock by a glitch 731 * free mux to safely change frequency while running. 732 * Same for VAPB but with a final gate after the glitch free mux. 733 */ 734 assigned-clocks = <&clkc CLKID_VPU_0_SEL>, 735 <&clkc CLKID_VPU_0>, 736 <&clkc CLKID_VPU>, /* Glitch free mux */ 737 <&clkc CLKID_VAPB_0_SEL>, 738 <&clkc CLKID_VAPB_0>, 739 <&clkc CLKID_VAPB_SEL>; /* Glitch free mux */ 740 assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>, 741 <0>, /* Do Nothing */ 742 <&clkc CLKID_VPU_0>, 743 <&clkc CLKID_FCLK_DIV4>, 744 <0>, /* Do Nothing */ 745 <&clkc CLKID_VAPB_0>; 746 assigned-clock-rates = <0>, /* Do Nothing */ 747 <666666666>, 748 <0>, /* Do Nothing */ 749 <0>, /* Do Nothing */ 750 <250000000>, 751 <0>; /* Do Nothing */ 752}; 753 754&saradc { 755 compatible = "amlogic,meson-gxbb-saradc", "amlogic,meson-saradc"; 756 clocks = <&xtal>, 757 <&clkc CLKID_SAR_ADC>, 758 <&clkc CLKID_SAR_ADC_CLK>, 759 <&clkc CLKID_SAR_ADC_SEL>; 760 clock-names = "clkin", "core", "adc_clk", "adc_sel"; 761}; 762 763&sd_emmc_a { 764 clocks = <&clkc CLKID_SD_EMMC_A>, 765 <&clkc CLKID_SD_EMMC_A_CLK0>, 766 <&clkc CLKID_FCLK_DIV2>; 767 clock-names = "core", "clkin0", "clkin1"; 768 resets = <&reset RESET_SD_EMMC_A>; 769}; 770 771&sd_emmc_b { 772 clocks = <&clkc CLKID_SD_EMMC_B>, 773 <&clkc CLKID_SD_EMMC_B_CLK0>, 774 <&clkc CLKID_FCLK_DIV2>; 775 clock-names = "core", "clkin0", "clkin1"; 776 resets = <&reset RESET_SD_EMMC_B>; 777}; 778 779&sd_emmc_c { 780 clocks = <&clkc CLKID_SD_EMMC_C>, 781 <&clkc CLKID_SD_EMMC_C_CLK0>, 782 <&clkc CLKID_FCLK_DIV2>; 783 clock-names = "core", "clkin0", "clkin1"; 784 resets = <&reset RESET_SD_EMMC_C>; 785}; 786 787&spicc { 788 clocks = <&clkc CLKID_SPICC>; 789 clock-names = "core"; 790 resets = <&reset RESET_PERIPHS_SPICC>; 791 num-cs = <1>; 792}; 793 794&spifc { 795 clocks = <&clkc CLKID_SPI>; 796}; 797 798&uart_A { 799 clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>; 800 clock-names = "xtal", "pclk", "baud"; 801}; 802 803&uart_AO { 804 clocks = <&xtal>, <&clkc_AO CLKID_AO_UART1>, <&xtal>; 805 clock-names = "xtal", "pclk", "baud"; 806}; 807 808&uart_AO_B { 809 clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>; 810 clock-names = "xtal", "pclk", "baud"; 811}; 812 813&uart_B { 814 clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>; 815 clock-names = "xtal", "pclk", "baud"; 816}; 817 818&uart_C { 819 clocks = <&xtal>, <&clkc CLKID_UART2>, <&xtal>; 820 clock-names = "xtal", "pclk", "baud"; 821}; 822 823&vpu { 824 compatible = "amlogic,meson-gxbb-vpu", "amlogic,meson-gx-vpu"; 825 power-domains = <&pwrc_vpu>; 826}; 827