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.