LINUX.ORG.RU

Где найти драйвер на Advantech PCI-1620b?


0

0

Народ, может кто знает, под kernel kernel 2.6.12-12mdk. Нашел интересную статью http://www.opennet.ru/base/net/advantech_mp_setup.txt.html , но там для фрюхи. Может кто подскажет - как такое же можно к linux приспособить? За ранее благодарен.

anonymous
Ответ на: комментарий от fishor

а если хочешь всеже ковырять за идешь в исходники твоего ядра и пишиш

grep -R 16PCI954 *

там тебе будет подсказка куда дальше ковырять.

fishor
()
Ответ на: комментарий от fishor

На Advantech я уже ходил, даже письмо им писал. В письме они мне послали исходники драйвера для ядер 2.4.х, в 2.6 - они не компилируются. Про 2.6 написали, что драйверов нет, хотя на сайте выложены модули для Fedora Core 2 | V-
2.6.5-1.358 , Fedora Core 3 | V2.6.9-1.667, Mandrake 10.1 | V-2.6.8.1-2mdk and SuSE 9.2 | V-2.6.8-24. Но они под конкретные ядра, что меня тоже не устраивает.
Новое ядро я, конечно выкачаю. А если это все не заработает, то как исходники то копать.

anonymous
()
Ответ на: комментарий от anonymous

Итак сначала по данной ссылке мы выяснили, что твоя карта на чипе 
OX16PCI945 который работает в линухе но так как фирма производитель 
карты изменили вендор и девайз ид. нужно нам чтобы драйвер мог узнать 
эту карту и запустить ее. Сначала надо найти где и что прописать,


lol@lll:~/Desktop/linux-2.6.15-rc2$ grep -R 16PCI954 *
drivers/parport/ChangeLog:      * parport_pc.c: Support for OX16PCI954 PCI card.drivers/parport/parport_pc.c:   { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954PP,
drivers/serial/8250_pci.c:      {       PCI_VENDOR_ID_SPECIALIX, PCI_DEVICE_ID_OXSEMI_16PCI954,
drivers/serial/8250_pci.c:      {       PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954,
drivers/serial/8250_pci.c:      {       PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954,
include/linux/pci_ids.h:#define PCI_DEVICE_ID_OXSEMI_16PCI954   0x9501
include/linux/pci_ids.h:#define PCI_DEVICE_ID_OXSEMI_16PCI954PP 0x9513

Итак мы нашли файлы в которых упоминаеться наша карта, нам нужно 
редактировать следующие файлы:
include/linux/pci_ids.h

Попробуем обойтись только этим файлом
drivers/serial/8250_pci.c
открываем его и переходим на строку 1899

{       PCI_VENDOR_ID_SPECIALIX,  PCI_DEVICE_ID_OXSEMI_16PCI954,
        PCI_VENDOR_ID_SPECIALIX, PCI_SUBDEVICE_ID_SPECIALIX_SPEED4,
        0, 0,pbn_b0_4_921600 },

И подстраеваем ее под наши нужды, по примеру из статьи:
{       0x13fe, 0x1600,
        0x13fe, 0x16ff,
        0, 0,pbn_b0_4_921600 },

Теперь сохраняем файл и собираем ядро. с потдержкой serial.

fishor
()
Ответ на: комментарий от fishor

Насколько эта операция будет успешной я не знаю, но если получиться и ты не хочешь больше делать тоже самое с каждым новым ядром, нужно будет полсать патч на кернел.орг

fishor
()
Ответ на: комментарий от anonymous

Еще один вопрос. Если скомпилять 8250_pci - как модуль, то можно ли его как нибудь отдельно компилять, а то ядро компилять долго и с первого раза не получилось?

anonymous
()
Ответ на: комментарий от anonymous

В принципе можно, но я никогда не делал и не знаю как точно, если кто подсакжет возьму и себе на заметку. А так в первый раз делай: make all && make install && make modules_install && update-grub(если дебиан или убунту) && reboot. Потом только make modules && make modules_install.

fishor
()
Ответ на: комментарий от fishor

Насчет компиляции только модуля получилось, остальное пока нет. Стираешь все файлы 8250_pci.* кроме сишного и делаешь make и компилится долько один модуль и ядро. Но это занимает ~15 сек.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.