реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Принудительное включение режимов RTL8201, немного недорабатывает
S_agent
сообщение Jun 11 2009, 13:00
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 208
Регистрация: 6-10-05
Из: Ukraine, Kiev
Пользователь №: 9 300



cpu: IXP425, phy: RTL8201CP
IAL400, ethtool

Мануальный форсаж режимов без autonegotiation не работает, с autonegotiation все ок
если смотреть на линк с другой стороны то при установлении 100(10)-HD переходит в half duplex и обратно возвратить не возможно, только через включение autoneg
10-FD установить невозможно
сам же phy(по статусу) при этом находится в 10-FD
Встречал ли кто такую ситуацию или это у меня проблемы с драйвером?

статус вычитываю так:
Код
...                   ixEthAccMiiReadRtn(phyAddr,  IX_ETH_MII_STAT_REG, &statRegval);
     if(!autoneg) {
...
                  if(ixEthMiiPhyId[phyAddr] == IX_ETH_MII_RTL8201CP_PHY_ID) {

                                 ixEthAccMiiReadRtn(phyAddr, 0x19, &regval25);
                                 if(regval25&0x01)
                                         *speed100 = TRUE;
                                 *fullDuplex = ( (statRegval & (IX_ETH_MII_SR_10T_HALF_DPX|IX_ETH_MII_SR_TX_HALF_DPX)) != 0);

                         }
...
    }


И соответственно устанавка режимов:
Код
     if(speed100)
         regval |= 0x2000;
     if(fullDuplex)
         regval |= 0x0100;
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 16:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.02278 секунд с 7
ELECTRONIX ©2004-2016