Добрый день. Возникла проблема с загрузкой через u-boot по сети на плате, разработанной на базе Xilinx ml300 (Virtex-2P). К сожалению пока не знаю в какую сторону копать.
И так, подробнее - есть плата, на базе ml300, к ней есть прошивка для плис и образ linux'а, но устанавливается ОС через последовательный порт. Есть желание сделать загрузку через сеть. Есть конфигурация U-Boot (сделана не мной, досталось в наследство), которая не работает. Собираю эту конфигурацию, прогружаю в плис, появляется консоль, mii device - пусто (нет интерфейсов). Начал разбираться в чем дело, оказалось что init драйвера xilinx_enet (как я понимаю, именно он нужен) не вызывается, вставил в ручную, не работает send(init отрабатывает корректно), виснет на отправке (не дожидается готовности передатчика после записи данных). Начал вчитываться в код драйвера, не увидел вызова инициализации PHY (LXT971A), но в драйвер входит заголовочный файл, где есть макросы для включения и перезапуска PHY.Добавил их. В итоге все равно не заработало. Думаю, что проблема с PHY. К сожалению нет большого опыта работы с физикой ethernet'a, больше по USB и UART работал. Прошу подскажите как завести сеть, PHY, или проверить почему U-BOOT не отрабатывает или подскажите как работать руками с PHY. Как я понял в плис используется PLB Ethernet 10/100 Mbps Media Access Controller кора. Спасибо.
P.S. при работе с базовыми адресами ethernet'a все вроде отрабатывает(содержимое регистров похоже на правду) , а вот если попробовать прочесть регистры PHY то данные не похожи на корректные.
Сообщение отредактировал =MG= - Sep 10 2014, 16:57
|