hc
2023-11-20 3c9370f7b6bffd697c9907a7139e9df5b0d4b9df
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
* Hisilicon Hi3660 Clock Controller
 
The Hi3660 clock controller generates and supplies clock to various
controllers within the Hi3660 SoC.
 
Required Properties:
 
- compatible: the compatible should be one of the following strings to
   indicate the clock controller functionality.
 
   - "hisilicon,hi3660-crgctrl"
   - "hisilicon,hi3660-pctrl"
   - "hisilicon,hi3660-pmuctrl"
   - "hisilicon,hi3660-sctrl"
   - "hisilicon,hi3660-iomcu"
   - "hisilicon,hi3660-stub-clk"
 
- reg: physical base address of the controller and length of memory mapped
  region.
 
- #clock-cells: should be 1.
 
Optional Properties:
 
- mboxes: Phandle to the mailbox for sending message to MCU.
            (See: ../mailbox/hisilicon,hi3660-mailbox.txt for more info)
 
Each clock is assigned an identifier and client nodes use this identifier
to specify the clock which they consume.
 
All these identifier could be found in <dt-bindings/clock/hi3660-clock.h>.
 
Examples:
   crg_ctrl: clock-controller@fff35000 {
       compatible = "hisilicon,hi3660-crgctrl", "syscon";
       reg = <0x0 0xfff35000 0x0 0x1000>;
       #clock-cells = <1>;
   };
 
   uart0: serial@fdf02000 {
       compatible = "arm,pl011", "arm,primecell";
       reg = <0x0 0xfdf02000 0x0 0x1000>;
       interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
       clocks = <&crg_ctrl HI3660_CLK_MUX_UART0>,
            <&crg_ctrl HI3660_PCLK>;
       clock-names = "uartclk", "apb_pclk";
   };