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

 
 
> DM365 и RTL8201, не работает
/dev/null
сообщение Dec 1 2010, 10:07
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 17-11-06
Пользователь №: 22 438



Доброго дня!
Имеется самодельная плата с процессором DM365 и сетевой Realtek RTL8201, в работе используется linux-2.6.18_pro500, из состава SDK, и u-boot 1.3.4.
Слегка модифицировав u-boot я добился работающего ping-а, к сожалению tftp пока не работает.
Но более приоретным является работоспособность сети в Linux, драйвер davinci_emac от TI видит чип, но смонтировать файловую систему по NFS не может, NFS-сервер в это время работает.
Из странного в работе - постоянно горит индикатор линка, но при попытке монтирования файловой сети он тухнет.
Привожу лог загрузки, касающейся сети:
Код
Linux version 2.6.18_pro500-davinci_evm-arm_v5t_le-gb43d9841-dirty (kirill@kirill) (gcc version 4.2.0 (MontaVista 4.2.0-16.0.32.0801914 2008-08-30)) #1 PREEMPT Mon Nov 29 12:55:40 MSK 2010
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
Machine: DaVinci DM365 EVM
...............................................
Kernel command line: console=ttyS0,115200n8 noinitrd rw eth=00:01:02:03:04:05 ip=192.168.10.254:192.168.10.3:::arm:eth0:off root=/dev/nfs nfsroot=192.168.10.3:/home/kirill/nfs/rootfs,nolock
TI DaVinci EMAC: kernel boot params Ethernet address: 00:01:02:03:04:05
....................................................
Generic PHY: Registered new driver
......................................................
RTL8201PHY: Starting realtek_init.
Realtel RTL8201: Registered new driver
Davinci EMAC MII Bus: probed
i2c_davinci i2c_davinci.1: timeout waiting for bus ready
i2c_davinci i2c_davinci.1: timeout waiting for bus ready
i2c_davinci i2c_davinci.1: timeout waiting for bus ready
i2c_davinci i2c_davinci.1: timeout waiting for bus ready
MAC address is 02:00:10:00:00:00
TI DaVinci EMAC Linux version updated 4.0
...............................................
IPv4 over IPv4 tunneling driver
TCP bic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
...........................................
RTL8201PHY: Starting rtl8201_config_init.
found Realtek RTL8201 PHY
IP-Config: Guessing netmask 255.255.255.0
IP-Config: Complete:
      device=eth0, addr=192.168.10.254, mask=255.255.255.0, gw=255.255.255.255,
     host=arm, domain=, nis-domain=(none),
     bootserver=192.168.10.3, rootserver=192.168.10.3, rootpath=
Looking up port of RPC 100003/2 on 192.168.10.3
portmap: server 192.168.10.3 not responding, timed out
Root-NFS: Unable to get nfsd port number from server, using default
Looking up port of RPC 100005/1 on 192.168.10.3
portmap: server 192.168.10.3 not responding, timed out
Root-NFS: Unable to get mountd port number from server, using default
mount: server 192.168.10.3 not responding, timed out
Root-NFS: Server returned error -5 while mounting /home/kirill/nfs/rootfs
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or unknown-block(2,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)

Строки начинающиеся на RTL8201PHY являются выводом из моей попытки дописать работу с RTL8201 к Generic PHY.
Может кто-нибудь решил эту проблему?
Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
/dev/null
сообщение Dec 2 2010, 09:33
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 17-11-06
Пользователь №: 22 438



Код
#define PHY_ID_MASK        0xfffffff0
#define LXT971_ID        0x001378e0
#define KSZ8893MQL_ID    0x00221430
#define RTL8201_ID      0x8201

