CVSROOT:        /cvs
Module name:    src
Changes by:     m...@cvs.openbsd.org    2010/02/28 14:35:43

Modified files:
        sys/arch/loongson/dev: bonito.c bonitoreg.h smfb.c 
        sys/arch/loongson/loongson: wscons_machdep.c 

Log message:
A better bus_space_map() function for bonito PCI memory space, which no
longers assumes all requested mappings fit in the three 64MB PCILO windows,
but will instead check whether the requested mappings can be provided by
PCILO regions or PCIHI regions (and on 2F-based systems, making sure we
only use addresses which get properly routed from CPU to PCI within the
2F crossbar).

This in turn requires early console code to abide the bus_space rules and
get its resources from bus_space_map() rather than doing PCI BAR arithmetic
by itself.

No functional change on Lemote Yeeloong and Gdium Liberty; on Lemote Fuloong
2F this allows BAR set up in PCIHI space by PMON to be mapped by kernel code
without having to compensate for the PCILO offset.

Reply via email to