| // SPDX-License-Identifier: GPL-2.0 |
| /dts-v1/; |
| |
| #include "jz4770.dtsi" |
| #include <dt-bindings/clock/ingenic,tcu.h> |
| |
| / { |
| compatible = "gcw,zero", "ingenic,jz4770"; |
| model = "GCW Zero"; |
| |
| aliases { |
| serial0 = &uart0; |
| serial1 = &uart1; |
| serial2 = &uart2; |
| serial3 = &uart3; |
| }; |
| |
| chosen { |
| stdout-path = "serial2:57600n8"; |
| }; |
| |
| board { |
| compatible = "simple-bus"; |
| #address-cells = <1>; |
| #size-cells = <1>; |
| ranges; |
| |
| otg_phy: otg-phy { |
| compatible = "usb-nop-xceiv"; |
| clocks = <&cgu JZ4770_CLK_OTG_PHY>; |
| clock-names = "main_clk"; |
| }; |
| }; |
| }; |
| |
| &ext { |
| clock-frequency = <12000000>; |
| }; |
| |
| &uart2 { |
| status = "okay"; |
| }; |
| |
| &cgu { |
| /* Put high-speed peripherals under PLL1, such that we can change the |
| * PLL0 frequency on demand without having to suspend peripherals. |
| * We use a rate of 432 MHz, which is the least common multiple of |
| * 27 MHz (required by TV encoder) and 48 MHz (required by USB host). |
| */ |
| assigned-clocks = |
| <&cgu JZ4770_CLK_PLL1>, |
| <&cgu JZ4770_CLK_UHC>; |
| assigned-clock-parents = |
| <0>, |
| <&cgu JZ4770_CLK_PLL1>; |
| assigned-clock-rates = |
| <432000000>; |
| }; |
| |
| &uhc { |
| /* The WiFi module is connected to the UHC. */ |
| status = "okay"; |
| }; |
| |
| &tcu { |
| /* 750 kHz for the system timer and clocksource */ |
| assigned-clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER2>; |
| assigned-clock-rates = <750000>, <750000>; |
| |
| /* PWM1 is in use, so reserve channel #2 for the clocksource */ |
| ingenic,pwm-channels-mask = <0xfa>; |
| }; |