moschip 9835 lpt i 2 rs232 - port równoleg

Wszystko związane z jądrem systemowym, sterownikami, sprzętem itp.
skynet
Beginner
Posty: 224
Rejestracja: 06 stycznia 2008, 16:32

moschip 9835 lpt i 2 rs232 - port równoległy

Post autor: skynet »

Prosiłbym o pomoc w zmuszeniu do działania mojego portu LPT na karcie rozszerzającej moschip 9835.

installation guide.pdf

lspci -v

Kod: Zaznacz cały

05:04.0 Communication controller: NetMos Technology PCI 9835 Multi-I/O Controller (rev 01)
        Subsystem: LSI Logic / Symbios Logic 1P2S
        Flags: medium devsel, IRQ 22
        I/O ports at bf00 [size=200]
        I/O ports at be00 [size=200]
        I/O ports at bd00 [size=200]
        I/O ports at bc00 [size=200]
        I/O ports at bb00 [size=200]
        I/O ports at ba00 [size=200]
        Kernel driver in use: parport_serial
        Kernel modules: parport_serial
Program napisany w C wysyłający np. 0x01 na adres 0xbd00 oczywiście działa i wysyła.

Problem w tym że potrzebuję mieć port LPT, który działałby przez /dev/parport0 i mógłby być używany przez programatory równoległe (np. uruchomione przez wine, wystarczy dowiązanie symboliczne).

Test np.

Kod: Zaznacz cały

skynet@debian:~$ sudo cat '/home/skynet/Desktop/t.txt' > /dev/parport0
bash: /dev/parport0: Brak dostępu
nie działa.

Polecenie:

Kod: Zaznacz cały

skynet@debian:~$ sudo /sbin/modprobe parport_pc io=0x3f8,0xbd00 irq=4,22
lub (bardziej stosowne bo nie mam portu LPT na płycie głównej):

Kod: Zaznacz cały

skynet@debian:~$ sudo /sbin/modprobe parport_pc io=0xbd00 irq=22
niby działa ale nic nie zmienia.

Myślałem również nad dodaniem w pliku "/etc/udev/rules.d/91-permissions.rules91-permissions.rules":

Kod: Zaznacz cały

KERNEL=="parport[0-9]*",	MODE="0666"
Ale wolę spytać zanim zrobię jakąś głupotę :-P

[ Dodano: 2009-04-06, 07:59 ]
Problem rozwiązany, w banalny sposób.
rozwiązanie tymczasowe

Kod: Zaznacz cały

sudo chmod a+rw /dev/parport0
rozwiązanie pełne, wystarczy w pliku

Kod: Zaznacz cały

/etc/udev/rules.d
w sekcji np. vc devices dopisać[pamiętając o tabulatorach]

Kod: Zaznacz cały

KERNEL=="parport0",		MODE="0666"
Port szeregowy żeby ruszył też potrzebuje małej pomocy[ttyS[0-1] ponieważ nie mam portów na płycie głównej].

Kod: Zaznacz cały

sudo setserial /dev/ttyS0 port 0xbf00 UART 16550A irq 22 Baud_base 115200
sudo setserial /dev/ttyS1 port 0xbe00 UART 16550A irq 22 Baud_base 115200
ODPOWIEDZ