Portál AbcLinuxu, 10. května 2025 05:37

Dotaz: Zařízení v /dev a pppd

12.4.2007 16:28 Hovadko
Zařízení v /dev a pppd
Přečteno: 186×
Odpovědět | Admin
Zdravím, mám náseldující problém. Používám ArchLinux 0.8 s jádrem 2.6.20.6-4.

K internetu se připojuji pomocí pppd, který používá konfigurační soubor, ve kterém je mimo jiné uloženo i zařízení v /dev, na které je modem připojen (PCMCIA karta SE GC75).

Při bootu se daná karta nadetekuje a přiřadí se ji zařízení v /dev. Problém je v tom, že to zařízení není stále stejné, ale při každém bootu se změní - viz poslední řádek ve výtahu z výpisu kernel.log.

pccard: PCMCIA card inserted into slot 1
cs: memory probe 0xfce00000-0xfceffff: excluding 0xfce00000-0xfce0ffff 0xfcef0000-0xfcefffff
pcmcia: registering new device pcmcia1.0
. . .
1.0: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A

nebo

pccard: PCMCIA card inserted into slot 1
cs: memory probe 0xfce00000-0xfceffff: excluding 0xfce00000-0xfce0ffff 0xfcef0000-0xfcefffff
pcmcia: registering new device pcmcia1.0
. . .
1.0: ttyS0 at I/O 0x3f8 (irq = 3) is a 16550A

Pokud je zařízení /dev/ttyS1, tak je vše v pořádku a pppd se bez potíží připojí. Pokud je ale přiřazeno /dev/ttyS0, tak se nahlásí "Connection failed" a připojit se nelze.

Pokud v konfiguračním souboru pppd změním zařízení z /dev/ttyS1 na /dev/ttyS0 (tak jak jsem to provozoval dříve), tak nejenže se nepřípojím, ale dokonce mi celý počítač vytuhne a nejde s ním dělat nic jiného než ho natvrdo vypnout.

Tuším, že za tím mohou být následující věci:

1) udev 2) mkinitcpio 3) adresa se v případě ttyS0 "kope" s adresou jiného zařízení viz následující řádek z krenel.log

smsc_superio_flat(): fir: 0x130, sir: 0x3f8, dma 03, irq 3, mode 0x0a

