From 8fae77fc9bb783fcaeb58d94e1ce05ef41fe193c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Date: Tue, 21 Mar 2017 09:26:02 +0100 Subject: kernel: update bcma including recent changes for 4.12 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- .../generic/patches-4.4/026-bcma-from-4.12.patch | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'target/linux/generic/patches-4.4') 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 ab8a212940..bd7d643cbb 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; -- cgit v1.2.3