← Documents Documentation/devicetree/bindings/spi/socionext,synquacer-spi.yaml GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / SPI

Socionext SynQuacer HS-SPI controller

SynQuacer HS-SPI의 core/rate clock, 세 interrupt와 RX retimed-clock option을 설명합니다.

Source pathDocumentation/devicetree/bindings/spi/socionext,synquacer-spi.yaml
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약과 해설

socionext,synquacer-spi.yaml:1-73

SynQuacer HS-SPI의 core/rate clock, 세 interrupt와 RX retimed-clock option을 설명합니다. 접을 수 있는 영어 원문 전체와 줄 좌표를 보존하고, 한국어 전문 번역에서는 compatible·property·phandle·interrupt·clock/DMA/reset 순서·수치·조건부 제약·예제 코드를 원형대로 유지합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/spi/socionext,synquacer-spi.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Socionext SynQuacer HS-SPI Controller
8
9 maintainers:
10 - Masahisa Kojima <[email protected]>
11 - Jassi Brar <[email protected]>
12
13 allOf:
14 - $ref: spi-controller.yaml#
15
16 properties:
17 compatible:
18 const: socionext,synquacer-spi
19
20 reg:
21 maxItems: 1
22
23 clocks:
24 minItems: 1
25 items:
26 - description: core clock
27 - description: rate clock
28
29 clock-names:
30 minItems: 1
31 items:
32 - const: iHCLK
33 - const: iPCLK
34
35 interrupts:
36 items:
37 - description: Receive Interrupt
38 - description: Transmit Interrupt
39 - description: Fault Interrupt
40
41 socionext,use-rtm:
42 type: boolean
43 description: Enable using "retimed clock" for RX
44
45 socionext,set-aces:
46 type: boolean
47 description: Enable same active clock edges field to be set
48
49 required:
50 - compatible
51 - reg
52 - interrupts
53 - clocks
54 - clock-names
55
56 unevaluatedProperties: false
57
58 examples:
59 - |
60 #include <dt-bindings/interrupt-controller/arm-gic.h>
61
62 spi@ff110000 {
63 compatible = "socionext,synquacer-spi";
64 reg = <0xff110000 0x1000>;
65 interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
66 <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
67 <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
68 clocks = <&clk_hsspi>;
69 clock-names = "iHCLK";
70 socionext,use-rtm;
71 socionext,set-aces;
72 };
73 ...
74

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

SynQuacer HS-SPI schema

1-15

이 GPL-2.0-only 또는 BSD-2-Clause YAML schema는 Socionext SynQuacer HS-SPI controller를 정의합니다. Schema ID는 `http://devicetree.org/schemas/spi/socionext,synquacer-spi.yaml#`이며 maintainer는 Masahisa Kojima와 Jassi Brar입니다.

공통 `spi-controller.yaml#` 속성을 상속합니다.

Compatible, register와 두 clock

16-34

`compatible`은 `socionext,synquacer-spi`로 고정되고 `reg`는 최대 한 항목입니다.

`clocks`는 최소 한 항목이며 core clock과 선택적인 rate clock 순서입니다. `clock-names`도 최소 한 항목이고 같은 순서로 `iHCLK`, `iPCLK`입니다.

세 interrupt와 RX clock option

35-48

`interrupts`는 receive, transmit, fault interrupt 세 항목을 순서대로 받습니다. Boolean `socionext,use-rtm`은 RX에 retimed clock을 사용하도록 하고, `socionext,set-aces`는 same active clock edges field를 설정하도록 합니다.

필수 속성과 추가 속성 제한

49-57

필수 속성은 `compatible`, `reg`, `interrupts`, `clocks`, `clock-names`입니다. `unevaluatedProperties: false`로 평가되지 않은 추가 속성을 금지합니다.

SynQuacer HS-SPI 예제

58-73

예제의 `spi@ff110000`은 register 길이 `0x1000`, receive·transmit·fault용 `GIC_SPI 160`, `GIC_SPI 161`, `GIC_SPI 162`, `iHCLK` core clock을 사용하고 두 Boolean option을 모두 활성화합니다. 마지막 `...`는 YAML document 종료 표기입니다.

#include <dt-bindings/interrupt-controller/arm-gic.h>

spi@ff110000 {
    compatible = "socionext,synquacer-spi";
    reg = <0xff110000 0x1000>;
    interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
           <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
           <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
    clocks = <&clk_hsspi>;
    clock-names = "iHCLK";
    socionext,use-rtm;
    socionext,set-aces;
};