Merge "Revert "Don't allocate address space for bmoca on host CPU""
diff --git a/3.3/bmoca.c b/3.3/bmoca.c
index 4d9a906..e8f1829 100644
--- a/3.3/bmoca.c
+++ b/3.3/bmoca.c
@@ -2382,10 +2382,7 @@
 static int moca_probe(struct platform_device *pdev)
 {
 	struct moca_priv_data *priv;
-#if !defined(CONFIG_BCM_6802_MoCA)
 	struct resource *mres, *ires = NULL;
-#endif
-	unsigned long long base;
 	int minor, err = 0;
 	struct moca_platform_data *pd = pdev->dev.platform_data;
 
@@ -2464,12 +2461,6 @@
 		goto bad;
 	}
 
-#if defined(CONFIG_BCM_6802_MoCA)
-	base = pd->spi_base;
-	priv->base = (void *)pd->spi_base;
-	priv->irq = pd->spi->irq;
-	priv->i2c_base = (void *)pd->bcm3450_i2c_base;
-#else
 	mres = platform_get_resource(pdev, IORESOURCE_MEM, 0);
 	ires = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
 
@@ -2479,7 +2470,11 @@
 		goto bad;
 	}
 
-	base = mres->start;
+#if defined(CONFIG_BCM_6802_MoCA)
+	priv->base = (void *)mres->start;
+	priv->irq = pd->spi->irq;
+	priv->i2c_base = (void *)pd->bcm3450_i2c_base;
+#else
 	priv->base = ioremap(mres->start, mres->end - mres->start + 1);
 	priv->irq = ires->start;
 	priv->i2c_base = ioremap(pd->bcm3450_i2c_base, sizeof(struct bsc_regs));
@@ -2501,7 +2496,7 @@
 
 	printk(KERN_INFO "bmoca: adding minor #%d at base 0x%08llx, IRQ %d, "
 		"I2C 0x%08llx/0x%02x\n", priv->minor,
-		base, priv->irq,
+		(unsigned long long)mres->start, priv->irq,
 		(unsigned long long)pd->bcm3450_i2c_base, pd->bcm3450_i2c_addr);
 
 	minor_tbl[priv->minor] = priv;
diff --git a/bmoca-6802.c b/bmoca-6802.c
index 78910ae..5714cad 100644
--- a/bmoca-6802.c
+++ b/bmoca-6802.c
@@ -87,7 +87,6 @@
 
 	.bcm3450_i2c_base =  0x10406200,
 	.bcm3450_i2c_addr =  0x70,
-	.spi_base =	0x10600000,
 	.hw_rev  =     HWREV_MOCA_20_GEN22,
 	.rf_band =     MOCA_BAND_EXT_D,
 	.chip_id =     0,
@@ -99,11 +98,24 @@
 #endif
 };
 
+static struct resource moca_lan_resources[] = {
+	[0] = {
+		.start = 0x10600000,
+		.end =   0x107ffd97,
+		.flags = IORESOURCE_MEM,
+	},
+	[1] = { /* Not used for 6802, define for bmoca */
+		.start = 0,
+		.end = 0,
+		.flags = IORESOURCE_IRQ,
+	}
+};
+
 static struct platform_device moca_lan_plat_dev = {
 	.name = "bmoca",
 	.id = 0,
-	.num_resources = 0,
-	.resource = NULL,
+	.num_resources = ARRAY_SIZE(moca_lan_resources),
+	.resource = moca_lan_resources,
 	.dev = {
 		.platform_data = &moca_lan_data,
 		.release = bogus_release,
@@ -116,7 +128,6 @@
 
 	.bcm3450_i2c_base =  0x10406200,
 	.bcm3450_i2c_addr =  0x70,
-	.spi_base =	0x10600000,
 	.hw_rev  = HWREV_MOCA_20_GEN22,
 	.chip_id = 0,
 	
@@ -131,11 +142,24 @@
 #endif
 };
 
+static struct resource moca_wan_resources[] = {
+	[0] = {
+		.start = 0x10600000,
+		.end =   0x107ffd97,
+		.flags = IORESOURCE_MEM,
+	},
+	[1] = { /* Not used for 6802, define for bmoca */
+		.start = 0,
+		.end = 0,
+		.flags = IORESOURCE_IRQ,
+	}
+};
+
 static struct platform_device moca_wan_plat_dev = {
 	.name          = "bmoca",
 	.id            = 1,
-	.num_resources = 0,
-	.resource      = NULL,
+	.num_resources = ARRAY_SIZE(moca_wan_resources),
+	.resource      = moca_wan_resources,
 	.dev           = {
 		.platform_data = &moca_wan_data,
 		.release       = bogus_release,
diff --git a/bmoca.h b/bmoca.h
index 3014df6..0c238f5 100644
--- a/bmoca.h
+++ b/bmoca.h
@@ -160,8 +160,6 @@
 	phys_addr_t		bcm3450_i2c_base;
 	int			bcm3450_i2c_addr;
 
-	u32			spi_base;
-
 	u32			hw_rev;  /* this is the chip_id */
 	u32			rf_band;