Documentation/devicetree/bindings/mtd/ibm,ndfc.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings

AMCC NDFC

AMCC NDFC chip-select, configuration register와 partition 바인딩입니다.

Source pathDocumentation/devicetree/bindings/mtd/ibm,ndfc.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.

1. 요약·해설

원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.

요약과 해설

ibm,ndfc.txt:1-39

CCR·bank setting과 kernel·root partition 예제를 설명합니다.

2. 영어 원문 전체

번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.

원문 전체 펼치기
1 AMCC NDFC (NanD Flash Controller)
2
3 Required properties:
4 - compatible : "ibm,ndfc".
5 - reg : should specify chip select and size used for the chip (0x2000).
6
7 Optional properties:
8 - ccr : NDFC config and control register value (default 0).
9 - bank-settings : NDFC bank configuration register value (default 0).
10
11 Notes:
12 - partition(s) - follows the OF MTD standard for partitions
13
14 Example:
15
16 ndfc@1,0 {
17 compatible = "ibm,ndfc";
18 reg = <0x00000001 0x00000000 0x00002000>;
19 ccr = <0x00001000>;
20 bank-settings = <0x80002222>;
21 #address-cells = <1>;
22 #size-cells = <1>;
23
24 nand {
25 #address-cells = <1>;
26 #size-cells = <1>;
27
28 partition@0 {
29 label = "kernel";
30 reg = <0x00000000 0x00200000>;
31 };
32 partition@200000 {
33 label = "root";
34 reg = <0x00200000 0x03E00000>;
35 };
36 };
37 };
38
39
40

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.

AMCC NDFC

1-2

이 문서는 AMCC NDFC, 즉 NAND Flash Controller 바인딩입니다.

Chip-select와 bank configuration

3-13

필수 `compatible`은 `ibm,ndfc`이고 `reg`는 chip에 사용하는 chip-select와 크기 `0x2000`을 지정합니다.

선택 `ccr`은 NDFC configuration and control register 값이며 기본값은 0입니다. `bank-settings`는 NDFC bank configuration register 값이고 역시 기본값은 0입니다.

Partition은 OF MTD 표준 partition 형식을 따릅니다.

Kernel·root partition 예제

14-39

예제는 chip-select 1의 8KB NDFC에 `ccr = <0x00001000>`과 `bank-settings = <0x80002222>`를 설정합니다. NAND address space는 2MB `kernel`과 그 뒤 62MB `root` partition으로 나뉩니다.

NDFC partition map
Partition시작 / 크기
kernel0x00000000 / 0x00200000
root0x00200000 / 0x03E00000

예제의 kernel과 root 영역입니다.

ndfc@1,0 {
        compatible = "ibm,ndfc";
        reg = <0x00000001 0x00000000 0x00002000>;
        ccr = <0x00001000>;
        bank-settings = <0x80002222>;
        #address-cells = <1>;
        #size-cells = <1>;

        nand {
                #address-cells = <1>;
                #size-cells = <1>;

                partition@0 {
                        label = "kernel";
                        reg = <0x00000000 0x00200000>;
                };
                partition@200000 {
                        label = "root";
                        reg = <0x00200000 0x03E00000>;
                };
        };
};