요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
Binding for the HSDK Generic PLL clock
This binding uses the common clock binding[1].
[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
Required properties:
- compatible: should be "snps,hsdk-<name>-pll-clock"
"snps,hsdk-core-pll-clock"
"snps,hsdk-gp-pll-clock"
"snps,hsdk-hdmi-pll-clock"
- reg : should contain base register location and length.
- clocks: shall be the input parent clock phandle for the PLL.
- #clock-cells: from common clock binding; Should always be set to 0.
Example:
input_clk: input-clk {
clock-frequency = <33333333>;
compatible = "fixed-clock";
#clock-cells = <0>;
};
cpu_clk: cpu-clk@0 {
compatible = "snps,hsdk-core-pll-clock";
reg = <0x00 0x10>;
#clock-cells = <0>;
clocks = <&input_clk>;
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
HSDK Generic PLL 속성
1-15HSDK Generic PLL clock 바인딩
이 바인딩은 공통 clock 바인딩 `Documentation/devicetree/bindings/clock/clock-bindings.txt`를 사용합니다.
필수 `compatible` 형식은 `snps,hsdk-<name>-pll-clock`이며 정의된 값은 `snps,hsdk-core-pll-clock`, `snps,hsdk-gp-pll-clock`, `snps,hsdk-hdmi-pll-clock`입니다.
`reg`에는 base register 위치와 길이, `clocks`에는 PLL input parent clock phandle을 지정합니다. `#clock-cells`는 항상 0입니다.
Fixed input clock이 선택한 HSDK PLL output을 만드는 흐름입니다.
HSDK core PLL 예
16-28예제는 33.333333 MHz fixed input을 0x00의 core PLL에 연결합니다.
input_clk: input-clk {
clock-frequency = <33333333>;
compatible = "fixed-clock";
#clock-cells = <0>;
};
cpu_clk: cpu-clk@0 {
compatible = "snps,hsdk-core-pll-clock";
reg = <0x00 0x10>;
#clock-cells = <0>;
clocks = <&input_clk>;
};
요약과 해설
snps,hsdk-pll-clock.txt:1-28Fixed input과 단일 PLL register 영역의 연결을 설명합니다.