aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel/of_device.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2006-06-29 17:35:14 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2006-06-29 19:37:14 -0400
commit95714e12dfb4794ee120f058fdf763e61baaad82 (patch)
treed092f799f94cba809f55069dd1236feff71550a1 /arch/sparc/kernel/of_device.c
parentcf44bbc26cf1361b692ab68c884f6a0df7da2fdb (diff)
[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 <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/kernel/of_device.c')
-rw-r--r--arch/sparc/kernel/of_device.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/sparc/kernel/of_device.c b/arch/sparc/kernel/of_device.c
index 13a70bd8781..3ebe6cc71e7 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,
488 build_res: 488 build_res:
489 memset(r, 0, sizeof(*r)); 489 memset(r, 0, sizeof(*r));
490 if (result != OF_BAD_ADDR) { 490 if (result != OF_BAD_ADDR) {
491 r->start = result; 491 r->start = result & 0xffffffff;
492 r->end = result + size - 1; 492 r->end = result + size - 1;
493 r->flags = flags; 493 r->flags = flags | ((result >> 32ULL) & 0xffUL);
494 } else { 494 } else {
495 r->start = ~0UL; 495 r->start = ~0UL;
496 r->end = ~0UL; 496 r->end = ~0UL;