Index: uspace/drv/intctl/obio/obio.c
===================================================================
--- uspace/drv/intctl/obio/obio.c	(revision be1b1e6839cb14854c85b8177b374d75b272007e)
+++ uspace/drv/intctl/obio/obio.c	(revision 48adf0f5acfc6c801de63d3051a4a732c9e3e07c)
@@ -119,8 +119,6 @@
 	int rc;
 
-	base_phys = (uintptr_t) 0x1fe00000000ULL;
-
 	int flags = AS_AREA_READ | AS_AREA_WRITE;
-	int retval = physmem_map(base_phys,
+	int retval = physmem_map(res->base,
 	    ALIGN_UP(OBIO_SIZE, PAGE_SIZE) >> PAGE_WIDTH, flags,
 	    (void *) &base_virt);
Index: uspace/drv/platform/sun4u/sun4u.c
===================================================================
--- uspace/drv/platform/sun4u/sun4u.c	(revision be1b1e6839cb14854c85b8177b374d75b272007e)
+++ uspace/drv/platform/sun4u/sun4u.c	(revision 48adf0f5acfc6c801de63d3051a4a732c9e3e07c)
@@ -68,4 +68,8 @@
 #define PBM_PCI_MEM_SIZE	UINT64_C(0x00100000000)
 
+#define PBM_OBIO_BASE		UINT64_C(0)
+#define PBM_OBIO_SIZE		UINT64_C(0x1898)
+
+
 typedef struct sun4u_fun {
 	hw_resource_list_t hw_resources;
@@ -91,6 +95,6 @@
 		.type = MEM_RANGE,
 		.res.mem_range = {
-			.address = PBM_BASE + PBM_PCI_CONFIG_BASE,
-			.size = PBM_PCI_CONFIG_SIZE,
+			.address = PBM_BASE + PBM_OBIO_BASE,
+			.size = PBM_OBIO_SIZE,
 			.relative = false,
 			.endianness = LITTLE_ENDIAN
@@ -106,6 +110,6 @@
 	.pio_window = {
 		.mem = {
-			.base = PBM_BASE + PBM_PCI_MEM_BASE,
-			.size = PBM_PCI_MEM_SIZE
+			.base = PBM_BASE + PBM_OBIO_BASE,
+			.size = PBM_OBIO_SIZE
 		}
 	}
