Prechádzať zdrojové kódy

[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>
David S. Miller 19 rokov pred
rodič
commit
95714e12df
1 zmenil súbory, kde vykonal 2 pridanie a 2 odobranie
  1. 2 2
      arch/sparc/kernel/of_device.c

+ 2 - 2
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;