FreeBSD 8.1 a multiportova seriova karta
David Pasek
david.pasek at gmail.com
Wed Jan 5 18:03:05 CET 2011
2011/1/5 Zbyněk Burget <zburget at burgnet.cz>:
>
> Nebyl PUC v kernelu a nezkousel jsi ho soucasne loadovat jako modul?
>
Myslim, ze ne. Mel jsem GENERIC kernel, kde PUC neni. A modul PUC,
kde jsem mel upraveny zdrojak. Timto mi prestaly fungovat i dva UARTy,
ktere mi fungovaly s kernelem, kde jsem mel PUC staticky
zakompilovany.
Pak jsem zdrojak PUCu vratil do puvodniho stavu a snazil se
prekompilovat jen modul pomoci
make -DNO_CLEAN KERNCONF=GENERIC buildkernel
pak jsem udelal
make KERNCONF=GENERIC installkernel
a prekopiroval puc.ko a puc.ko.symbols z adresare /boot/kernel na
system s PCI kartou.
A k memu udivu to taky nenaslo zadny uart z PCI karty.
Tak jsem se vratil do puvodniho funkcniho stavu tim, ze jsem si zase
prekompiloval kernel s podporou PUC s originalnima zdrojakama a to
funguje tak, ze mam fukcni ty dva porty ze ctyrech,
No a ted jsem zrovna dokompiloval kernel s podporou PUC s upravenym
zdrojakem podle Danovo navodu. Takhle mi taky fungujou dva porty ze
ctyrech, ale divne je, ze devinfo vraci stejny "puc0 I/O port mapping"
jako s kernelem bez uprav offsetu.
kernel s puc ovladacem a originalnima zdrojakama (Pro porty 1 a 3 - offset 8):
==============================================================================
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
uart2
puc0 I/O port mapping:
57344-57351 <= to je v hexa 0xe000-0xe007
puc0 port numbers:
1
uart3
puc0 I/O port mapping:
57352-57359 <= to je v hexa 0xe008-0xe00f
puc0 port numbers:
2
kernel s puc ovladacem a upravenyma zdrojakama (Pro porty 1 a 3 - offset 16):
==============================================================================
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
uart2
puc0 I/O port mapping:
57344-57351
puc0 port numbers:
1
uart3
puc0 I/O port mapping:
57352-57359
puc0 port numbers:
2
Takze si myslim, ze
a) bud jsem nepochopil co ma zmena ve zdrojaku delat.
b) spatne kompiluju kernel a zmena ve zdrojaku
/usr/src/sys/dev/puc/pucdata.c se neprojevi v kernelu, ktery builduju
pomoci
make buildkernel KERNCONF=ACCESS-SERVER
make installkernel KERNCONF=ACCESS-SERVER
v adresari /usr/src
David.
More information about the Users-l
mailing list