static int emac_phy_init(struct emac_dev *dev, u8 phy_num, u8 *phy_cnt,
             u8 *phy_max)
{
    char phy_id[BUS_ID_SIZE];

    snprintf(phy_id, BUS_ID_SIZE, PHY_ID_FMT, 1, phy_num);

    dev->phydev[phy_num] = phy_connect(dev->owner, phy_id,
        &emac_update_phy_status, 0, PHY_INTERFACE_MODE_MII);
    if (IS_ERR(dev->phydev[phy_num])) {
        if (dev->phydev[phy_num] == ERR_PTR(-ENODEV))
            dev->phydev[phy_num] = NULL;
        return PTR_ERR(dev->phydev[phy_num]);
    }

    dev->phydev[phy_num]->supported = PHY_BASIC_FEATURES;

    if (dev->init_cfg.gigabit)
        dev->phydev[phy_num]->supported |= SUPPORTED_1000baseT_Full;

    dev->phydev[phy_num]->advertising = dev->phydev[phy_num]->supported;

    if ((dev->phydev[phy_num]->phy_id & PHY_ID_MASK) == LXT971_ID) {
        /*
         * CRITICAL: Fix for increasing PHY signal drive strength for
         * TX lockup issue. On DaVinci EVM, the Intel LXT971 PHY
         * signal strength was low causing TX to fail randomly. The
         * fix is to Set bit 11 (Increased MII drive strength) of PHY
         * register 26 (Digital Config register) on this phy.
         */
        int control;

        pr_info("applying Intel LTX971 workaround..\n");

        control = phy_read(dev->phydev[phy_num], 26);
        phy_write(dev->phydev[phy_num], 26, (control | 0x800));
        phy_read(dev->phydev[phy_num], 26);
    } else if ((dev->phydev[phy_num]->phy_id & PHY_ID_MASK) ==
            KSZ8893MQL_ID) {
        /*
         * KSZ8893MQL is a layer 2 switch that connects to EMAC via
         * MII.  The MII setting is required to be fixed with autoneg
         * off, 100Mbps, and full duplex.  This happens to be the
         * settings and behavior when phy_mode is set to SNWAY_NOPHY.
         * Therefore, we set the phy_mode to SNWAY_NOPHY whenever
         * KSZ8893MQL is detected.
         */
        dev->init_cfg.phy_mode = SNWAY_NOPHY;

        /* The third phy is used for MII, so only expect 2 phys */
        *phy_max = 2;
    } else if ((dev->phydev[phy_num]->phy_id & 0xffff) == RTL8201_ID) {
        pr_info("found Realtek RTL8201 PHY\n");
        //dev->init_cfg.phy_mode = SNWAY_NOPHY;
    }

    *phy_cnt = *phy_cnt + 1;
    phy_start(dev->phydev[phy_num]);

    return 0;
}

PHY обнаруживается, при загрузке я вижу строку "found Realtek RTL8201 PHY".

Сообщение отредактировал /dev/null - Dec 2 2010, 09:34
Go to the top of the page
 
+Quote Post
sasamy
сообщение Dec 2 2010, 10:08
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 783
Регистрация: 22-11-08
Пользователь №: 41 858



Цитата(/dev/null @ Dec 2 2010, 12:33) *
PHY обнаруживается, при загрузке я вижу строку "found Realtek RTL8201 PHY".


Смотрите драйвер изернет - включите отладочную информацию тогда ясно будет почему он линк гасит, как вы понимаете проблема не может быть в ничего не делающем драйвере smile.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- /dev/null   DM365 и RTL8201   Dec 1 2010, 10:07
- - sasamy   Цитата(/dev/null @ Dec 1 2010, 13:07) NFS...   Dec 1 2010, 17:47
- - /dev/null   Абсолютно. Код$ ps aux | grep nfs | grep -v g...   Dec 2 2010, 06:43
|- - sasamy   Цитата(/dev/null @ Dec 2 2010, 09:43) Фай...   Dec 2 2010, 08:19
- - /dev/null   В U-Boot без драйвера не работало ничего, сейчас х...   Dec 2 2010, 08:41
|- - sasamy   Цитата(/dev/null @ Dec 2 2010, 11:41) В U...   Dec 2 2010, 09:04
- - /dev/null   Я разве утверждаю, что в драйвере делаю что-то сло...   Dec 2 2010, 09:14
|- - sasamy   Цитата(/dev/null @ Dec 2 2010, 12:14) Я р...   Dec 2 2010, 09:23
- - /dev/null   Уважаемые, не сочтите за труд, посмотрите на прави...   Dec 2 2010, 11:47
|- - sasamy   Цитата(/dev/null @ Dec 2 2010, 14:47) Ува...   Dec 2 2010, 14:39
- - /dev/null   Читал я этот файл. Повторю ещё раз - не работает в...   Dec 2 2010, 15:24
- - Arischenko Ivan   Покажите : cat /etc/exports   Dec 3 2010, 09:13
- - /dev/null   /home/kirill/nfs/rootfs 192.168.10.254(rw,no_root_...   Dec 3 2010, 09:33
- - Arischenko Ivan   У меня работает при таких параметрах : linuxworld...   Dec 3 2010, 09:47
- - /dev/null   Нет, проблема не в NFS, специально перепроверил с ...   Dec 3 2010, 10:41
- - Arischenko Ivan   Есть тема на форуме http://electronix.ru/forum/ind...   Dec 3 2010, 12:50
- - /dev/null   Решил проблему. Оказалось, что RTL8201 не очень хо...   Dec 7 2010, 10:23
- - sasamy   Цитата(/dev/null @ Dec 7 2010, 13:23) суд...   Dec 7 2010, 12:22


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

 


RSS Текстовая версия Сейчас: 11th August 2025 - 20:43
Рейтинг@Mail.ru


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