6db4831e98
Android 14
56 lines
1.9 KiB
Plaintext
56 lines
1.9 KiB
Plaintext
* Samsung S3C2443 Clock Controller
|
|
|
|
The S3C2443 clock controller generates and supplies clock to various controllers
|
|
within the SoC. The clock binding described here is applicable to all SoCs in
|
|
the s3c24x family starting with the s3c2443.
|
|
|
|
Required Properties:
|
|
|
|
- compatible: should be one of the following.
|
|
- "samsung,s3c2416-clock" - controller compatible with S3C2416 SoC.
|
|
- "samsung,s3c2443-clock" - controller compatible with S3C2443 SoC.
|
|
- "samsung,s3c2450-clock" - controller compatible with S3C2450 SoC.
|
|
- reg: physical base address of the controller and length of memory mapped
|
|
region.
|
|
- #clock-cells: should be 1.
|
|
|
|
Each clock is assigned an identifier and client nodes can use this identifier
|
|
to specify the clock which they consume. Some of the clocks are available only
|
|
on a particular SoC.
|
|
|
|
All available clocks are defined as preprocessor macros in
|
|
dt-bindings/clock/s3c2443.h header and can be used in device
|
|
tree sources.
|
|
|
|
External clocks:
|
|
|
|
There are several clocks that are generated outside the SoC. It is expected
|
|
that they are defined using standard clock bindings with following
|
|
clock-output-names:
|
|
- "xti" - crystal input - required,
|
|
- "ext" - external clock source - optional,
|
|
- "ext_i2s" - external I2S clock - optional,
|
|
- "ext_uart" - external uart clock - optional,
|
|
|
|
Example: Clock controller node:
|
|
|
|
clocks: clock-controller@4c000000 {
|
|
compatible = "samsung,s3c2416-clock";
|
|
reg = <0x4c000000 0x40>;
|
|
#clock-cells = <1>;
|
|
};
|
|
|
|
Example: UART controller node that consumes the clock generated by the clock
|
|
controller (refer to the standard clock bindings for information about
|
|
"clocks" and "clock-names" properties):
|
|
|
|
serial@50004000 {
|
|
compatible = "samsung,s3c2440-uart";
|
|
reg = <0x50004000 0x4000>;
|
|
interrupts = <1 23 3 4>, <1 23 4 4>;
|
|
clock-names = "uart", "clk_uart_baud2",
|
|
"clk_uart_baud3";
|
|
clocks = <&clocks PCLK_UART0>, <&clocks PCLK_UART0>,
|
|
<&clocks SCLK_UART>;
|
|
};
|