Автор Тема: Индикация ethernet порта  (Прочитано 1360 раз)

Оффлайн StaLeWaR

Индикация ethernet порта
« : Март 21, 2016, 03:08:18 pm »
Добрый день.

Наткнулся в Курилке на интересную тему:
Продвинутое моргание светодиодом (LED triggers) - http://orangepi.pp.ua/index.php/topic,284.0.html

Там к сожалению нету упоминания про индикацию работы Ethernet.
Открыв схематику от Pi PC видно что за это отвечают порты процессора A2(EPHY_LINK_LED) и F7(EPHY_SPD_LED) которые по сути дергают ногой на землю для индикации работы светодиода.
Реально ли переназначить на эту функцию свободные порты GPIO ?


Оффлайн ua3prq

  • Новичок
  • *
  • Сообщений: 18
  • Лайков: 7
  • Карма: +1/-0
  • RPiB, CB2, CB3, OPiPC
    • Просмотр профиля
Re: Индикация ethernet порта
« Ответ #1 : Март 21, 2016, 03:55:22 pm »
В смысле задача стоит вывести именно эти сигналы, но на другие порты GPIO?

Настройка этих функций читается из script.bin, т.е. что именно выводить на LED, программируется там. Сами функции мониторинга видимо есть функции ядра, это не аппаратная особенность проца. Теоретически можно вывести на RJ-45 леды пульс монитор или обращение к SD, например.
« Последнее редактирование: Март 21, 2016, 03:57:00 pm от ua3prq »

Оффлайн StaLeWaR

Re: Индикация ethernet порта
« Ответ #2 : Март 21, 2016, 04:21:20 pm »
немножко наоборот.  :)

Мне нужно индикацию с ethernet порта получить на гребенке gpio

Оффлайн AlDemin

  • Житель
  • ****
  • Сообщений: 402
  • Лайков: 101
  • Карма: +13/-1
  • OPi, OPi+, OPiOne, OPiZero, OPiPC2, BPi, RPiB.
    • Просмотр профиля
Re: Индикация ethernet порта
« Ответ #3 : Март 21, 2016, 06:56:35 pm »
Напрямую вряд ли получится, светодиоды на RJ45 похоже железно завязаны на физику езернета, а вот заставить мигать какой ни будь светодиод на gpio в такт передачи данных средствами ОСи думаю можно.

Оффлайн StaLeWaR

Re: Индикация ethernet порта
« Ответ #4 : Март 21, 2016, 07:28:26 pm »
Напрямую вряд ли получится, светодиоды на RJ45 похоже железно завязаны на физику езернета, а вот заставить мигать какой ни будь светодиод на gpio в такт передачи данных средствами ОСи думаю можно.

Эт почему?
Мне так видится что обработка этих сигналов идет на уровне процессора. Хотя я могу и ошибаться  :)

AlDemin,С какой стороны зайти к этому вопросу?

Оффлайн ua3prq

  • Новичок
  • *
  • Сообщений: 18
  • Лайков: 7
  • Карма: +1/-0
  • RPiB, CB2, CB3, OPiPC
    • Просмотр профиля
Re: Индикация ethernet порта
« Ответ #5 : Март 22, 2016, 07:29:23 am »
Напрямую вряд ли получится, светодиоды на RJ45 похоже железно завязаны на физику езернета
Посмотрел повнимательнее по схеме- так и есть. Оба LED завязаны на аппаратную логику EPHY контроллера (встроенного в CPU). Индикация формируется без поддержки ПО. Можно, конечно, что-то изобретать напрямую обращаясь к регистрам управления сетью, но это чисто гипотетически.
GPIO здесь в помощь.

Оффлайн AlDemin

  • Житель
  • ****
  • Сообщений: 402
  • Лайков: 101
  • Карма: +13/-1
  • OPi, OPi+, OPiOne, OPiZero, OPiPC2, BPi, RPiB.
    • Просмотр профиля
Re: Индикация ethernet порта
« Ответ #6 : Март 22, 2016, 08:40:19 am »
Можно к примеру следить за счетчиком прерываний от езернета, и соответственно подмигивать в такт gpio портом.

Оффлайн StaLeWaR

Re: Индикация ethernet порта
« Ответ #7 : Март 22, 2016, 02:21:57 pm »
Это все изза RGMII, в ней убрали индикацию.
Пруфф - https://ru.wikipedia.org/wiki/RGMII




Оффлайн AlDemin

  • Житель
  • ****
  • Сообщений: 402
  • Лайков: 101
  • Карма: +13/-1
  • OPi, OPi+, OPiOne, OPiZero, OPiPC2, BPi, RPiB.
    • Просмотр профиля
Re: Индикация ethernet порта
« Ответ #8 : Март 22, 2016, 03:36:27 pm »
RGMII в PC не используется, только в ПЛЮС-ах
У плюсов своя внешняя гиабитная физика со своей индикацией.
А на PC используется 100-мегабитный интерфейс встроенный в проц со своей индикацией.
Система этими лампочками не управляет и не видит их.
Хочешь следить за сигналами из системы - брось перемычку со светодиода на gpio разверни его не ввод и опрашивай.
Хотя абсолютно не вижу смысла в твоей затее.
Может то что ты хочешь легче решить другим способом?

Оффлайн StaLeWaR

Re: Индикация ethernet порта
« Ответ #9 : Март 22, 2016, 03:42:57 pm »
Да решить можно.
Мне достаточно получить индикацию состояния линка. Сделать это можно уймой способов.
Но недостаток этих решений в том что они работают userspace т.е. уже после инициализации системы а не на уровне ядра.

Оффлайн StaLeWaR

Re: Индикация ethernet порта
« Ответ #10 : Март 23, 2016, 08:02:24 am »
Может то что ты хочешь легче решить другим способом?

Ты наверное прав. Нету смысла. Состояние сети можно получить уже и на работающей системе.  ;)
Для этого достаточно
root@OrangePI:# cat /sys/devices/platform/gmac0/net/eth0/operstate
up

И обрабатывать уже это состояние как угодно.

Оффлайн ua3prq

  • Новичок
  • *
  • Сообщений: 18
  • Лайков: 7
  • Карма: +1/-0
  • RPiB, CB2, CB3, OPiPC
    • Просмотр профиля
Re: Индикация ethernet порта
« Ответ #11 : Март 23, 2016, 10:09:11 am »
+1