|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Zahar Kiselev 2:5030/382.1 13 Oct 2004 03:15:24 To : All Subject : кому отдать драйвер? -------------------------------------------------------------------------------- Есть у меня ethernet pocket adapter Genius LAN E3000II c номером печатной платы K0234009 v2.0 и микросхемой rtl8012. Теперь его можно считать полностью работающим под современным линуксом с ядром 2.4. Исправленный исходник временно выложен на http://fe.com.ru/files/rtl8012.c К сожалению - тот драйвер atp.c, который поставляется с ядром и должен с ним работать - все же не работает. Причем судя по результатам поска в Гугле - не только у меня. Еще испанец какой-то жаловался:) Однако я нашел альтернативный драйвер, написанный неким чехом, но этот драйвер не захотел собираться с установленным у меня ядром 2.4.24. Там кроме всяких многочисленных мелочей типа несоответствия имен переменных и макросов, была и одна существенная неточность - драйвер дважды требовал себе прерывание - сначала при загрузке модуля, а потом при инициализации интерфейса. В результате второй раз запрос прерывания завершался с ошибкой -16 и драйвер не работал. Также небыли правильно объявлены параметры, передаваемые в командной строке, в результате чего они не воспринимались. И еще не заполнялись два поля в структуре описания устройства (имя и адрес подпрограммы инициализации). Я все это поправил. Остались только несколько малозначительных предупреждений при компиляции, чтобы убрать которые нужно много переписывать, чего я делать не стал потому что работает и так. Проверил с двунаправленным (bidirectional) и "классическим" принтерным портом. С EPP не проверял в виду отсутствия оного на ноутбуке, к которому я это все присобачиваю. В связи с вышеизложенным обращаюсь с просьбой к тем, кто в совершенстве владеет английским языком - прошу помочь переслать исправленный исходник с необходимыми пояснениями Дональду Бекеру(Donald Becker) - разработчику сетевых драйверов, в том числе atp.c. Возможно он сделает из двух драйверов - своего и чешского - один универсальный. Так как чешский драйвер все же в большей степени напоминает "инженерный макет", хотя и вполне работоспособен, а я не настолько в совершенстве знаю Си и ядро Линукса чтобы заниматься оптимизацией. В конце концов в комплекте дистрибутивного ядра Линукса достаточно драйверов для куда более редких и экзотических устройств чем этот адаптер - полагаю что если появится еще один драйвер - ядро не сильно потолстеет:) Zahar(@spbdept.rbc.ru) Остров Большой Березовый: http://birch-island.spb.ru --- Msged/LNX 6.1.1 * Origin: N:60.17'54" E:28.39'40" (2:5030/382.1) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/3288416ca0aa.html, оценка из 5, голосов 10
|