← Documents Documentation/devicetree/bindings/net/cavium-mix.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings

Cavium Octeon MIX Ethernet

Octeon MIX의 개별·공유 AGL register bank와 interrupt routing binding입니다.

Source pathDocumentation/devicetree/bindings/net/cavium-mix.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

cavium-mix.txt:1-34

네 `reg` 항목의 순서와 `cell-index`가 공유 register 영역을 선택하는 방식을 설명합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 * MIX Ethernet controller.
2
3 Properties:
4 - compatible: "cavium,octeon-5750-mix"
5
6 Compatibility with all cn5XXX and cn6XXX SOCs populated with MIX
7 devices.
8
9 - reg: The base addresses of four separate register banks. The first
10 bank contains the MIX registers. The second bank the corresponding
11 AGL registers. The third bank are the AGL registers shared by all
12 MIX devices present. The fourth bank is the AGL_PRT_CTL shared by
13 all MIX devices present.
14
15 - cell-index: A single cell specifying which portion of the shared
16 register banks corresponds to this MIX device.
17
18 - interrupts: Two interrupt specifiers. The first is the MIX
19 interrupt routing and the second the routing for the AGL interrupts.
20
21 - phy-handle: Optional, see ethernet.txt file in the same directory.
22
23 Example:
24 ethernet@1070000100800 {
25 compatible = "cavium,octeon-5750-mix";
26 reg = <0x10700 0x00100800 0x0 0x100>, /* MIX */
27 <0x11800 0xE0000800 0x0 0x300>, /* AGL */
28 <0x11800 0xE0000400 0x0 0x400>, /* AGL_SHARED */
29 <0x11800 0xE0002008 0x0 0x8>; /* AGL_PRT_CTL */
30 cell-index = <1>;
31 interrupts = <1 18>, < 1 46>;
32 local-mac-address = [ 00 0f b7 10 63 54 ];
33 phy-handle = <&phy1>;
34 };
35

3. 한국어 전문 번역

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

MIX Ethernet controller

1-8

MIX Ethernet controller의 `compatible`은 `cavium,octeon-5750-mix`이며 MIX device가 탑재된 모든 cn5XXX와 cn6XXX SoC에 호환됩니다.

Register bank, index와 interrupt

9-22

`reg`에는 서로 분리된 네 register bank의 base address가 들어갑니다. 첫 번째는 MIX register, 두 번째는 대응하는 AGL register, 세 번째는 존재하는 모든 MIX device가 공유하는 AGL register, 네 번째는 모든 MIX device가 공유하는 `AGL_PRT_CTL`입니다.

`cell-index`는 공유 register bank에서 이 MIX device에 해당하는 부분을 지정하는 단일 cell입니다.

`interrupts`에는 두 interrupt specifier가 들어가며 첫 번째는 MIX interrupt routing, 두 번째는 AGL interrupt routing입니다. 선택 `phy-handle`은 같은 디렉터리의 `ethernet.txt`를 참조하십시오.

MIX reg 항목 순서
순서Register bank공유 범위
1MIX개별 device
2Corresponding AGL개별 device
3AGL_SHARED모든 MIX device
4AGL_PRT_CTL모든 MIX device

네 register bank의 순서는 binding 계약의 일부입니다.

Octeon MIX 예제

23-34

예제는 네 register bank, 공유 bank 부분 1, MIX와 AGL의 두 interrupt, local MAC address와 `phy1` handle을 지정합니다.

ethernet@1070000100800 {
        compatible = "cavium,octeon-5750-mix";
        reg = <0x10700 0x00100800 0x0 0x100>, /* MIX */
              <0x11800 0xE0000800 0x0 0x300>, /* AGL */
              <0x11800 0xE0000400 0x0 0x400>, /* AGL_SHARED  */
              <0x11800 0xE0002008 0x0 0x8>;   /* AGL_PRT_CTL */
        cell-index = <1>;
        interrupts = <1 18>, < 1 46>;
        local-mac-address = [ 00 0f b7 10 63 54 ];
        phy-handle = <&phy1>;
};