요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
* Hisilicon Hi3670 Clock Controller
The Hi3670 clock controller generates and supplies clock to various
controllers within the Hi3670 SoC.
Required Properties:
- compatible: the compatible should be one of the following strings to
indicate the clock controller functionality.
- "hisilicon,hi3670-crgctrl"
- "hisilicon,hi3670-pctrl"
- "hisilicon,hi3670-pmuctrl"
- "hisilicon,hi3670-sctrl"
- "hisilicon,hi3670-iomcu"
- "hisilicon,hi3670-media1-crg"
- "hisilicon,hi3670-media2-crg"
- 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 use this identifier
to specify the clock which they consume.
All these identifier could be found in <dt-bindings/clock/hi3670-clock.h>.
Examples:
crg_ctrl: clock-controller@fff35000 {
compatible = "hisilicon,hi3670-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 HI3670_CLK_GATE_UART0>,
<&crg_ctrl HI3670_PCLK>;
clock-names = "uartclk", "apb_pclk";
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Hi3670 clock controller 속성
1-28HiSilicon Hi3670 Clock Controller
Hi3670 clock controller는 Hi3670 SoC 안의 여러 controller에 clock을 생성하여 공급합니다.
기능에 따른 필수 `compatible`은 `hisilicon,hi3670-crgctrl`, `hisilicon,hi3670-pctrl`, `hisilicon,hi3670-pmuctrl`, `hisilicon,hi3670-sctrl`, `hisilicon,hi3670-iomcu`, `hisilicon,hi3670-media1-crg`, `hisilicon,hi3670-media2-crg` 중 하나입니다.
`reg`에는 controller의 physical base address와 memory-mapped region 길이를 지정합니다. `#clock-cells`는 1이어야 합니다.
각 clock에는 identifier가 할당되고 client node는 소비할 clock을 이 identifier로 지정합니다. identifier는 `<dt-bindings/clock/hi3670-clock.h>`에 정의되어 있습니다.
Clock controller block별 compatible 값을 정리합니다.
CRG와 UART0 consumer 예
29-43예제는 Hi3670 CRG의 UART0 gate clock과 peripheral clock을 PL011 UART에 연결합니다.
crg_ctrl: clock-controller@fff35000 {
compatible = "hisilicon,hi3670-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 HI3670_CLK_GATE_UART0>,
<&crg_ctrl HI3670_PCLK>;
clock-names = "uartclk", "apb_pclk";
};
요약과 해설
hi3670-clock.txt:1-43Controller block별 compatible과 UART0 gate/peripheral clock을 설명합니다.