LinuxForum.Fans
Тема

Откуда можно скачать исходники CentOS 6.5

Автор: kerogaz 177 сообщений 20500 просмотров
#360055

Не надо цитировать, если ты отвечаешь только на последнее сообщение.

#360062
Vascom написал:
Не прописаны usb id для этого девайса.
У меня такая строка есть.
text
alias:          usb:v2001p1A02d*dc*dsc*dp*ic*isc*ip*in*

Как это добавить - гугли, я не знаю точно.

Прописывается в /etc/modprobe.d как отдельный файл но в каком формате фиг его знает. Если записать вашу строку то она не воспринимается

#360067

Попробуй добавить в /etc/modprobe.d файл asix.conf c таким содержимым:

text
alias usb:v2001p1A02d*dc*dsc*dp*ic*isc*ip*in* asix

Проверь, по команде

text
modprobe -R usb:v2001p1A02d*dc*dsc*dp*ic*isc*ip*in*

должен показывать asix.

#360068

У меня такое соображение. Может быть на ядре 2.6 драйвера старые а на Минте ядро 3.6 и драйвера там новые? Тогда почему не ставятся новые драйвера на ядро 2.6 которые есть на установочном диске?

text
make[1]: Entering directory `/usr/src/kernels/2.6.32-431.3.1.el6.x86_64'
make[1]: *** Нет правила для сборки цели `ether'.  Останов.
make[1]: Leaving directory `/usr/src/kernels/2.6.32-431.3.1.el6.x86_64'
make: *** [default] Ошибка 2

Это я уже на соседнем компе с таким же ядром попробовал их установить

#360069

На установочном диске старые драйвера для старых ядер. Они ни на что устанавливаться не будут. Забудь об этом.

Сделал алиас как я сказал в предыдущем посте?

#360072

У меня, с ядром 3.2.29, modinfo asix дает строку:

text
alias:          usb:v2001p1A00d*dc*dsc*dp*ic*isc*ip*

Она захардкожена в исходниках модуля как

text
static const struct usb_device_id    products [] = {
{
...
}, {
    // DLink DUB-E100
    USB_DEVICE (0x2001, 0x1a00),
    .driver_info =  (unsigned long) &dlink_dub_e100_info,
}

То есть, получается, у меня будет работать модификация этой карты, у которой PID 1a00.
У ТСа ядро 2.6.32, как уже говорили, модуль должен поддерживать эту карту. Но - увы, я пока вижу два пути: 1) обновить ядро и 2) пропатчить исходник и пересобрать модуль.

#360073
"kerogaz" написал:
почему не ставятся новые драйвера на ядро 2.6 которые есть на установочном диске?

Они для более старого ядра.

#360075
Vascom написал:
На установочном диске старые драйвера для старых ядер. Они ни на что устанавливаться не будут. Забудь об этом.

Сделал алиас как я сказал в предыдущем посте?

Сделал алиас.Перегрузил компьютер но ичего не изменилось. в modinfo asix нет вашй строки. Кроме того после кажой перезагрузки набор символов в строках меняется

#360076

После modinfo asix строка и не должна появиться.
Ну раз нет, так нет.
Либо обнови ядро, либо смени сетевую карту на поддерживаемую.

Ядро ты вряд ли пересоберёшь.

#360077
yars написал:
У меня, с ядром 3.2.29, modinfo asix дает строку:
text
alias:          usb:v2001p1A00d*dc*dsc*dp*ic*isc*ip*

Она

А такая строка у нас уже есть

text
 alias:          usb:v2001p1A00d*dc*dsc*dp*ic*isc*ip*

Но всё равно интерфейса не видно

#360081
"Vascom" написал:
Ядро ты вряд ли пересоберёшь.

Чего сложного-то: :)
1) Делаем

text
# cd usr/src/linux
# cp ./drivers/net/usb/asix.c ./drivers/net/usb/asix.c.orig

2) находим строку USB_DEVICE (0x2001, 0x1a00) в drivers/net/usb/asix.c
3) Делаем копию блока

text
{
    // DLink DUB-E100
    USB_DEVICE (0x2001, 0x1a00),
    .driver_info =  (unsigned long) &dlink_dub_e100_info,
}

меняем в нем 0x1a00 на 0x1a02, сохраняем файл.
3) Делаем патч:

text
diff -c ./drivers/net/usb/asix.c.orig ./drivers/net/usb/asix.c > patchik.diff

Получается нечто вроде:

text
# cat patchick.diff
*** ./drivers/net/usb/asix.c.orig    2014-01-13 13:55:49.714418939 +0400
--- ./drivers/net/usb/asix.c    2014-01-13 13:58:20.353182867 +0400
***************
*** 1568,1573 ****
--- 1568,1577 ----
      USB_DEVICE (0x2001, 0x1a00),
      .driver_info =  (unsigned long) &dlink_dub_e100_info,
  }, {
+     // DLink DUB-E100 (another)
+     USB_DEVICE (0x2001, 0x1a02),
+     .driver_info =  (unsigned long) &dlink_dub_e100_info,
+ }, {
      // Intellinet, ST Lab USB Ethernet
      USB_DEVICE (0x0b95, 0x1720),
      .driver_info =  (unsigned long) &ax8817x_info,

4) Пересобираем драйверы сети:

text
# zcat /proc/config.gz > .config
# make modules_prepare
# make drivers/net/usb/asix.ko
# make M=drivers/net/usb modules_install

5. Профит. Как-то так...

#360082

Полдня выясняли присутствует ли драйвер в системе.
yars, передаю поддержку на тебя.

#360086
"Vascom" написал:
yars, передаю поддержку на тебя

Ок :)
kerogaz, тогда выполняйте инструкции из сообщения 71. Можете воспользоваться моим патчем - скопируйте вот это:

text
*** ./drivers/net/usb/asix.c.orig    2014-01-13 13:55:49.714418939 +0400
--- ./drivers/net/usb/asix.c    2014-01-13 13:58:20.353182867 +0400
***************
*** 1568,1573 ****
--- 1568,1577 ----
      USB_DEVICE (0x2001, 0x1a00),
      .driver_info =  (unsigned long) &dlink_dub_e100_info,
  }, {
+     // DLink DUB-E100 (another)
+     USB_DEVICE (0x2001, 0x1a02),
+     .driver_info =  (unsigned long) &dlink_dub_e100_info,
+ }, {
      // Intellinet, ST Lab USB Ethernet
      USB_DEVICE (0x0b95, 0x1720),
      .driver_info =  (unsigned long) &ax8817x_info,

сохраните в файл /usr/src/linux/patchik.diff и выполните:

text
# patch -p1 --verbose patchik.diff

покажите вывод и, если патч подошел, то выполняйте из того сообщения пункт 4. Только конфиг ядра (.config, первая команда) положите в /usr/src/linux свой, у меня ядро собрано с

text
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y

а у вас нет, поэтому я могу брать конфиг ядра из работающего ядра и через /proc, и через /boot/config. В /boot конфиг не сжат ничем, поэтому его достаточно просто скопировать.

#360089

Я ядро пока не пересобирал но проверил устновку драйверов по инструкции
To verify if the DUB-E100 driver is properly installed:
• Load the DUB-E100 module by the following command:
[root@localhost linux2.6.14_rev101]# modprobe asix
• List the loaded modules with the specified pattern “asix”:

text
[root@localhost linux2.6.14_rev101]#lsmod | grep asix
Then you should get the reply similar to the following lines:
asix 26880 0
usbnet 20616 1 asix
mii 9600 2 asix,e100
usbcore 114896 5 asix,usbnet,usb_storage,echi_hcd,uhci_hcd

Так у меня последней строчки вообще нет а в предпоследней строчке вместо e100 стоит usbnet

#360094

Эта инструкция от какой версии ядра? У меня:

text
# modprobe --verbose asix
insmod /lib/modules/3.2.29-smp/kernel/drivers/net/usb/asix.ko 
# dmesg | tail
[ 4927.996043] cdc_acm 1-5:1.0: This device cannot do calls on its own. It is not a modem.
[ 4927.996245] cdc_acm 1-5:1.0: ttyACM0: USB ACM device
[ 4927.998380] cdc_ether 1-5:1.3: usb0: register 'cdc_ether' at usb-0000:00:1d.7-5, CDC Ethernet Device, 02:07:5c:57:33:33
[ 4988.257559] usbcore: deregistering interface driver cdc_ether
[ 4988.264113] cdc_ether 1-5:1.3: usb0: unregister 'cdc_ether' usb-0000:00:1d.7-5, CDC Ethernet Device
[ 4988.264935] libfcoe_device_notification: NETDEV_UNREGISTER usb0
[ 4989.729558] cdc_ether 1-5:1.3: usb0: register 'cdc_ether' at usb-0000:00:1d.7-5, CDC Ethernet Device, 02:07:5c:57:33:33
[ 4989.736491] usbcore: registered new interface driver cdc_ether
[ 5000.562011] usb0: no IPv6 routers present
[31743.843707] usbcore: registered new interface driver asix # Вот ОН
# modinfo asix | grep 2001
alias:          usb:v2001p3C05d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v2001p1A02d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v2001p1A00d*dc*dsc*dp*ic*isc*ip*
# lsmod | grep asix
asix                   13375  0 
usbnet                 12926  2 cdc_ether,asix
mii                     3335  2 usbnet,asix
#360096
yars написал:
Эта инструкция от какой версии ядра? У меня:
text
# modprobe --verbose asix
insmod /lib/modules/3.2.29-smp/kernel/drivers/net/usb/asix.ko 
# dmesg | tail
[ 4927.996043] cdc_acm 1-5:1.0: This device cannot do calls on its own. It is not a modem.
[ 4927.996245] cdc_acm 1-5:1.0: ttyACM0: USB ACM device
[ 4927.998380] cdc_ether 1-5:1.3: usb0: register 'cdc_ether' at usb-0000:00:1d.7-5, CDC Ethernet Device, 02:07:5c:57:33:33
[ 4988.257559] usbcore: deregistering interface driver cdc_ether
[ 4988.264113] cdc_ether 1-5:1.3: usb0: unregister 'cdc_ether' usb-0000:00:1d.7-5, CDC Ethernet Device
[ 4988.264935] libfcoe_device_notification: NETDEV_UNREGISTER usb0
[ 4989.729558] cdc_ether 1-5:1.3: usb0: register 'cdc_ether' at usb-0000:00:1d.7-5, CDC Ethernet Device, 02:07:5c:57:33:33
[ 4989.736491] usbcore: registered new interface driver cdc_ether
[ 5000.562011] usb0: no IPv6 routers present
[31743.843707] usbcore: registered new interface driver asix # Вот ОН
# modinfo asix | grep 2001
alias:          usb:v2001p3C05d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v2001p1A02d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v2001p1A00d*dc*dsc*dp*ic*isc*ip*
# lsmod | grep asix
asix                   13375  0 
usbnet                 12926  2 cdc_ether,asix
mii                     3335  2 usbnet,asix

А у меня modprobe --verbose asix не дает листинга. Просто перескикивает на другую строчку

#360097

kerogaz, что при этом в dmesg?

#360098
yars написал:
kerogaz, что при этом в dmesg?

То же самое Попробовали на другом компе с этим же ядром-тот же результат

#360100

Попробуйте пересобрать модуль (старый модуль скопируйте куда-нибудь на всякий случай), как описано выше, загрузить его и переткнуть железку. Появится интерфейс?

#360101
yars написал:
[quote="Vascom"
3) Делаем патч:
text
diff -c ./drivers/net/usb/asix.c.orig ./drivers/net/usb/asix.c > patchik.diff

..

У нас в такой директории вообще нет asix.c . Кроме того вместо usr/src/linux у нас usr/src/kernels/Имя ядра

Войдите или зарегистрируйтесь, чтобы ответить.