[source] kernel: update bcma including recent changes for 4.12

LEDE Commits lede-commits at lists.infradead.org
Tue Mar 21 02:01:08 PDT 2017


rmilecki pushed a commit to source.git, branch master:
https://git.lede-project.org/8fae77fc9bb783fcaeb58d94e1ce05ef41fe193c

commit 8fae77fc9bb783fcaeb58d94e1ce05ef41fe193c
Author: Rafał Miłecki <rafal at milecki.pl>
AuthorDate: Tue Mar 21 09:26:02 2017 +0100

    kernel: update bcma including recent changes for 4.12
    
    This adds support for describing GPIO chips placed on PCIe cards. Thanks
    to this we get working 2.4 GHz LED on Tenda AC9.
    
    Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
---
 .../patches-4.4/905-BCM53573-minor-hacks.patch     |  4 +--
 .../patches-4.9/905-BCM53573-minor-hacks.patch     |  4 +--
 .../generic/patches-4.4/026-bcma-from-4.12.patch   | 35 ++++++++++++++++++++++
 .../generic/patches-4.9/072-bcma-from-4.12.patch   | 35 ++++++++++++++++++++++
 4 files changed, 74 insertions(+), 4 deletions(-)

diff --git a/target/linux/bcm53xx/patches-4.4/905-BCM53573-minor-hacks.patch b/target/linux/bcm53xx/patches-4.4/905-BCM53573-minor-hacks.patch
index e48d3aa..52a32a0 100644
--- a/target/linux/bcm53xx/patches-4.4/905-BCM53573-minor-hacks.patch
+++ b/target/linux/bcm53xx/patches-4.4/905-BCM53573-minor-hacks.patch
@@ -29,7 +29,7 @@ Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
  		#size-cells = <1>;
 --- a/drivers/bcma/main.c
 +++ b/drivers/bcma/main.c
