FreeBSD 8.1 a multiportova seriova karta

David Pasek david.pasek at gmail.com
Tue Jan 4 10:26:50 CET 2011


Ahoj,
tipoval jsem, ze Dan je ten kdo bude mit nejake napady ;-)

2011/1/2 Dan Lukes <dan at obluda.cz>:
> Pridej k tomu pciconf -lv jeste option -b a mel bys to videt sam - kata ma
> definovane bar[10] a bar[14] (mozna jeste i nejake dalsi, nas ale zajimaji
> tyhle - jsou oba typu I/O port) ale bar[11] tam zadny neni.

[root at fbsd-access-srv ~]# pciconf -lvb
puc0 at pci0:0:17:0:       class=0x070002 card=0x40561409 chip=0x71681409
rev=0x01 hdr=0x00
    vendor     = 'Timedia Technology Co Ltd'
    device     = 'PCI / ISA Asynchronous UART Signal Chips Solution (40371409)'
    class      = simple comms
    subclass   = UART
    bar   [10] = type I/O Port, range 32, base 0xe000, size 32, enabled
    bar   [14] = type I/O Port, range 32, base 0xe020, size 16, enabled

Ano, bary jsou tam definovane.

>
> Ale prestanme se zabyvat timhle - to je chyba, ktera byla odstranena, je
> odstranena a podle meho nejlepsiho presvedceni se tveho problemu netyka.
> Tvuj problem je podl eme jinde - ne proto, z ebych si byl az tak jisty kde,
> jako spis, ze jsem si takrka jisty, ze tady byt nemuze.
>
> Nez se pustim do slozitejsich uvah zkusime ranu naslepo (ono to neni uplne
> naslepo, ale abych vysvetlil proc to navrhuju, musel bych vysvetlit prilis
> moc docela netrivialnich veci) - proved jednoduchou upravu. Ve stejne
> funkci, co se provadela minula oprava (tedy puc_config_timedia) je kod:
>
>        case PUC_CFG_GET_OFS:
>                *res = (port == 1 || port == 3) ? 8 : 0;
>
> Tak tu osmicku nahrad sestnactkou.
>

Zmenu ve zdrojacich jsem jeste neudelal, ale udelal jsem tu dalsi
diagnostiku, kterou jsi doporucoval.
Behem dneska se pokusim udelat tuto zmenu ve zdrojacich a prekompilovat kernel.

>
> Potrebujeme jeste vypis devinfo -rv , respektive, z nej ten podstrom, ktery
> popisuje informace o puc0 zarizeni.

Tady je:
        puc0 pnpinfo vendor=0x1409 device=0x7168 subvendor=0x1409
subdevice=0x4056 class=0x070002 at slot=17 function=0
            Interrupt request lines:
                10
            I/O ports:
                0xe000-0xe01f
                0xe020-0xe02f
          uart2
              puc0 I/O port mapping:
                  57344-57351
              puc0 port numbers:
                  1
          uart3
              puc0 I/O port mapping:
                  57352-57359
              puc0 port numbers:
                  2

> Pokud budes mit prvni porty z obou paru, pak problem asi je tam co
> predpokladam, a pokud's zkusil shora navrzenou opravu, tak je mozna uz i
> napraveny. Pokud nemas prvni dva porty z paru a mas druhe dva porty,
> pripadne jeden par kompletni a z druheho nic, pak je teorie patrne chybna a
> zkusit doporucovanou zmenu to sice rozhodne muzes, ale hodne by me
> prekvapilo, kdyby to pomohlo.

Priznam se, ze neumim z vypisu urcit, jestli mam prvni porty z obou paru.

> Pokdu se nahodou nepodari problem vyresit touto "prvni ranou naslepo" tak
> relevantni casti vypisu pciconf -vlb, devinfo -rv a dmesg z verbose bootu by
> mohla pomoct pri vytvateni dalsich teorii.
>
> Jeste jednou rikam, ze tu tvoji kartu neznam - takze varim skutecne jen z
> teoretickych uvah. Rozhodne pocitej, ze to nemusi pomoct - a ze se muze stat
> dokoce i to, ze upraveny modul ti system shodi. Nemel by, ale znas to ...
>
>
> Dan

Jeste jsem prochazel man sio a je tam napsano

     For AST compatible multiport cards with 4 ports:
           options COM_MULTIPORT
           device sio

           In /boot/device.hints:
           hint.sio.4.at="isa"
           hint.sio.4.port="0x2a0"
           hint.sio.4.flags="0x701"
           hint.sio.5.at="isa"
           hint.sio.5.port="0x2a8"
           hint.sio.5.flags="0x701"
           hint.sio.6.at="isa"
           hint.sio.6.port="0x2b0"
           hint.sio.6.flags="0x701"
           hint.sio.7.at="isa"
           hint.sio.7.port="0x2b8"
           hint.sio.7.flags="0x701"
           hint.sio.7.irq="12"


V LINTu pro 8.1 "options COM_MULTIPORT" neni, takze jsem se domnival,
ze sio je obsolete a ze se v 8-cce preslo ze sio na uart. Nemuze to
mit nejakou souvislost? Nemam pouzit informace z man sio? Asi ne co?
To bych asi musel downgradnout na fbsd 7 a pouzit sio driver, ze?

Pak ale nechapu proc je v systemu 8.1 man sio, kdyz uz se device sio nepouziva?

Pravdepodobne mi neco stale unika ;-)

Jdu zkusit udelat tu zmenu do zdrojaku.

Zatim diky,
David.


More information about the Users-l mailing list