kernel: update 4.9 to 4.9.44
[openwrt/staging/chunkeey.git] / target / linux / generic / hack-4.9 / 835-misc-owl_loader.patch
1 From dd36f935973d91644449bd9749f6062a2bed821b Mon Sep 17 00:00:00 2001
2 From: Christian Lamparter <chunkeey@googlemail.com>
3 Date: Fri, 7 Jul 2017 17:26:46 +0200
4 Subject: misc: owl-loader for delayed Atheros ath9k fixup
5
6 Some devices (like the Cisco Meraki Z1 Cloud Managed Teleworker Gateway)
7 need to be able to initialize the PCIe wifi device. Normally, this is done
8 during the early stages of booting linux, because the necessary init code
9 is read from the memory mapped SPI and passed to pci_enable_ath9k_fixup.
10 However,this isn't possible for devices which have the init code for the
11 Atheros chip stored on NAND in an UBI volume. Hence, this module can be
12 used to initialze the chip when the user-space is ready to extract the
13 init code.
14
15 Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
16 Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
17 ---
18 drivers/misc/Kconfig | 12 ++++++++++++
19 drivers/misc/Makefile | 1 +
20 2 files changed, 13 insertions(+)
21
22 --- a/drivers/misc/Kconfig
23 +++ b/drivers/misc/Kconfig
24 @@ -151,6 +151,18 @@ config SGI_IOC4
25 If you have an SGI Altix with an IOC4-based card say Y.
26 Otherwise say N.
27
28 +config OWL_LOADER
29 + tristate "Owl loader for initializing Atheros PCI(e) Wifi chips"
30 + depends on PCI
31 + ---help---
32 + This kernel module helps to initialize certain Qualcomm
33 + Atheros' PCI(e) Wifi chips, which have the init data
34 + (which contains the PCI device ID for example) stored
35 + together with the calibration data in the file system.
36 +
37 + This is necessary for devices like the Cisco Meraki Z1, say M.
38 + Otherwise say N.
39 +
40 config TIFM_CORE
41 tristate "TI Flash Media interface support"
42 depends on PCI
43 --- a/drivers/misc/Makefile
44 +++ b/drivers/misc/Makefile
45 @@ -12,6 +12,7 @@ obj-$(CONFIG_ATMEL_TCLIB) += atmel_tclib
46 obj-$(CONFIG_DUMMY_IRQ) += dummy-irq.o
47 obj-$(CONFIG_ICS932S401) += ics932s401.o
48 obj-$(CONFIG_LKDTM) += lkdtm.o
49 +obj-$(CONFIG_OWL_LOADER) += owl-loader.o
50 obj-$(CONFIG_TIFM_CORE) += tifm_core.o
51 obj-$(CONFIG_TIFM_7XX1) += tifm_7xx1.o
52 obj-$(CONFIG_PHANTOM) += phantom.o