← Documents Documentation/devicetree/bindings/spi/nuvoton,npcm-pspi.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / SPI

Nuvoton NPCM PSPI controller

NPCM PSPI의 interrupt, APB5 clock, pinctrl, reset과 chip-select를 설명합니다.

Source pathDocumentation/devicetree/bindings/spi/nuvoton,npcm-pspi.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

nuvoton,npcm-pspi.txt:1-36

NPCM PSPI의 interrupt, APB5 clock, pinctrl, reset과 chip-select를 설명합니다. 접을 수 있는 영어 원문 전체와 줄 좌표를 보존하고, 한국어 전문 번역에서는 compatible·property·phandle·interrupt/DMA 순서·수치·예제 코드를 원형대로 유지합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 Nuvoton NPCM Peripheral Serial Peripheral Interface(PSPI) controller driver
2
3 Nuvoton NPCM7xx SOC support two PSPI channels.
4
5 Required properties:
6 - compatible : "nuvoton,npcm750-pspi" for Poleg NPCM7XX.
7 "nuvoton,npcm845-pspi" for Arbel NPCM8XX.
8 - #address-cells : should be 1. see spi-bus.txt
9 - #size-cells : should be 0. see spi-bus.txt
10 - specifies physical base address and size of the register.
11 - interrupts : contain PSPI interrupt.
12 - clocks : phandle of PSPI reference clock.
13 - clock-names: Should be "clk_apb5".
14 - pinctrl-names : a pinctrl state named "default" must be defined.
15 - pinctrl-0 : phandle referencing pin configuration of the device.
16 - resets : phandle to the reset control for this device.
17 - cs-gpios: Specifies the gpio pins to be used for chipselects.
18 See: Documentation/devicetree/bindings/spi/spi-bus.txt
19
20 Optional properties:
21 - clock-frequency : Input clock frequency to the PSPI block in Hz.
22 Default is 25000000 Hz.
23
24 spi0: spi@f0200000 {
25 compatible = "nuvoton,npcm750-pspi";
26 reg = <0xf0200000 0x1000>;
27 pinctrl-names = "default";
28 pinctrl-0 = <&pspi1_pins>;
29 #address-cells = <1>;
30 #size-cells = <0>;
31 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
32 clocks = <&clk NPCM7XX_CLK_APB5>;
33 clock-names = "clk_apb5";
34 resets = <&rstc NPCM7XX_RESET_IPSRST2 NPCM7XX_RESET_PSPI1>
35 cs-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>;
36 };
37

3. 한국어 전문 번역

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

NPCM PSPI controller

1-4

Nuvoton NPCM Peripheral Serial Peripheral Interface(PSPI) controller driver binding입니다. NPCM7xx SoC는 PSPI channel 두 개를 지원합니다.

PSPI 필수 속성과 선택적 주파수

5-23

Poleg NPCM7XX는 `nuvoton,npcm750-pspi`, Arbel NPCM8XX는 `nuvoton,npcm845-pspi` compatible을 사용합니다. `#address-cells`는 1, `#size-cells`는 0이며 `spi-bus.txt`를 따릅니다.

원문에서 이름이 생략된 필수 항목은 physical register base address와 size를 지정하며 예제에서는 `reg`로 나타납니다. `interrupts`는 PSPI interrupt, `clocks`는 PSPI reference clock phandle이고 `clock-names`는 `clk_apb5`입니다.

`pinctrl-names`에 `default` state를 정의하고 `pinctrl-0`에서 pin configuration을 참조해야 합니다. `resets`는 장치 reset control phandle이며 `cs-gpios`는 chip-select GPIO pin을 지정합니다.

선택적 `clock-frequency`는 PSPI block input clock을 Hz 단위로 지정하며 기본값은 `25000000`Hz입니다.

원문 10행은 속성 이름을 적지 않았고 예제의 `reg`가 해당 역할을 합니다. 원문과 줄 좌표는 수정하지 않고 번역에서만 의미를 명확히 했습니다.

NPCM750 PSPI 예제

24-36

예제는 address `0xf0200000`, GIC SPI interrupt 31, APB5 clock, PSPI1 pin configuration과 reset, active-low chip-select GPIO를 연결합니다.

spi0: spi@f0200000 {
        compatible = "nuvoton,npcm750-pspi";
        reg = <0xf0200000 0x1000>;
        pinctrl-names = "default";
        pinctrl-0 = <&pspi1_pins>;
        #address-cells = <1>;
        #size-cells = <0>;
        interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
        clocks = <&clk NPCM7XX_CLK_APB5>;
        clock-names = "clk_apb5";
        resets = <&rstc NPCM7XX_RESET_IPSRST2 NPCM7XX_RESET_PSPI1>
        cs-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>;
};