Меню сайта
Категории каталога
Прикручиваем сетевуху D-Link DGE530T rev-B1 под FreeBSD 6.1-RELEASE-p10 [2008]
Прикупили в сервак сетевуху - D-Link DGE530T. В списке поддерживаемого железа она была. Тока вот определяться не захотела :).
/usr/home/lissyara/>dmesg | grep "ethernet"
pci5: <network, ethernet> at device 0 .0 (no driver attached)
/usr/home/lissyara/>
/usr/home/lissyara/>pciconf -lv | \
? grep --after-context=2 --before-context=1 "D-Link System Inc"
none5@pci5:1 :0 : class=0x020000 card=0x4b011186 chip=0x4b011186 rev=0x11 hdr=0x00
vendor = 'D-Link System Inc'
class = network
subclass = ethernet
/usr/home/lissyara/>
Негусто. Неизвестный науке девайс... Почему - понял довольно быстро, поддержка была для D-Link DGE530T, а у меня была D-Link DGE530T rev-B1. Гугление и яндексение дало ссылку . Правда патч не подходил. У меня была:
/usr/home/lissyara/>uname -a
FreeBSD router.local 6 .1 -RELEASE-p10 FreeBSD 6 .1 -RELEASE-p10
#0: Fri Oct 27 19:06:39 MSD 2006
root@router.local :/usr/obj/usr/src/sys/main-smp i386
/usr/home/lissyara/>
а там был первый релиз. Файлики успели поменяться. Поэтому пришлось сделать тоже самое руками, итог такой:
/usr/src/sys/pci/>diff -Naur if_sk.c.orig if_sk.c
--- if_sk.c.orig Mon Oct 30 10 :17 :35 2006
+++ if_sk.c Mon Oct 30 10 :23 :06 2006
@@ -175 ,6 +175 ,11 @@
DEVICEID_DLINK_DGE530T,
"D-Link DGE-530T Gigabit Ethernet"
},
+ {
+ VENDORID_DLINK,
+ DEVICEID_DLINK_DGE530T_B1,
+ "D-Link DGE-530T Gigabit Ethernet , Rev.B1"
+ },
{ 0 , 0 , NULL }
};
@@ -1723 ,6 +1728 ,9 @@
case SK_PMD_1000BASETX:
sc->sk_pmd = IFM_1000_T;
break ;
+ case DLGE_PMD_1000BASETX:
+ sc->sk_pmd = IFM_1000_T;
+ break ;
default :
printf("skc%d: unknown media type: 0x%x\n",
sc->sk_unit, sk_win_read_1(sc, SK_PMDTYPE));
@@ -1738 ,6 +1746 ,7 @@
case DEVICEID_3COM_3C940:
case DEVICEID_LINKSYS_EG1032:
case DEVICEID_DLINK_DGE530T:
+ case DEVICEID_DLINK_DGE530T_B1:
/* Stay with VPD PN. */
pname = sc->sk_vpd_prodname;
break ;
/usr/src/sys/pci/>
/usr/src/sys/pci/>diff -Naur if_skreg.h.orig if_skreg.h
--- if_skreg.h.orig Sun Nov 6 19 :00 :54 2005
+++ if_skreg.h Mon Oct 30 10 :41 :03 2006
@@ -117 ,7 +117 ,7 @@
* D-Link gigabit ethernet device ID
*/
#define DEVICEID_DLINK_DGE530T 0x4c00
-
+#define DEVICEID_DLINK_DGE530T_B1 0x4b01
/*
* GEnesis registers. The GEnesis chip has a 256 -byte I/O window
* but internally it has a 16K register space. This 16K space is
@@ -427 ,6 +427 ,8 @@
#define SK_PMD_1000BASESX 0x53
#define SK_PMD_1000BASECX 0x43
#define SK_PMD_1000BASETX 0x54
+#define DLGE_PMD_1000BASETX 0x31
+
/* GPIO bits */
#define SK_GPIO_DAT0 0x00000001
/usr/src/sys/pci/>
После пересборки ядра (он у меня не модулем, а в ядре) и перезагрузки, обнаружился новый девайс:
/usr/home/lissyara/>dmesg | grep --after-context=6 "D-Link DGE-530T"
skc0: <D-Link DGE-530T Gigabit Ethernet , Rev.B1> port 0x8000-0x80ff
mem 0xf0400000-0xf0403fff irq 22 at device 1 .0 on pci5
skc0: DGE-530T Gigabit Ethernet Adapter rev. (0x9)
sk0: <Marvell Semiconductor, Inc. Yukon> on skc0
sk0: Ethernet address : 00 :17 :9a:06 :0a:36
miibus2: <MII bus> on sk0
e1000phy0: <Marvell 88E1000 Gigabit PHY> on miibus2
e1000phy0: 10baseT, 10baseT-FDX, 100baseTX , 100baseTX-FDX, 1000baseTX-FDX, auto
/usr/home/lissyara/>
/usr/home/lissyara/>pciconf -lv | \
? grep --after-context=2 --before-context=1 "D-Link System Inc"
skc0@pci5:1 :0 : class=0x020000 card=0x4b011186 chip=0x4b011186 rev=0x11 hdr=0x00
vendor = 'D-Link System Inc'
class = network
subclass = ethernet
/usr/home/lissyara/>
/usr/home/lissyara/>ifconfig sk0
sk0: flags =8802 <BROADCAST ,SIMPLEX,MULTICAST> mtu 1500
options =8 <VLAN_MTU>
ether 00 :17 :9a:06 :0a:36
media : Ethernet autoselect (none)
status : no carrier
/usr/home/lissyara/>
Ну и всё :) Будем надеяться, что поддержку скоро добавят в драйвер официально.
Источник: http://www.lissyara.su/?id=1271
Категория: Работа с железом | Добавил: oleg (19.06.2008) | Автор: lissyara
Просмотров: 1286 | Рейтинг: 0.0 /0 |
- Оценить -
Отлично
Хорошо
Неплохо
Плохо
Ужасно
Добавлять комментарии могут только зарегистрированные пользователи.
[
Регистрация |
Вход ]
Форма входа
Друзья сайта