summaryrefslogtreecommitdiff
path: root/target/linux/atheros/patches-3.10/120-spiflash.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/atheros/patches-3.10/120-spiflash.patch')
-rw-r--r--target/linux/atheros/patches-3.10/120-spiflash.patch19
1 files changed, 16 insertions, 3 deletions
diff --git a/target/linux/atheros/patches-3.10/120-spiflash.patch b/target/linux/atheros/patches-3.10/120-spiflash.patch
index 262af60..8630a3a 100644
--- a/target/linux/atheros/patches-3.10/120-spiflash.patch
+++ b/target/linux/atheros/patches-3.10/120-spiflash.patch
@@ -23,7 +23,7 @@
--- /dev/null
+++ b/drivers/mtd/devices/ar2315.c
-@@ -0,0 +1,527 @@
+@@ -0,0 +1,540 @@
+
+/*
+ * MTD driver for the SPI Flash Memory support on Atheros AR2315
@@ -452,6 +452,7 @@
+{
+ struct spiflash_priv *priv;
+ struct mtd_info *mtd;
++ struct resource *res;
+ int index;
+ int result = 0;
+
@@ -461,7 +462,13 @@
+ priv->state = FL_READY;
+ mtd = &priv->mtd;
+
-+ priv->mmraddr = ioremap_nocache(SPI_FLASH_MMR, SPI_FLASH_MMR_SIZE);
++ res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
++ if (!res) {
++ dev_err(&pdev->dev, "No MMR resource found\n");
++ goto error;
++ }
++
++ priv->mmraddr = ioremap_nocache(res->start, resource_size(res));
+ if (!priv->mmraddr) {
+ dev_warn(&pdev->dev, SPIFLASH "Failed to map flash device\n");
+ goto error;
@@ -473,7 +480,13 @@
+ goto error;
+ }
+
-+ priv->readaddr = ioremap_nocache(SPI_FLASH_READ,
++ res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
++ if (!res) {
++ dev_err(&pdev->dev, "No flash readmem resource found\n");
++ goto error;
++ }
++
++ priv->readaddr = ioremap_nocache(res->start,
+ flashconfig_tbl[index].byte_cnt);
+ if (!priv->readaddr) {
+ dev_warn(&pdev->dev, SPIFLASH "Failed to map flash device\n");