-@@ -352,14 +352,6 @@ static int bcma_register_devices(struct
+@@ -348,14 +348,6 @@ static int bcma_register_devices(struct
  	}
  #endif
  
@@ -44,7 +44,7 @@ Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
  #ifdef CONFIG_BCMA_NFLASH
  	if (bus->drv_cc.nflash.present) {
  		err = platform_device_register(&bcma_nflash_dev);
-@@ -440,6 +432,14 @@ int bcma_bus_register(struct bcma_bus *b
+@@ -436,6 +428,14 @@ int bcma_bus_register(struct bcma_bus *b
  			bcma_register_core(bus, core);
  	}
  
diff --git a/target/linux/bcm53xx/patches-4.9/905-BCM53573-minor-hacks.patch b/target/linux/bcm53xx/patches-4.9/905-BCM53573-minor-hacks.patch
index fad36a6..a2f15e5 100644
--- a/target/linux/bcm53xx/patches-4.9/905-BCM53573-minor-hacks.patch
+++ b/target/linux/bcm53xx/patches-4.9/905-BCM53573-minor-hacks.patch
@@ -29,7 +29,7 @@ Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
  		#size-cells = <1>;
 --- a/drivers/bcma/main.c
 +++ b/drivers/bcma/main.c
-@@ -352,14 +352,6 @@ static int bcma_register_devices(struct
+@@ -348,14 +348,6 @@ static int bcma_register_devices(struct
  	}
  #endif
  
@@ -44,7 +44,7 @@ Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
  #ifdef CONFIG_BCMA_NFLASH
  	if (bus->drv_cc.nflash.present) {
  		err = platform_device_register(&bcma_nflash_dev);
-@@ -440,6 +432,14 @@ int bcma_bus_register(struct bcma_bus *b
+@@ -436,6 +428,14 @@ int bcma_bus_register(struct bcma_bus *b
  			bcma_register_core(bus, core);
  	}
  
diff --git a/target/linux/generic/patches-4.4/026-bcma-from-4.12.patch b/target/linux/generic/patches-4.4/026-bcma-from-4.12.patch
index ab8a212..bd7d643 100644
--- a/target/linux/generic/patches-4.4/026-bcma-from-4.12.patch
+++ b/target/linux/generic/patches-4.4/026-bcma-from-4.12.patch
@@ -10,3 +10,38 @@
  #endif
  	switch (bus->chipinfo.id) {
  	case BCMA_CHIP_ID_BCM4707:
+--- a/drivers/bcma/main.c
++++ b/drivers/bcma/main.c
+@@ -201,9 +201,6 @@ static void bcma_of_fill_device(struct d
+ {
+ 	struct device_node *node;
+ 
+-	if (!IS_ENABLED(CONFIG_OF_IRQ))
+-		return;
+-
+ 	node = bcma_of_find_child_device(parent, core);
+ 	if (node)
+ 		core->dev.of_node = node;
+@@ -242,19 +239,18 @@ void bcma_prepare_core(struct bcma_bus *
+ 	core->dev.release = bcma_release_core_dev;
+ 	core->dev.bus = &bcma_bus_type;
+ 	dev_set_name(&core->dev, "bcma%d:%d", bus->num, core->core_index);
++	core->dev.parent = bcma_bus_get_host_dev(bus);
++	if (core->dev.parent)
++		bcma_of_fill_device(core->dev.parent, core);
+ 
+ 	switch (bus->hosttype) {
+ 	case BCMA_HOSTTYPE_PCI:
+-		core->dev.parent = &bus->host_pci->dev;
+ 		core->dma_dev = &bus->host_pci->dev;
+ 		core->irq = bus->host_pci->irq;
+ 		break;
+ 	case BCMA_HOSTTYPE_SOC:
+ 		if (IS_ENABLED(CONFIG_OF) && bus->host_pdev) {
+ 			core->dma_dev = &bus->host_pdev->dev;
+-			core->dev.parent = &bus->host_pdev->dev;
+-			if (core->dev.parent)
+-				bcma_of_fill_device(core->dev.parent, core);
+ 		} else {
+ 			core->dev.dma_mask = &core->dev.coherent_dma_mask;
+ 			core->dma_dev = &core->dev;
diff --git a/target/linux/generic/patches-4.9/072-bcma-from-4.12.patch b/target/linux/generic/patches-4.9/072-bcma-from-4.12.patch
index 1c3efea..23f2656 100644
--- a/target/linux/generic/patches-4.9/072-bcma-from-4.12.patch
+++ b/target/linux/generic/patches-4.9/072-bcma-from-4.12.patch
@@ -10,3 +10,38 @@
  #endif
  	switch (bus->chipinfo.id) {
  	case BCMA_CHIP_ID_BCM4707:
+--- a/drivers/bcma/main.c
++++ b/drivers/bcma/main.c
+@@ -201,9 +201,6 @@ static void bcma_of_fill_device(struct d
+ {
+ 	struct device_node *node;
+ 
+-	if (!IS_ENABLED(CONFIG_OF_IRQ))
+-		return;
+-
+ 	node = bcma_of_find_child_device(parent, core);
+ 	if (node)
+ 		core->dev.of_node = node;
+@@ -242,19 +239,18 @@ void bcma_prepare_core(struct bcma_bus *
+ 	core->dev.release = bcma_release_core_dev;
+ 	core->dev.bus = &bcma_bus_type;
+ 	dev_set_name(&core->dev, "bcma%d:%d", bus->num, core->core_index);
++	core->dev.parent = bcma_bus_get_host_dev(bus);
++	if (core->dev.parent)
++		bcma_of_fill_device(core->dev.parent, core);
+ 
+ 	switch (bus->hosttype) {
+ 	case BCMA_HOSTTYPE_PCI:
+-		core->dev.parent = &bus->host_pci->dev;
+ 		core->dma_dev = &bus->host_pci->dev;
+ 		core->irq = bus->host_pci->irq;
+ 		break;
+ 	case BCMA_HOSTTYPE_SOC:
+ 		if (IS_ENABLED(CONFIG_OF) && bus->host_pdev) {
+ 			core->dma_dev = &bus->host_pdev->dev;
+-			core->dev.parent = &bus->host_pdev->dev;
+-			if (core->dev.parent)
+-				bcma_of_fill_device(core->dev.parent, core);
+ 		} else {
+ 			core->dev.dma_mask = &core->dev.coherent_dma_mask;
+ 			core->dma_dev = &core->dev;



More information about the lede-commits mailing list