요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
NAND support for Marvell Orion SoC platforms
Required properties:
- compatible : "marvell,orion-nand".
- reg : Base physical address of the NAND and length of memory mapped
region
Optional properties:
- cle : Address line number connected to CLE. Default is 0
- ale : Address line number connected to ALE. Default is 1
- bank-width : Width in bytes of the device. Default is 1
- chip-delay : Chip dependent delay for transferring data from array to read
registers in usecs
The device tree may optionally contain sub-nodes describing partitions of the
address space. See mtd.yaml for more detail.
Example:
nand@f4000000 {
#address-cells = <1>;
#size-cells = <1>;
cle = <0>;
ale = <1>;
bank-width = <1>;
chip-delay = <25>;
compatible = "marvell,orion-nand";
reg = <0xf4000000 0x400>;
partition@0 {
label = "u-boot";
reg = <0x0000000 0x100000>;
read-only;
};
partition@100000 {
label = "uImage";
reg = <0x0100000 0x200000>;
};
partition@300000 {
label = "dtb";
reg = <0x0300000 0x100000>;
};
partition@400000 {
label = "root";
reg = <0x0400000 0x7d00000>;
};
};
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
Marvell Orion NAND
1-2이 문서는 Marvell Orion SoC platform의 NAND 지원 바인딩입니다.
Compatible과 memory-mapped 범위
3-7필수 `compatible`은 `marvell,orion-nand`이고 `reg`는 NAND의 physical base address와 memory-mapped 영역 길이입니다.
CLE·ALE·width·delay 기본값
8-17선택 `cle`는 CLE에 연결된 address line 번호이며 기본값은 0, `ale`는 ALE line 번호이며 기본값은 1입니다. `bank-width`는 byte 단위 device width이며 기본값은 1입니다.
`chip-delay`는 array에서 read register로 data를 옮기는 chip별 delay를 microsecond 단위로 지정합니다.
Address space partition subnode를 선택적으로 둘 수 있으며 자세한 형식은 `mtd.yaml`을 따릅니다.
생략 가능한 line과 bus width의 기본 설정입니다.
Orion boot partition map
18-50예제는 `0xf4000000`의 NAND에 CLE 0, ALE 1, 1-byte bus와 25µs chip delay를 설정합니다. Partition은 read-only `u-boot`, `uImage`, `dtb`, `root` 순서입니다.
예제의 네 flash 영역입니다.
nand@f4000000 {
#address-cells = <1>;
#size-cells = <1>;
cle = <0>;
ale = <1>;
bank-width = <1>;
chip-delay = <25>;
compatible = "marvell,orion-nand";
reg = <0xf4000000 0x400>;
partition@0 {
label = "u-boot";
reg = <0x0000000 0x100000>;
read-only;
};
partition@100000 {
label = "uImage";
reg = <0x0100000 0x200000>;
};
partition@300000 {
label = "dtb";
reg = <0x0300000 0x100000>;
};
partition@400000 {
label = "root";
reg = <0x0400000 0x7d00000>;
};
};
요약과 해설
orion-nand.txt:1-50u-boot·uImage·DTB·root partition 예제를 설명합니다.