Otázka zní, jestli náhodou někdo netuší, čím by to mohlo být způsobeno, jestli s tím někdo nemá zkušenosti, případně jak zajistit, aby se PCMCIA modemu stále přiřazovalo zařízení /dev/ttyS1 (manuálů na konfiguraci udev jsem četli celkem dost, ale pořád nevím, kde vzít jednotlivé parametry pro zápis do udev.conf.

Za jakoukoliv radu předem děkuji.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.4.2007 23:01 Hovadko
Rozbalit Rozbalit vše Re: Zařízení v /dev a pppd
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tak jsem si zkusil napsat vlastní pravidlo pro udev, ale chovalo se to úplně stejně jako před tím :-( ...
12.4.2007 23:43 Tomas
Rozbalit Rozbalit vše Re: Zařízení v /dev a pppd

Pro psaní pravidel pro udev se může hodit tento nástroj udevbrowser

Fuky avatar 12.4.2007 23:18 Fuky | skóre: 52 | blog: 4u
Rozbalit Rozbalit vše Re: Zařízení v /dev a pppd
Odpovědět | | Sbalit | Link | Blokovat | Admin

Jak psát pravidla pro udev

Následující příkaz Ti vypíše informace, které se Ti budou hodit až budeš přidávat nové udev pravidlo:
$ udevinfo -a -p $(udevinfo -q path -n /dev/ttyS0)

Takhle nějak by jsem si představoval nové pravidlo:
SUBSYSTEM=="tty" DRIVERS=="xxx" ATTRS{product}=="xxx" name="ttyS1"

Nové pravidlo můžeš přidat např. do local.rules a udělat link:
# cd /etc/udev/rules.d
# ln -s ../local.rules 010_local.rules

-- RÁMO: psí tábor , ETriatlon: Výuka plavání
12.4.2007 23:50 Hovadko
Rozbalit Rozbalit vše Re: Zařízení v /dev a pppd
Díky za odkaz :-).

udevinfo -a -p $(udevinfo -q path -n /dev/ttyS0) mi vypíše následující:
looking at device '/devices/pci0000:00/0000:00:1e.0/0000:02:0b.1/1.0/ttyS0':
    KERNEL=="ttyS0"
    SUBSYSTEM=="tty"
    DRIVER==""
    ATTR{dev}=="4:64"

  looking at parent device '/devices/pci0000:00/0000:00:1e.0/0000:02:0b.1/1.0':
    KERNELS=="1.0"
    SUBSYSTEMS=="pcmcia"
    DRIVERS=="serial_cs"
ATTRS{modalias}=="pcmcia:m0221c2000f02fn00pfn00paE83885C1pbE014099BpcE2F9A539pd00000000"
    ATTRS{prod_id3}=="ML2029"
    ATTRS{prod_id2}=="GC75 PC Card"
    ATTRS{prod_id1}=="Sony Ericsson"
    ATTRS{card_id}=="0x2000"
    ATTRS{manf_id}=="0x0221"
    ATTRS{func_id}=="0x02"
    ATTRS{pm_state}=="on"
    ATTRS{function}=="0x00"

  looking at parent device '/devices/pci0000:00/0000:00:1e.0/0000:02:0b.1':
    KERNELS=="0000:02:0b.1"
    SUBSYSTEMS=="pci"
    DRIVERS=="yenta_cardbus"
    ATTRS{msi_bus}=="1"
    ATTRS{broken_parity_status}=="0"
    ATTRS{enable}=="2"
    ATTRS{modalias}=="pci:v00001179d00000617sv00001179sd00000001bc06sc07i00"
    ATTRS{local_cpus}=="f"
    ATTRS{irq}=="11"
    ATTRS{class}=="0x060700"
    ATTRS{subsystem_device}=="0x0001"
    ATTRS{subsystem_vendor}=="0x1179"
    ATTRS{device}=="0x0617"
    ATTRS{vendor}=="0x1179"

  looking at parent device '/devices/pci0000:00/0000:00:1e.0':
    KERNELS=="0000:00:1e.0"
    SUBSYSTEMS=="pci"
    DRIVERS==""
    ATTRS{msi_bus}=="1"
    ATTRS{broken_parity_status}=="0"
    ATTRS{enable}=="1"
    ATTRS{modalias}=="pci:v00008086d00002448sv00000000sd00000000bc06sc04i00"
    ATTRS{local_cpus}=="f"
    ATTRS{irq}=="0"
    ATTRS{class}=="0x060400"
    ATTRS{subsystem_device}=="0x0000"
    ATTRS{subsystem_vendor}=="0x0000"
    ATTRS{device}=="0x2448"
    ATTRS{vendor}=="0x8086"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""
Pak jsem si napsal pravidlo:
SUBSYSTEM=="tty", ATTRS{dev}=="4:64", NAME="ttyS1"
(bráno z prvního odstavce výpisu).
Bohužel to taky nefungovalo - nebylo možno se připojit.
Fuky avatar 13.4.2007 01:05 Fuky | skóre: 52 | blog: 4u
Rozbalit Rozbalit vše Re: Zařízení v /dev a pppd

a) s/ATTRS/ATTR/
b) řekl bych, že to nebude nejvhodnější atribut ;-)

A co třeba:
SUBSYSTEM=="tty", DRIVERS=="serial_cs", ATTRS{prod_id3}=="ML2029", NAME="ttyS1"

13.4.2007 16:52 Hovadko
Rozbalit Rozbalit vše Re: Zařízení v /dev a pppd
Tak jsem vyzkoušel navrhovaný řetězec, ale stále se to chová stejně.

Napadlo mě, že zkusím vypnout ten sir=0x3f8 viz úvodní zápis. Dal jsem modul smsc_ircc2 do blacklistu a najednou mi /dev/ttyS0 funguje (snad jsem to nezakřiknul :-) ).

Momentálně IR port nepoužívám, takže mi toto řešení vyhovuje, ale zajímalo by mě, jak by se to řešilo, kdybych najednou chtěl ten IR port používat např. pro připojení mobilního telefonu. Musel bych ten modul zase nahrát a pak bych měl zase problémy s ttyS0.

Nebyl by nějaký nápad?

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.