Добрый день! Просьба помочь в такой ситуации: Разведена и изготовлена печатная плата, имеющая на борту Eth Switch KSZ8895FQX, ревизия A4. Надо сделать три медных и два оптических порта. Чтобы порт 3 стал оптическим, надо определенным образом настроить регистры свитча. Именно эти настройки можно сделать только через внешний интерфейс. Простейший вариант - загрузить по I2C из EEPROM. Если свитч "видит" м/сх памяти, он загружает регистры из этой памяти, если не видит - работает по внутренним настройкам. EEPROM используем 24LC02B .
В итоге, если EEPROM отсутствует, свитч прекрасно работает по внутренним настройкам, но один оптический порт (порт 3) у нас отпадает. Остальные три медных (порт 1, 2, 5) и один оптический (порт 4) работают.Если EEPROM установлена, загрузка начинается через раз, после чего обрывается примерно на полпути. После битья в бубен выяснилось, что если в ячейку EEPROM 0x7B записать 80, загрузка идет стабильно каждый раз и проходит предположительно (судя по продолжительности и тактовой частоте) до конца. Правда, работать свитч вообще не начинает. Про эту ячейку нашли из информации только вот это: 0x79-0x7B Reserved (Factory Testing Registers). Содержимое нигде не указано. Но ведь мы должны туда записать что-то конкретное, раз эта информация влияет на поведение устройства. Может, у ког-то просто есть возможность сгенерить правильный файл для загрузки. Есть софт, поставляемый с Evaluation Board, но платы у нас нет, а без платы он нужный файл не генерирует. Или, может есть файл для просто близкого варианта, чтобы почитать эти "неиспользуемые" области. В общем, тупичок. В поддержку Micrel, теперь это у Microchip с этим есть смысл соваться?
|