From 8e525a43b45f4bd4f88a438880f416285e23b0be Mon Sep 17 00:00:00 2001
From: =?utf8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
Date: Sat, 27 Sep 2014 07:49:48 +0000
Subject: [PATCH] kernel: update bcma to the tag master-2014-09-26
 (wireless-next)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 42672
---
 ...ipCommon-GPIO-IRQ-on-BCM47XX-arch-on.patch | 37 ----------------
 .../patches-3.10/025-bcma_backport.patch      | 29 ++++++++-----
 .../patches-3.14/025-bcma_backport.patch      | 42 ++++++++++++++-----
 3 files changed, 49 insertions(+), 59 deletions(-)
 delete mode 100644 target/linux/bcm53xx/patches-3.14/122-bcma-gpio-use-ChipCommon-GPIO-IRQ-on-BCM47XX-arch-on.patch

diff --git a/target/linux/bcm53xx/patches-3.14/122-bcma-gpio-use-ChipCommon-GPIO-IRQ-on-BCM47XX-arch-on.patch b/target/linux/bcm53xx/patches-3.14/122-bcma-gpio-use-ChipCommon-GPIO-IRQ-on-BCM47XX-arch-on.patch
deleted file mode 100644
index 4ea4b5ae64..0000000000
--- a/target/linux/bcm53xx/patches-3.14/122-bcma-gpio-use-ChipCommon-GPIO-IRQ-on-BCM47XX-arch-on.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From dfe45880e4ac50ebaa57e5f8a52b69e7e74cb7ca Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
-Date: Sun, 21 Sep 2014 20:40:32 +0200
-Subject: [PATCH] bcma: gpio: use ChipCommon GPIO IRQ on BCM47XX arch only
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-GPIOs can be also used on bcm53xx, however this arch requires different
-implementation of IRQ support. It uses different IRQ number (117) and
-different masks & acking.
-
-Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
----
- drivers/bcma/driver_gpio.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/drivers/bcma/driver_gpio.c
-+++ b/drivers/bcma/driver_gpio.c
-@@ -76,7 +76,7 @@ static void bcma_gpio_free(struct gpio_c
- 	bcma_chipco_gpio_pullup(cc, 1 << gpio, 0);
- }
- 
--#if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
-+#if IS_BUILTIN(CONFIG_BCM47XX)
- static int bcma_gpio_to_irq(struct gpio_chip *chip, unsigned gpio)
- {
- 	struct bcma_drv_cc *cc = bcma_gpio_get_cc(chip);
-@@ -215,7 +215,7 @@ int bcma_gpio_init(struct bcma_drv_cc *c
- 	chip->set		= bcma_gpio_set_value;
- 	chip->direction_input	= bcma_gpio_direction_input;
- 	chip->direction_output	= bcma_gpio_direction_output;
--#if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
-+#if IS_BUILTIN(CONFIG_BCM47XX)
- 	chip->to_irq		= bcma_gpio_to_irq;
- #endif
- 	switch (cc->core->bus->chipinfo.id) {
diff --git a/target/linux/generic/patches-3.10/025-bcma_backport.patch b/target/linux/generic/patches-3.10/025-bcma_backport.patch
index 922b140ea6..0ff3483314 100644
--- a/target/linux/generic/patches-3.10/025-bcma_backport.patch
+++ b/target/linux/generic/patches-3.10/025-bcma_backport.patch
@@ -378,7 +378,7 @@
  	bcma_chipco_gpio_pullup(cc, 1 << gpio, 0);
  }
  
-+#if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
++#if IS_BUILTIN(CONFIG_BCM47XX)
  static int bcma_gpio_to_irq(struct gpio_chip *chip, unsigned gpio)
  {
  	struct bcma_drv_cc *cc = bcma_gpio_get_cc(chip);
@@ -516,7 +516,7 @@
  	chip->set		= bcma_gpio_set_value;
  	chip->direction_input	= bcma_gpio_direction_input;
  	chip->direction_output	= bcma_gpio_direction_output;
-+#if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
++#if IS_BUILTIN(CONFIG_BCM47XX)
  	chip->to_irq		= bcma_gpio_to_irq;
 -	chip->ngpio		= 16;
 +#endif
@@ -1300,26 +1300,33 @@
  		}
  	}
  	return 0;
-@@ -421,9 +440,6 @@ void bcma_init_bus(struct bcma_bus *bus)
+@@ -420,9 +439,7 @@ void bcma_init_bus(struct bcma_bus *bus)
+ {
  	s32 tmp;
  	struct bcma_chipinfo *chipinfo = &(bus->chipinfo);
- 
+-
 -	if (bus->init_done)
 -		return;
--
++	char chip_id[8];
+ 
  	INIT_LIST_HEAD(&bus->cores);
  	bus->nr_cores = 0;
- 
-@@ -435,8 +451,6 @@ void bcma_init_bus(struct bcma_bus *bus)
+@@ -433,10 +450,11 @@ void bcma_init_bus(struct bcma_bus *bus)
+ 	chipinfo->id = (tmp & BCMA_CC_ID_ID) >> BCMA_CC_ID_ID_SHIFT;
+ 	chipinfo->rev = (tmp & BCMA_CC_ID_REV) >> BCMA_CC_ID_REV_SHIFT;
  	chipinfo->pkg = (tmp & BCMA_CC_ID_PKG) >> BCMA_CC_ID_PKG_SHIFT;
- 	bcma_info(bus, "Found chip with id 0x%04X, rev 0x%02X and package 0x%02X\n",
- 		  chipinfo->id, chipinfo->rev, chipinfo->pkg);
--
+-	bcma_info(bus, "Found chip with id 0x%04X, rev 0x%02X and package 0x%02X\n",
+-		  chipinfo->id, chipinfo->rev, chipinfo->pkg);
+ 
 -	bus->init_done = true;
++	snprintf(chip_id, ARRAY_SIZE(chip_id),
++		 (chipinfo->id > 0x9999) ? "%d" : "0x%04X", chipinfo->id);
++	bcma_info(bus, "Found chip with id %s, rev 0x%02X and package 0x%02X\n",
++		  chip_id, chipinfo->rev, chipinfo->pkg);
  }
  
  int bcma_bus_scan(struct bcma_bus *bus)
-@@ -446,8 +460,6 @@ int bcma_bus_scan(struct bcma_bus *bus)
+@@ -446,8 +464,6 @@ int bcma_bus_scan(struct bcma_bus *bus)
  
  	int err, core_num = 0;
  
diff --git a/target/linux/generic/patches-3.14/025-bcma_backport.patch b/target/linux/generic/patches-3.14/025-bcma_backport.patch
index d5ed75f909..1bb026c1e7 100644
--- a/target/linux/generic/patches-3.14/025-bcma_backport.patch
+++ b/target/linux/generic/patches-3.14/025-bcma_backport.patch
@@ -24,8 +24,21 @@
  	case BCMA_CHIP_ID_BCM43428:
 --- a/drivers/bcma/driver_gpio.c
 +++ b/drivers/bcma/driver_gpio.c
-@@ -218,7 +218,15 @@ int bcma_gpio_init(struct bcma_drv_cc *c
- #if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
+@@ -76,7 +76,7 @@ static void bcma_gpio_free(struct gpio_c
+ 	bcma_chipco_gpio_pullup(cc, 1 << gpio, 0);
+ }
+ 
+-#if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
++#if IS_BUILTIN(CONFIG_BCM47XX)
+ static int bcma_gpio_to_irq(struct gpio_chip *chip, unsigned gpio)
+ {
+ 	struct bcma_drv_cc *cc = bcma_gpio_get_cc(chip);
+@@ -215,10 +215,18 @@ int bcma_gpio_init(struct bcma_drv_cc *c
+ 	chip->set		= bcma_gpio_set_value;
+ 	chip->direction_input	= bcma_gpio_direction_input;
+ 	chip->direction_output	= bcma_gpio_direction_output;
+-#if IS_BUILTIN(CONFIG_BCMA_HOST_SOC)
++#if IS_BUILTIN(CONFIG_BCM47XX)
  	chip->to_irq		= bcma_gpio_to_irq;
  #endif
 -	chip->ngpio		= 16;
@@ -807,26 +820,33 @@
  		}
  	}
  	return 0;
-@@ -435,9 +440,6 @@ void bcma_init_bus(struct bcma_bus *bus)
+@@ -434,9 +439,7 @@ void bcma_init_bus(struct bcma_bus *bus)
+ {
  	s32 tmp;
  	struct bcma_chipinfo *chipinfo = &(bus->chipinfo);
- 
+-
 -	if (bus->init_done)
 -		return;
--
++	char chip_id[8];
+ 
  	INIT_LIST_HEAD(&bus->cores);
  	bus->nr_cores = 0;
- 
-@@ -449,8 +451,6 @@ void bcma_init_bus(struct bcma_bus *bus)
+@@ -447,10 +450,11 @@ void bcma_init_bus(struct bcma_bus *bus)
+ 	chipinfo->id = (tmp & BCMA_CC_ID_ID) >> BCMA_CC_ID_ID_SHIFT;
+ 	chipinfo->rev = (tmp & BCMA_CC_ID_REV) >> BCMA_CC_ID_REV_SHIFT;
  	chipinfo->pkg = (tmp & BCMA_CC_ID_PKG) >> BCMA_CC_ID_PKG_SHIFT;
- 	bcma_info(bus, "Found chip with id 0x%04X, rev 0x%02X and package 0x%02X\n",
- 		  chipinfo->id, chipinfo->rev, chipinfo->pkg);
--
+-	bcma_info(bus, "Found chip with id 0x%04X, rev 0x%02X and package 0x%02X\n",
+-		  chipinfo->id, chipinfo->rev, chipinfo->pkg);
+ 
 -	bus->init_done = true;
++	snprintf(chip_id, ARRAY_SIZE(chip_id),
++		 (chipinfo->id > 0x9999) ? "%d" : "0x%04X", chipinfo->id);
++	bcma_info(bus, "Found chip with id %s, rev 0x%02X and package 0x%02X\n",
++		  chip_id, chipinfo->rev, chipinfo->pkg);
  }
  
  int bcma_bus_scan(struct bcma_bus *bus)
-@@ -460,8 +460,6 @@ int bcma_bus_scan(struct bcma_bus *bus)
+@@ -460,8 +464,6 @@ int bcma_bus_scan(struct bcma_bus *bus)
  
  	int err, core_num = 0;
  
-- 
2.30.2