Доброго времени суток!
На нашей плате стоит проц LPC1788 драйвер PHY ksz8721, включен по схеме для работы по RMII. Поднял на всем этом web-сервер от RL-ARM, веб-приложение хранится на флешке и весит порядка 500 кБ (html + java-скрипты и запросы AJAX для динамичного отображения данных, CSS и т.п. поэтому многововато вышло). Всё работает, но почему то иногда случается, что не все файлы нашего веб-приложения загружаются (когда смотрю в FireBug, ингда на запрос файла сервер дает отбой). Где то в 4-ех случаях из 5 все работает нормально, все файлы загружаются и все работает, но вот иногда серер дает отбой на запрос некоторых файлов. Может кто-нибудь сталкивался с подобной проблемой и подскажет чего. Буду признателен.
И второй вопрос. Пару раз случалось такое, что ksz8721 не отзывалось на запросы по RMII. Если, кто работал, то наверное замечал, что в этом случае программа будет долго проставить в цикле в ожидании ответа при инициализации (кончено это в том случае, если драйвер не самописный а станадартный). Как позже выяснилось виной тому было, что адрес базового регистра микросхемы PHY (PHY adress) не был равен тому адресу, который я задефайнил. Я хреновый схемтехник (по правде говоря вообще никакой), поэтому может чего не понимаю. Но в мануале на ksz8721 ясно написано, что этот адрес микросхема считвает с ног RXD0-3 и INT при подаче питания, после чтого запоминает его (это вроде как для того, чтобы на один MAC посадить несколько PHY). Из чего следует логичный вывод о том, что эти ноги надо подтянуть к конкретному значению. Но на нашей схеме ноги RXD0 и RXD1 ни к чему не подтянуты (но подключены к процессору для работы по RMII). Я дефайнил значение базового регистра так, как будто на этих ногах логическая "1", и все работает, но странности пару раз возникали. И проц и PHY стартуют в одно вермя, может ли такое быть, что адрес базового регистра PHY установится каким то рандомным образом из за этого?