FreeBSD 8.1 a multiportova seriova karta

David Pasek david.pasek at gmail.com
Wed Jan 5 12:42:46 CET 2011


2011/1/5 Dan Lukes <dan at obluda.cz>:
> Vyhodit kartu z tohohle, strcit si ji do neceho s normalnim diskem, odladit,
> a az to bude, tak vratit ...
>

Bohuzel zadny takovy hardware nemam, ale udelal jsem to tak, ze jsem
si ve virtualu pripravil system s GENERIC kernelem a budu si tam
vzdycky prekompilovavat ten opatchovany PUC modul podle tve rady

make -DNO_CLEAN KERNCONF=xxx buildkernel

a ten modul vzdy po siti nakopiruju na ten embedded system.

To by mohlo ladeni urychlit ne?

Aktualne tedy mam system se zmenou v souboru pucdata.c, ve funkci
(puc_config_timedia):

       case PUC_CFG_GET_OFS:
               *res = (port == 1 || port == 3) ? 16 : 0;

a dynamicky natazenym PUC modulem.

Tady jsou detailnejsi informace ze systemu:

[root at fbsd-access-srv ~]# uname -a
FreeBSD fbsd-access-srv.home.uw.cz 8.1-RELEASE FreeBSD 8.1-RELEASE #0:
Wed Jan  5 11:21:06 CET 2011
root at fbsd-access-srv.home.uw.cz:/usr/obj/usr/src/sys/GENERIC  i386

[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

[root at fbsd-access-srv ~]# dmesg | grep puc
puc0: <Timedia technology 4 Port Serial> port
0xe000-0xe01f,0xe020-0xe02f irq 10 at device 17.0 on pci0
puc0: [FILTER]

[root at fbsd-access-srv ~]# dmesg | grep uart
uart0: <16550 or compatible> at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
uart0: [FILTER]
uart0: console (9600,n,8,1)
uart1: <16550 or compatible> at port 0x2f8-0x2ff irq 3 on isa0
uart1: [FILTER]

Takze to ted nenaslo ani jeden seriak z ty karty, protoze uart0 a
uart1 jsou seriaky na motherboardu.

[root at fbsd-access-srv ~]# devinfo -rv

        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


nevraci o puc uartech logicky nic.

Jdu prekompilovat a zavest originalni PUC modul, abych overil, ze
vidim alespon ty dva porty.

Chapu dobre, ze budu muset menit ten offset v

       case PUC_CFG_GET_OFS:
               *res = (port == 1 || port == 3) ? 16 : 0;

tak aby se mi objevily uarty?
Jestli ano, pak bych te moc poprosil jestli bys mi neposlal vsechny
patche na prozkoumani celeho I/O ports prostoru. Ty se ve zdrojacich
vyznas vyrazne lepe a ja bych na tom ztravil mladi ;-) I kdyz ted jsem
si uvedomil, ze mladi uz je asi za mnou :-)

BTW: mas pravdu, ze by se mi vyplatilo koupit jinou kartu, ale koukal
jsem, ze ta co mas ty se asi uz neda koupit
http://www.alza.cz/kouwell-223np-4-4x-d42637.htm
http://www.alfacomp.cz/php/product.php?eid=105I2107N02M0008HY
http://www.okcomputers.cz/DetailPage.asp?DPG=47937

a ostatni koupe mohou dopadnout stejne a nebo jeste hure nez tato karta SUNIX.

Jeste Juraj psal neco o DigiBoardu, ale to je spis typ karty a
ovladac, takze jestli ma v konferenci nekdo dobrou zkusenost s RS-232
kartou, ktera ma alespon 4 porty a je to PCI 3.3V, tak bych do toho
sel.

S tim SUNIXem mam jeste krajni moznost pouzit linux, pro ktery vyrobce
dodava ovladac. Tomu bych se chtel ale samozrejme vyhnout a mozna
radsi ozelim ty dva nefunkcni porty.

David.
-- 
David Pasek
david.pasek at gmail.com, +420 602 525 736


More information about the Users-l mailing list