CVSROOT: /cvs Module name: src Changes by: patr...@cvs.openbsd.org 2016/10/05 01:44:24
Modified files: sys/arch/arm/armv7: armv7_space.c sys/arch/arm/include: bus.h sys/arch/arm/simplebus: simplebus.c sys/arch/armv7/armv7: armv7_machdep.c Log message: Some device trees use 64-bit intermediate virtual addresses. This means that even though the hardware in the end never leaves the 32-bit address space, some addresses used solely in the device tree can be bigger than 32-bit. As bus_space_map(9) takes addresses of size bus_addr_t, which is 32-bit on ARMv7, we cannot pass those virtual addresses to the parent bus, even though it will be mapped back into a 32-bit address in the end. To work around this, make bus_space_map(9) take a 64-bit address. Since this is implemented as a macro and function pointer we can safely do that without harming any other architecture. ok kettenis@ deraadt@