Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


Версия Linux при сборке драйверов (L780

Вы не вошли.

 Поиск | Регистрация | Вход 

Diomer
04.07.2004 14:47:50
#1

Гость

Re: Версия Linux при сборке драйверов (L780

Какая версия линукс использовалась у вас при сборке драйверов lcdrv-1.0.25. Пробовал под Slackware 9.0 и Mandrake 9.0(10.0)
Под Slackware доходило до того, что не могла найти порты IO и IRQ для обнаружения карты, а под Mandrake драйвера не собирались вообще...

Стас
05.07.2004 08:42:27
#2

Гость

Re: Версия Linux при сборке драйверов (L780

1.25 работала с rh9, suse9.0
1.26 работает с fc2, suse9.1

Diomer
07.07.2004 12:44:00
#3

Гость

Re: Версия Linux при сборке драйверов (L780

2.6 установилась без проблем, но есть еще проблема с 1.25 версией. Какие пути указывать в makefile, чтобы видела все библиотеки. -L/usr/include и та, которую советуют в readme не получается.

Diomer
07.07.2004 16:52:56
#4

Гость

Re: Версия Linux при сборке драйверов (L780

еще требует modversion.h, которого я в ниодном дистрибутиве не видел...

Diomer
11.07.2004 23:21:38
#5

Гость

Re: Версия Linux при сборке драйверов (L780

После 3х дней попыток заставить работать карту c драйверами v2.6 по линукс (Suse 9.1), могу предоставить следующие баги, дальше которых мне уйти не удалось:
1. Пишу в консоли:
>modprobe l780
Fatal: Module l780 not found.
Не собрался модуль. Что делать? Отсюда и следующие ошибки:
>cat /dev/xdsp0
No such device or address
>lb780 /dev/xdsp[0-7] /usr/share/lcard/L780.bio
Unable to open device /dev/xdsp0
Unable to get board ID.

Кто-нибудь заставлял работать эти драйвера вообще, кроме разработчиков? Прошу помощи в сборке.

2. Попытка собрать драйвера 1.25 приводит к выводу того, что ос пытается искать modversion.h, которого нет в Suse (Mandrake).

Стас
12.07.2004 09:03:48
#6

Гость

Re: Версия Linux при сборке драйверов (L780

1. Читай http://www.lcard.ru/~gorinov/lcdrv/install26.html
всё написано что и как делать.

2. В ядре включить CONFIG_MODVERSIONS=y

Diomer
15.07.2004 00:53:13
#7

Гость

Re: Версия Linux при сборке драйверов (L780

Новый трабл sad
В ядре 2.4 CONFIG_MODVERSIONS=y включил.
Драйвера теперь компилируются и устанавливаются, но при попытке вызвать
>modprobe l780
выдает:
/lib/modules/2.4.20/lcard/l780.o: init_module: No such device
/lib/modules/2.4.20/lcard/l780.o: Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
      You may find more information in syslog or the output from dmesg
/lib/modules/2.4.20/lcard/l780.o: insmod /lib/modules/2.4.20/lcard/l780.o failed
/lib/modules/2.4.20/lcard/l780.o: insmod l780 failed


Какие будут домыслы по поводу устранения данной напасти.
Спасибо.

Стас
15.07.2004 08:45:18
#8

Гость

Re: Версия Linux при сборке драйверов (L780

> You may find more information in syslog or the output from dmesg

Так покажи что модуль пишет в messages.

Diomer
30.07.2004 22:34:58
#9

Гость

Re: Версия Linux при сборке драйверов (L780

Модуль ничего в messages не пишет. Из определяемых PCI плат находит только сетевую карту и отдает ей IRQ. А с LCard 780 ничего нет. Никаких сообщений. Как будто ее и нет.
В сислог сообщения только те, что я написал выше, а именно "...init_module: No such device..."

Попытался поставить ядро 2.6.7. В итоге пропали сообщения типа "init_module: No such device", но попытки выполнения, например, команды:
>cat /dev/xdsp0
Выдает  No such device.

Стас
02.08.2004 09:01:15
#10

Гость

Re: Версия Linux при сборке драйверов (L780

> Модуль ничего в messages не пишет.

Быть того не может.
# cat /var/log/messages |grep LCard
покажи результат

Diomer
10.08.2004 20:34:37
#11

Гость

Re: Версия Linux при сборке драйверов (L780

В Slackware немного другая структура стартовых скриптов (не через Sxxprocess и KxxProcess), поэтому в messages нет ничего и быть не должно.
Другое дело вывод программы scanpci. Строки про l780 нет вообще.

Стас
11.08.2004 11:10:03
#12

Гость

Re: Версия Linux при сборке драйверов (L780

Пусть даже скрипты другие, но вывод printk куда-то должен быть?! Не может быть такого, чтобы в слаке этого не было. Найдите лог куда пишутся сообщения ядра и посмотрите его, тогда можно понять почему модуль не может работать с платой.

Diomer
11.08.2004 12:56:26
#13

Гость

Re: Версия Linux при сборке драйверов (L780

Из просмотренных мною в messages и syslog никаких упоминаний про l780 нет, разве что только то, что я писал выше, а именно:
/lib/modules/2.4.20/lcard/l780.o: init_module: No such device
/lib/modules/2.4.20/lcard/l780.o: Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.
You may find more information in syslog or the output from dmesg
/lib/modules/2.4.20/lcard/l780.o: insmod /lib/modules/2.4.20/lcard/l780.o failed
/lib/modules/2.4.20/lcard/l780.o: insmod l780 failed

Как будто карты нет вообще. Scanpci показывает, что нет такого девайса. Может дело в биосе материнской платы? Хотя на этом же компьютере в Windows карта видна.
На соседнем компьютере таже ситуация. Ядро компилирую, как написано. Параметры ставлю такие, какие необходимы.

Стас
11.08.2004 15:06:05
#14

Гость

Re: Версия Linux при сборке драйверов (L780

1) /dev/xdsp0 создан?
2) инсталляционный скрипт запускался или нет?

ерунда какая-то... даже если не загружены драйверы, в /proc/pci должен быть виден plx9050, например у меня так:

  Bus  0, device  14, function  0:
    Bridge: PLX Technology, Inc. PCI <-> IOBus Bridge (rev 1).
      IRQ 10.
      Non-prefetchable 32 bit memory at 0xec011000 [0xec01107f].
      I/O at 0xd800 [0xd87f].
      I/O at 0xdc00 [0xdc0f].
      Non-prefetchable 32 bit memory at 0xec000000 [0xec00ffff].


Создаёшь девайс, правишь скрипты (см.Install) и компилируешь модуль ядра. Всё должно работать.

Diomer
12.08.2004 00:07:42
#15

Гость

Re: Версия Linux при сборке драйверов (L780

Изучил повнимательнее программу Scanpci и увидел, что из множества PCI устройств появляется:

pci bus 0x001 cardnum 0x0a function 0x00: vendor 0x10b5 device 0x9050
PLX Technology Inc. PCI <-> IOBus Bridge

Инсталяционный скрипт конечно же запускался smile Под ядром 2.4.26 выдает:

>cat /dev/xdsp0
No such device

Под ядром 2.6.7 устройства /dev/xdspX существуют только в одну сессию. Если компьютер перезагрузить, то они пропадают.
Параметры ядра PCI Support и CONFIG_MODVERSION включены.

Можно поподробнее про "Создаёшь девайс, правишь скрипты (см.Install) и компилируешь модуль ядра..." Не совсем понял.

Стас
12.08.2004 12:03:34
#16

Гость

Re: Версия Linux при сборке драйверов (L780

> pci bus 0x001 cardnum 0x0a function 0x00: vendor 0x10b5 device 0x9050
> PLX Technology Inc. PCI <-> IOBus Bridge

значит железяка определяется, надо проверить как ей назначаются ресурсы /proc/iomem, /proc/ioports, /proc/interrupts но скорее всего там всё нормально.


> Под ядром 2.6.7 устройства /dev/xdspX существуют только в одну сессию.
> Если компьютер перезагрузить, то они пропадают.

??? это ещё почему? Девайсы создаются _один_ раз, если у тебя одна плата, тебе нужен только /dev/xdsp0. Можно сделать вручную

depmod -a -q
ldconfig
mknod -m 666 /dev/xdsp0 c 113 0

и пробовать загружать модуль. Интересно, в каком месте у тебя удаляются /dev/xdspX ?

Diomer
18.08.2004 19:47:51
#17

Гость

Re: Версия Linux при сборке драйверов (L780

>> надо проверить как ей назначаются ресурсы
>> /proc/iomem, /proc/ioports, /proc/interrupts

Спасибо, завтра посмотрю. Но всё равно, как всё было, так и осталось. Плата есть - устанавливаю драйвера 1.0.25 - No such Device. Проблема так и осталась.
Про "правишь скрипты" можно поподробнее?

>> Можно сделать вручную

Да, я разбирался в скриптах драйверов и уже пробовал подобные команды. Всё равно существуют только одну сессию. Нужно смотреть логи, хотя врят ли там есть что. Я думаю, что это уже особенности ядра. При загрузке оно проверяет на существующие девайсы и тех, которых нет - удаляет smile. Хотя, кто знает...

sts
19.08.2004 11:53:45
#18

Гость

Re: Версия Linux при сборке драйверов (L780

Ядро не должно удалять девайсы. Видимо где-то в стартовых скриптах ошибки, поищи где удаляются /dev/xdspX. Для rh, fc, suse скрипт install всё сделает сам, если в твоём дистрибутиве есть отличия, надо внимательно проверить что там записано. Поправить скрипты видимо надо самому, если их порядок в дистрибутиве отличается от rh.  No such Device появляется из-за отсутствия девайса, так что ищи, модули ядра и ядро тут не при чём.

Diomer
20.08.2004 00:24:04
#19

Гость

Re: Версия Linux при сборке драйверов (L780

>> надо внимательно проверить что там записано.

Где записано? в Install? Я уже наизусть выучил, что там записано smile. Отличия между rh-подобными системами и Slackware для данного инсталяционного скрипта - только в стартовых скриптах. Решается ручным прописыванием в rc.local команд запуска и инициализации карты. Только вот толку, если всё равно не работает:
>cat /dev/xdsp0
No such Device

>так что ищи, модули ядра

Какие? /lib/modules/2.6.7/lcard/xdsptop.ko,xdspbuf.ko,l780.ko - ? И что в них искать? Спасибо.

А случае с ядром 2.4.26 загружается только xdsp.o, а на l780.o выдает No such device на строке init_module (см. в самом начале я описывал проблему).

В /proc/iomem, /proc/ioports, /proc/interrupts под ядром 2.4.26 что-то пишет про плату. Сейчас логов на руках нет, но конкретные порты и прерывания ей назначались.
Под ядром 2.6.7 ситуация немного другая. Там плата описывалась как PCI Bus #2 (скорее всего она) и уже ей назначались какие-то ресурсы (пишу по памяти, что видел). В ближайшее время логи могу привести, если в них есть необходимость.
В /proc/pci плата висит на обоих ядрах.

Diomer
26.08.2004 21:43:24
#20

Гость

Re: Версия Linux при сборке драйверов (L780

Похоже техподдержка на том и закончилась на чем и начиналась.

А я всё еще сижу с неработающей платой...

sts
27.08.2004 11:46:59
#21

Гость

Re: Версия Linux при сборке драйверов (L780

Я вобщем-то не техподдержка, а такой же пользователь что и ты. Поэтому то, что я тебе отвечаю - это просто моё желание помочь и не более того.

>> так что ищи, модули ядра
> Какие?

Я сказал, что модули ядра и ядро тут не при чём. Ты не так прочитал. Ищи где удаляется девайс, потому что модуль его просто не находит. Поэтому и пишет No such Device. Это легко проверить:

вместо
# cat /dev/xdsp0

сделай
# ll /dev/xdsp0

Да, кстати, ты под рутом? Почему > а не #?

Diomer
28.08.2004 00:00:11
#22

Гость

Re: Версия Linux при сборке драйверов (L780

sts: да я к вам претензий и не предъявлял, не подумайте чего. Это скорее в укор самой фирме. Потому что Стас, похоже, такой же пользователь, как и мы тут все. Реакции фирмы на мои потуги узнать правду не было здесь.

Что это за команда "ll"? У меня нет такой.

> вместо # потому что пишу каждый раз от руки дома с листочка, который на работе переписал. Так нагляднее. На работе, конечно, под рутом сижу.

В итоге ничего не могу понять. Может ревизия карты такая, что дрова, написанные под нее не видят ее? (бредовая, конечно, идея, но я уже не знаю, что рассматривать).

sts
28.08.2004 09:10:01
#23

Гость

Re: Версия Linux при сборке драйверов (L780

> Что это за команда /"ll/"?

или по-другому:

#ls -l /dev/xdsp0

Diomer
28.08.2004 19:16:48
#24

Гость

Re: Версия Linux при сборке драйверов (L780

А что там должен я увидеть? Всё стандартно на первый взгляд:

crw-rw-rw-    1 root     root     113,   0 Jul 12 00:21 xdsp0

Diomer
30.08.2004 23:32:41
#25

Гость

Re: Версия Linux при сборке драйверов (L780

Может это поможет решить проблему? Сегодня скопировал логи основных системных файлов:

/proc/pci

  Bus  1, device  10, function  0:
    Bridge: PLX Technology, Inc. PCI <-> IOBus Bridge (rev 1).
      IRQ 10.
      Non-prefetchable 32 bit memory at 0x10000000 [0x1000007f].
      I/O at 0x1000 [0x107f].
      Non-prefetchable 32 bit memory at 0x10002000 [0x10003fff].
      Non-prefetchable 20 bit memory at 0x10004000 [0x10005fff].


/proc/interrupts

           CPU0       
  0:     215618          XT-PIC  timer
  1:       1451          XT-PIC  i8042
  2:          0          XT-PIC  cascade
  8:          1          XT-PIC  rtc
  9:          0          XT-PIC  acpi
10:         51          XT-PIC  eth0, uhci_hcd
11:          0          XT-PIC  uhci_hcd
12:        152          XT-PIC  i8042
14:       3910          XT-PIC  ide0
15:         30          XT-PIC  ide1
NMI:          0
ERR:          0


/proc/iomem

00000000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000c8000-000c97ff : Adapter ROM
000f0000-000fffff : System ROM
00100000-07fbffff : System RAM
  00100000-002ca763 : Kernel code
  002ca764-0039a5ff : Kernel data
07fc0000-07ff7fff : ACPI Tables
07ff8000-07ffffff : ACPI Non-volatile Storage
10000000-1000007f : 0000:01:0a.0
10002000-10003fff : 0000:01:0a.0
10004000-10005fff : 0000:01:0a.0
eea00000-f6afffff : PCI Bus #02
  f0000000-f3ffffff : 0000:02:00.0
    f0000000-f02fffff : vesafb
f8000000-fbffffff : 0000:00:00.0
ff8ff000-ff8fffff : 0000:01:08.0
  ff8ff000-ff8fffff : eepro100
ff900000-ff9fffff : PCI Bus #02
  ff9fc000-ff9fffff : 0000:02:00.0
ffb80000-ffbfffff : reserved
fff00000-ffffffff : reserved

/proc/modules

psmouse 20616 0 - Live 0xc8c25000
ohci_hcd 21380 0 - Live 0xc8c1e000
ehci_hcd 31364 0 - Live 0xc8c15000
intel_agp 20124 1 - Live 0xc8ba3000
hw_random 5652 0 - Live 0xc8b7d000
shpchp 103020 0 - Live 0xc8bc0000
usblp 13056 0 - Live 0xc8ba9000
pciehp 100204 0 - Live 0xc8be0000
uhci_hcd 32528 0 - Live 0xc8bb7000
eepro100 30348 0 - Live 0xc8bae000
mii 5376 1 eepro100, Live 0xc8b8a000
l780 26832 0 - Live 0xc8b9b000
xdspbuf 2176 1 l780, Live 0xc8b82000
xdsptop 3744 1 l780, Live 0xc8b80000
pci200syn 14720 0 - Live 0xc8b4a000
hdlc 25088 1 pci200syn, Live 0xc8b93000
syncppp 17088 1 hdlc, Live 0xc8b84000
com20020_pci 6556 0 - Live 0xc8b21000
com20020 5760 1 com20020_pci, Live 0xc8b47000
arcnet 13192 2 com20020_pci,com20020, Live 0xc8b78000
ne2k_pci 9696 0 - Live 0xc8b74000
8390 10368 1 ne2k_pci, Live 0xc8b70000
crc32 4608 1 8390, Live 0xc8b3f000
evdev 9600 0 - Live 0xc8b43000
nls_koi8_r 5504 3 - Live 0xc8b3c000
nls_cp866 5504 3 - Live 0xc8b24000
vfat 14336 3 - Live 0xc8b27000
fat 45632 1 vfat, Live 0xc8b63000
ide_scsi 17412 0 - Live 0xc8b36000
scsi_mod 76860 1 ide_scsi, Live 0xc8b4f000
agpgart 34088 1 intel_agp, Live 0xc8b2c000

/proc/ioports

0000-001f : dma1
0020-0021 : pic1
0040-005f : timer
0060-006f : keyboard
0070-0077 : rtc
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : ide1
01f0-01f7 : ide0
02f8-02ff : serial
0376-0376 : ide1
03c0-03df : vesafb
03f6-03f6 : ide0
03f8-03ff : serial
0400-047f : 0000:00:1f.0
04d0-04d1 : pnp 00:09
0500-053f : 0000:00:1f.0
0800-087f : pnp 00:0b
0cf8-0cff : PCI conf1
1000-107f : 0000:01:0a.0
cf00-cf3f : 0000:01:08.0
  cf00-cf3f : eepro100
cf80-cf9f : 0000:01:0b.0
  cf80-cf9f : ne2k-pci
d000-dfff : PCI Bus #02
  d800-d8ff : 0000:02:00.0
e800-e8ff : 0000:00:1f.5
ef00-ef3f : 0000:00:1f.5
ef40-ef5f : 0000:00:1f.2
  ef40-ef5f : uhci_hcd
ef80-ef9f : 0000:00:1f.4
  ef80-ef9f : uhci_hcd
efa0-efaf : 0000:00:1f.3
ffa0-ffaf : 0000:00:1f.1
  ffa0-ffa7 : ide0
  ffa8-ffaf : ide1

Ядро 2.6.7