← Ethernet 상세 목차DUJINLABS.COM

Hardware · Ethernet detailed manual 09 · Linux v6.18.37

9. Realtek RTL8211F의 paged register와 RGMII delay를 읽는다

RTL8211F PHY ID 0x001cc916과 Linux realtek driver를 기준으로 page select, RGMII TX/RX delay, ALDPS, CLKOUT, PHY-mode EEE, interrupt, WOL과 LED 설정을 살펴봅니다. 공개 문서로 의미가 확인되지 않는 vendor magic value는 이름을 만들어 설명하지 않습니다.

상세 표
2
검증 행
18
절차
5 checkpoints
기준
IEEE 802.3 · phylib/phylink · Linux v6.18.37

CHAPTER 09

9. Realtek RTL8211F의 paged register와 RGMII delay를 읽는다

RTL8211F PHY ID 0x001cc916과 Linux realtek driver를 기준으로 page select, RGMII TX/RX delay, ALDPS, CLKOUT, PHY-mode EEE, interrupt, WOL과 LED 설정을 살펴봅니다. 공개 문서로 의미가 확인되지 않는 vendor magic value는 이름을 만들어 설명하지 않습니다.

paged access

RTL8211F vendor register는 page select 0x1f를 통해 접근합니다. Linux의 phy_read_paged/phy_modify_paged helper가 원래 page 복원과 bus lock을 담당합니다.

RGMII page

Linux driver는 page 0xd08의 TXCR 0x11 bit 8과 RXCR 0x15 bit 3으로 TX/RX delay를 독립 제어합니다.

초기화 순서

rtl8211f_config_init은 ALDPS 설정, RGMII delay, CLKOUT 설정을 적용하고 PHY-mode EEE를 꺼 LPI 처리를 MAC 쪽으로 넘깁니다.

모델 구분

RTL8211F, RTL8211F-VD와 다른 RTL8211 계열은 PHY ID와 일부 CLKOUT page가 다릅니다. 비슷한 이름의 register sequence를 그대로 복사하지 않습니다.

레지스터와 관측값을 함께 읽는 표

항목소유 블록설정 또는 의미정상 증거실패 해석
PHYID1/PHYID2C22 0x02/0x03RTL8211F exact ID 0x001cc916Linux driver가 F 모델로 bindE/FD/VD 또는 generic driver 오인
PAGE_SELECT 0x1fvendor page gateway현재 extended pagehelper 종료 후 기존 page 복원다른 thread가 잘못된 page read
TXCR 0x11page 0xd08TX delay bit 8rgmii-txid/id에서 setTX timing 오류 또는 중복 delay
RXCR 0x15page 0xd08RX delay bit 3rgmii-rxid/id에서 setRX CRC와 sampling margin
PHYCR1/PHYCR2RTL8211F PHY control pageALDPS와 PHY EEE/CLKOUT 관련 상태firmware 속성과 driver 정책 일치절전 후 link/clock 복귀 문제
INER/INSRinterrupt page 0xa43link event enable/statusINT pin과 event가 대응ack되지 않은 latched status
WOL/LED pages0xd8a/0xd04 계열PME event와 3개 LED mode요청 기능만 enableLED를 실제 link 증거로 오판

증상에서 첫 실패 경계를 찾는 표

관측 증상직전 통과 증거우선 확인반증 시험판정
page read 값이 매번 다름C22 기본 register 정상page lock과 page restorepaged helper만 사용해 반복 readMDIO 동시 접근/page 경계
RX CRC만 증가copper symbol 정상0xd08 RX delay와 phy-modeRX delay bit on/off와 partner counter 비교RGMII RX timing
상대에서만 CRC 증가local RX 정상0xd08 TX delayTX delay bit와 PCB skew 비교RGMII TX timing
suspend 후 crystal/link 복귀 실패cold boot 정상ALDPS/CLKOUT와 WOL policyALDPS off 및 wake source 비교PHY power lifecycle
EEE에서만 latency/link flapEEE off 정상PHYCR2와 MAC LPI ownershipPHY-mode EEE/MAC EEE를 분리 시험EEE 책임 중복
F용 설정이 VD에서 실패PHY family는 인식exact PHY ID와 CLKOUT pageID별 driver entry/sequence 비교model variant 경계
그림 1. 9. Realtek RTL8211F의 paged register와 RGMII delay를 읽는다의 실행 순서왼쪽에서 오른쪽으로 실제 소유권과 관찰 지점이 이동합니다.
01 PHY ID exact match
02 rtl8211f_probe
03 paged access
04 ALDPS
05 RGMII TX/RX delay
06 CLKOUT
07 PHY EEE policy
08 interrupt/link

실제 검증 절차

순서실행남길 증거판정 목적
1PHY ID와 Linux bound driver 이름을 먼저 저장합니다.exact model/revisionvariant 구분
2page 0xd08의 TXCR/RXCR을 config_init 전후 비교합니다.phy-mode→delay bit 대응RGMII 책임 확인
3모든 vendor page read 뒤 page 0 복원 여부를 검증합니다.page select trace동시 접근 안정성
4ALDPS, CLKOUT, EEE를 하나씩 바꾸며 suspend/resume와 link 시간을 측정합니다.기능별 latency/실패율power 경계 분리
5LED와 INSR이 아니라 MAC good/CRC와 PHY status로 최종 판정합니다.counter ladder표시 기능 오판 방지

주의RTL8211F vendor page에는 공개 자료로 의미를 확정하기 어려운 값이 있습니다. Linux 소스가 'undocumented' 또는 magic value로 다루는 값에 임의의 bit 이름을 붙이지 않습니다.

공개적으로 다시 확인할 수 있는 자료

공개되지 않은 vendor register나 integration별 offset을 추측해서 채우지 않았습니다. 아래 제조사 자료, architecture 문서와 Linux v6.18.37 원본에서 다시 확인할 수 있는 범위만 사용했습니다.

Linux phylink

PHY, fixed-link, in-band PCS와 MAC callback의 관계