KSZ9031용 쓰기 레지스터

KSZ9031용 쓰기 레지스터

이런 시나리오에 직면한 것은 이번이 처음이었고 그것이 가능한지 몰랐습니다. 올바른 키워드를 사용하지 않았기 때문에 검색에 실패했습니다.

임베디드 Linux 보드에서는 이더넷 컨트롤러가KSZ9031RNX. 사용자 공간에서 내부 레지스터에 쓸 수 있습니까?

3.8 10/100Mbps 속도만 해당

일부 애플리케이션에서는 링크 속도가 10/100Mbps로 제한되어야 합니다. 전원을 켜거나 재설정한 후 다음 레지스터 설정을 프로그래밍하기만 하면 KSZ9031RNX는 자동 협상 및 링크 속도를 최대 10/100Mbps로 제한할 수 있습니다.

  1. 1000Mbps 속도를 제거하려면 레지스터 0h Bit[6] = '0'을 설정합니다.
  2. 1000Mbps 전이중/반이중에 대한 자동 협상 알림을 제거하려면 레지스터 9h Bits[9:8] = '00'을 설정합니다.
  3. 자동 협상을 강제로 다시 시작하려면 레지스터 0h, Bit[9](자체 지우기 비트)에 '1'을 씁니다.

명령줄에서 이 레지스터에 쓸 수 있습니까?

답변1

이는 불가능할 수도 있고, 그래서도 안 됩니다. 하드웨어를 작동하는 것은 운전자의 임무입니다.

ethtoolLinux에는 속도 및 자동 협상을 포함하여 이더넷 인터페이스의 매개변수에 대한 다양한 작업을 수행할 수 있는 명령이 있습니다 . 장치 드라이버가 합리적으로 잘 작성되었다면 이러한 작업을 지원해야 합니다.

다만, 저는 귀하와 유사한 상황을 직접 경험한 바가 없어 자세한 설명을 드릴 수는 없습니다. 귀하의 필요에 맞을 때까지 약간의 실험을 거쳐야 합니다.

관련 정보