From: David S. Miller Date: Thu, 29 Jun 2006 21:35:14 +0000 (-0700) Subject: [SPARC]: Encode I/O space into resource flags on sparc32. X-Git-Tag: v2.6.18-rc1~346 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=95714e12dfb4794ee120f058fdf763e61baaad82;p=linux-2.6 [SPARC]: Encode I/O space into resource flags on sparc32. On sparc64 we don't need to do this because the resource values are large enough to encode the full physical address. Signed-off-by: David S. Miller --- diff --git a/arch/sparc/kernel/of_device.c b/arch/sparc/kernel/of_device.c index 13a70bd878..3ebe6cc71e 100644 --- a/arch/sparc/kernel/of_device.c +++ b/arch/sparc/kernel/of_device.c @@ -488,9 +488,9 @@ static void __init build_device_resources(struct of_device *op, build_res: memset(r, 0, sizeof(*r)); if (result != OF_BAD_ADDR) { - r->start = result; + r->start = result & 0xffffffff; r->end = result + size - 1; - r->flags = flags; + r->flags = flags | ((result >> 32ULL) & 0xffUL); } else { r->start = ~0UL; r->end = ~0UL;