aboutsummaryrefslogtreecommitdiffstats
path: root/target
Commit message (Collapse)AuthorAgeFilesLines
* treewide: sysupgrade: don't use $ARGV in platform_do_upgrade()Rafał Miłecki2019-09-0715-43/+43
| | | | | | | | | | stage2 passes image path to platform_do_upgrade() as an argument so it can be simply accessed using $1 Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 8b4bc7abe073489a3595eeb2d81818852319c148) [rmilecki: dropping ARGV without this change broke sysupgrade] Fixes: 6ac62c4b6cae ("base-files: don't set ARGV and ARGC")
* ath79: correct OCEDO Ursus phy-mode propertyDavid Bauer2019-09-071-1/+3
| | | | | | | | | | This fixes the previously incorrect phy-mode for the OCEDO Ursus GMAC0. See 62abbd587dc9 ("ath79: correct various phy-mode properties") for more details. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 7b137e9df920926dbd92f12450d9955c2759c92b)
* ramips: fix network setup for various NETGEAR boardsDavid Bauer2019-09-071-11/+6
| | | | | | | | | | | | | | | | | There are currently the following issues present for the Netgear R6220, R6350 and WNDR3700 v5: - LAN and WAN MAC-addresses are inverted - WAN MAC-address is off. It are +2 compared to the LAN MAC-address (R6350 only) - Switchport order is inverted in LuCi This commit fixes both these issues by assigning correct MAC-addresses to LAN and WAN interfaces and defining the switchports with the correct labels. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 13937a16d40693df67d3d39faa3a80644bdb7abf)
* ramips: use phy trigger for various Netgear boardsDavid Bauer2019-09-073-1/+2
| | | | | | | | | | This commit switches the default trigger for the WiFi LED from a netdev trigger on "wlan0" to a wireless-phy based trigger. THis allows the LED to work, even when the wireless interface is not named "wlan0" without modifiying the LED settings. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit fa46c9b208fe3833f085e9f6ddf7c492b16f6c34)
* ramips: disable badblock shifting for MT7621 NANDDavid Bauer2019-09-071-1/+1
| | | | | | | | | | | | | | | | | | The MediaTek MT7621 NAND driver currently intransparently shifts NAND pages when a block is marked as bad. Because of this, offsets for e.g. caldata and MAC-addresses seem to be off. This is, howeer, not a task for the mtd NAND driver, as the flash translation layer is tasked with this. This patch disables this badblock shifting. This fix was originally proposed by Jo-Philipp Wich at https://bugs.openwrt.org/index.php?do=details&task_id=1926 Fixes FS#1926 ("MTD partition offset not correctly mapped when bad eraseblocks present") Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 527832e54bf3bc4d699a145ae66f34230246f0a9)
* treewide: fix invalid UPGRADE_OPT_SAVE_CONFIG spellingsRafał Miłecki2019-09-065-7/+7
| | | | | | | | That was a result of accidentally running "sed" twice on some files. Fixes: 9b9412d55cca ("treewide: replace remaining (not working now) $SAVE_CONFIG uses") Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 1078de96e315f3cc2675b2c5935009e8c6159ad4)
* treewide: replace remaining (not working now) $SAVE_CONFIG usesRafał Miłecki2019-09-068-10/+10
| | | | | | | | This var has been replaced by the $UPGRADE_OPT_UPGRADE_OPT_SAVE_CONFIG Fixes: f25d164aca80 ("base-files: pass "save_config" option to the "sysupgrade" method") Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 5797fe84a3b508483f7d82e177157c1bf2f342d9)
* sdk: use bundle-libraries.sh to ship kernel objtool toolsJo-Philipp Wich2019-09-041-8/+2
| | | | | | | | | | | Ensure that the kernel objtool utilities are processed by the library bundler in order to ensure that they're usable on foreign systems with different libc versions. Fixes: a9f6fceb42 ("sdk: fix building external modules when CONFIG_STACK_VALIDATION=y") Acked-by: Yousong Zhou <yszhou4tech@gmail.com> Signed-off-by: Jo-Philipp Wich <jo@mein.io> (cherry picked from commit efaaadb49e90b51ba3a6adc6fafc330c23b8f764)
* treewide: sysupgrade: pass "save_partitions" option to the "sysupgrade" methodRafał Miłecki2019-09-047-7/+7
| | | | | | | | This explicitly lets stage2 know if partitions should be preserved. No more "touch /tmp/sysupgrade.always.overwrite.bootdisk.partmap" hack. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit b6f4cd57e19a8cfcd9ff52582b65164ce6213c3d)
* sdk: fix GCC and Python dangling symlinksPetr Štetiar2019-09-041-1/+2
| | | | | | | | | | | | | | Force prereq again in SDK in order to fix GCC and Python dangling symlinks: staging_dir/host/bin/g++ -> /builder/ath79_generic/ccache_cxx.sh staging_dir/host/bin/gcc -> /builder/ath79_generic/ccache_cc.sh staging_dir/host/bin/python -> /usr/bin/python3.5 staging_dir/host/bin/python3 -> /usr/bin/python3.5 Ref: FS#2424 Signed-off-by: Petr Štetiar <ynezz@true.cz> (cherry picked from commit 200f2666fb1c8d9d128824dc5586e0e66386971f)
* sdk: Fix cryptodev-linux build when CONFIG_ARM64_MODULE_PLTS=yJeffery To2019-09-041-1/+2
| | | | | | | | | When CONFIG_ARM64_MODULE_PLTS=y, arch/arm64/kernel/module.lds is required to build cryptodev-linux. This updates the sdk to include this file. Signed-off-by: Jeffery To <jeffery.to@gmail.com> (cherry picked from commit 6e300f6a0c94812d0f4d8f67df6604c763f7552f)
* mvebu: sysupgrade: drop platform_copy_config_sdcard() argumentRafał Miłecki2019-09-041-1/+1
| | | | | | | | That function doesn't take any arguments so don't pass anything when calling it. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit 670ce65a44db4263ee21a3fce962c47378ef042b)
* target/toolchain/files/wrapper.sh: simplify 'case'Eneas U de Queiroz2019-09-041-9/+1
| | | | | | | | Removed an eglibc remnant, and while at it, grouped all of the TOOLCHAIN_PLATFORMs using the same FLAGS together. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com> (cherry picked from commit 7d97bc19f08fc3f9a644b70323daa58e58291227)
* bcm53xx: sysupgrade: call nand_do_upgrade() from platform_do_upgrade()Rafał Miłecki2019-09-041-17/+12
| | | | | | | | | | | | Calling nand_do_upgrade() from platform_pre_upgrade() was obsoleted in the commit 30f61a34b4cf ("base-files: always use staged sysupgrade"). This change brings bcm53xx in sync with other targets and allows dropping backward compatibility code. It shouldn't change any user visible behavior. Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commit ccf8a8e8633ccfd94fda233b06055ac42e4c9fd5)
* gemini: Fix up DNS-313 compatible stringLinus Walleij2019-09-042-1/+22
| | | | | | | | | | | It's a simple typo in the DNS file, which was pretty serious. No scripts were working properly. Fix it up. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [integrate upstream patch into openwrt target] (cherry picked from commit 5470e928d08fd4cca99cf77ccee72e4fee444d27)
* apm821xx: fix bogus key-presses on bootChristian Lamparter2019-09-041-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | "There are often transient line events when the system is powered up and initialized and it is often necessary for the gpio_chip driver to clear any interrupt flags in hardware before setting up the gpio chip, especially the irqchip portions of it." <http://lists.infradead.org/pipermail/openwrt-devel/2019-June/017630.html> This patch adds a fix for the APM821XX's interrupt controller to clear any bogus pending toggled interrupts that happens on various APM821XX boards on boot. The patch also changes the debouce-interval from the default 5ms debounce interval to 60ms all around. The default setting caused on occasions that the button state became stuck in a pressed state, even though the button was released. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (backported from commit 971f31bedcad0a954a4a4e79140346cc896d352e)
* ath79: Merge cases in 11-ath10k-caldataAdrian Schmutzler2019-09-041-5/+2
| | | | | | | Cosmetical patch that just merges two cases. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> (cherry picked from commit 28baaaae82155e7fc695789dd0a807cc2f298be8)
* gemini: Fix MAC address assignment for DIR-685Linus Walleij2019-09-041-0/+15
| | | | | | | | | | | | The DIR-685 has the MAC addresses in the RedBoot code just like DNS-313. Check some magic numbers to determine that the MAC address is where we want it and extract it from RedBoot. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [replaced ifconfig with ip, ! -z = -n, added string quotes] (cherry picked from commit 86098ea87e8ef4051da5f3a1d7f75737e36df512)
* gemini: Make a per-board case for ethernet MACLinus Walleij2019-09-041-12/+16
| | | | | | | | | The DNS-313 isn't the only special board so let's bite the bullet and create a case ladder in preparation for DIR-685. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [refreshed] (cherry picked from commit 38d85d2c9fd9a3fd061fb56823821834dd720516)
* gemini: Use library functions to assign MAC addressLinus Walleij2019-09-041-12/+20
| | | | | | | | | | | | | | | | | | | This simplifies the ethernet address extraction script by using standard library functions to locate the MTD partitions and extract ethernet address from a binary offset location in the flash. Furthermore, the aging ifconfig is replaced by the ip tool, which will now assign the MAC addresses. Suggested-by: Christian Lamparter <chunkeey@gmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [ifconfig replacement, use -n instead of ! -z, -n requires string to be quoted within the test brackets, drop prepended "x" in check, add quotes, make local variables local, kill whitespaces] (cherry picked from commit cd6c3535cd2c7779a8d65f792c36082ee3822c11)
* gemini: enable CONFIG_PACKETChristian Lamparter2019-09-042-2/+0
| | | | | | | | | | | CONFIG_PACKET is a important feature to have. The Packet protocol is used by applications which communicate directly with network devices without an intermediate network protocol implemented in the kernel, e.g. tcpdump and ip. Signed-off-by: Christian Lamparter <chunkeey@gmail.com> (cherry picked from commit bdbb679adb976f0d2f06e4acbd5a34f63fc949d5)
* ar71xx: WNR2200: remove redundant GPIO for WLAN LEDMichal Cieslakiewicz2019-08-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | Without this patch, an extra entry appears for AR9287 GPIO that duplicates WLAN LED but in fact drives nothing: gpiochip1: GPIOs 502-511, ath9k-phy0: gpio-502 ( |netgear:blue:wlan ) out hi gpio-503 ( |netgear:amber:test ) out hi gpio-504 ( |netgear:green:power ) out lo gpio-505 ( |rfkill ) in hi gpio-507 ( |wps ) in hi gpio-508 ( |reset ) in hi gpio-510 ( |ath9k-phy0 ) out hi <===! The pin pointed above is default LED GPIO (8) for AR9287. For WNR2200 it is not connected anywhere - pin 0 drives blue WLAN LED instead - but initialization code is missing that information. This fix calls ap9x_pci_setup_wmac_led_pin() function at device setup, forcing WLAN LED pin to be 0 and removing redundant entry. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
* ath79: etactica-eg200: fix restore buttonKarl Pálsson2019-08-301-1/+1
| | | | | | | | | The button is labelled reboot/restore in documentation, and has always been used for that. Naming it WPS has always been wrong. Signed-off-by: Karl Pálsson <karlp@etactica.com> [matched author with SoB] Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* gemini: Stop enforcing command lineLinus Walleij2019-08-302-4/+0
| | | | | | | | | | | | | The command line enforced by the kernel is harmful, we want to use the command line passed from the device tree. This is especially important for the SQ201, Teltonika RUT and WBD111 which has a console set to 115200n8 and not 19200n8 like all the others, so their consoles will be confusingly changing baudrate between boot loader and kernel. The setting in the device tree corresponds to what the boot loader is using. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> (cherry picked from commit ea44ed5f388aecb6f745f7dd9b7df00748f7785f)
* kernel: bump 4.14 to 4.14.141Koen Vandeputte2019-08-302-4/+4
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.140Koen Vandeputte2019-08-282-4/+4
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx/ath79: ag71xx: dont fetch the same var againKoen Vandeputte2019-08-272-2/+2
| | | | | | | | tx_size was just declared above and set to BIT(tx->order) Use the declaration instead, which could avoid a pointer deref Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com> (cherry picked from commit 6852eab58236e3991f5d73f211018dfef01f2a64)
* ar71xx: ag71xx: use base address value directly from the sourceKoen Vandeputte2019-08-271-2/+2
| | | | | | This brings the code more inline with the ath79 flavour Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx: ag71xx: make use of managed dev API simplifying codeKoen Vandeputte2019-08-271-51/+34
| | | | | | | | | Backport of a4eef43a120d ("ath79: ag71xx: replace alloc_etherdev with devm_alloc_etherdev") combined with the initial changes from John Crispin. Simplifies the code a lot by using the Managed dev API. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx: ag71xx: replace ag71xx_get_phy_if_mode_name with phy_modes()Koen Vandeputte2019-08-271-22/+1
| | | | | | Backport of f73b2d64ed56 ("ath79: ag71xx: replace ag71xx_get_phy_if_mode_name() with phy_modes()") Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx: ag71xx: pass correct device pointer to dma functionsKoen Vandeputte2019-08-271-7/+7
| | | | | | | | | Backport of 4eaa3626a821 ("ath79: ag71xx: pass correct device pointer to dma functions") While 4.14 does not contain the warnings, it still makes sense to use the proper pointers here. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx/ath79: ag71xx: get ring_mask consistentKoen Vandeputte2019-08-272-2/+2
| | | | | | | | | All other instances of this identical declaration fetch the value directly from the ring_order. Also do it here. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx: ag71xx: add missing register writesKoen Vandeputte2019-08-271-0/+5
| | | | | | These are added in ath79, but were not backported here Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.139Koen Vandeputte2019-08-275-1/+5
| | | | | | | | | | | | Refreshed all patches. Also add a missing symbol for x86 which got used now in this bump. - ISCSI_IBFT Compile-tested on: cns3xxx, x86_64 Runtime-tested on: cns3xxx, x86_64 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ath79: Fix whitespace errors in 11-ath10k-caldataAdrian Schmutzler2019-08-271-2/+2
| | | | | Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> (cherry picked from commit 1174b94bc98db9730cec8501397cf997b6f7b35c)
* imagebuilder: fix `make info` for empty SUPPORTED_DEVICESPaul Spooren2019-08-221-1/+2
| | | | | | | | | | For x86/64 (maybe more) target the SUPPORTED_DEVICES variable is empty which causes the `&&` junction to fail, producing a non zero exit code. Tested-by: Paul Spooren <mail@aparcar.org> Fixed-by: Jo-Philipp Wich <jo@mein.io> Signed-off-by: Paul Spooren <mail@aparcar.org> (cherry picked from commit 07926d7def59e5684b488e9b614342edc19e7eb2)
* kernel: Activate CONFIG_OPTIMIZE_INLININGHauke Mehrtens2019-08-172-9/+104
| | | | | | | | | | | | | | | | | | | | | | | | This will reduce the size of the kernel if CONFIG_CC_OPTIMIZE_FOR_SIZE is set like for all targets with small_flash feature flag. I haven't seen any changes for an ARM64 target which optimizes the kernel for speed instead. On the ath79/tiny target the uncompressed kernel size was reduced by 3.2% and the compressed kernel size by 2.1% kernel size with CONFIG_OPTIMIZE_INLINING=n 4346412 build_dir/target-mips_24kc_musl/linux-ath79_tiny/vmlinux 1391169 build_dir/target-mips_24kc_musl/linux-ath79_tiny/tplink_tl-wr941-v4-kernel.bin Kernel size with CONFIG_OPTIMIZE_INLINING=y 4212396 build_dir/target-mips_24kc_musl/linux-ath79_tiny/vmlinux 1362051 build_dir/target-mips_24kc_musl/linux-ath79_tiny/tplink_tl-wr941-v4-kernel.bin This change is currently pending for kernel 5.2 and already in linux-next, this updates our patch to match the upstream version. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> (cherry picked from commit 6dac1c0a9b94b62b6412b74a8997f728570f36be)
* mvebu: sysupgrade: sdcard: fix platform_do_upgrade_sdcardKlaus Kudielka2019-08-171-18/+16
| | | | | | | | | | | | Unconditionally execute the final case statement, even if the disk layout changed. This is necessary, to keep the original Turris Omnia flash instructions working: The disk layout WILL change, when switching from TurrisOS to OpenWRT. Without updating the uboot environment at the same time, the user would end up with an unbootable system. Fixes commit 2e5a0b81ec ("mvebu: sysupgrade: sdcard: keep user added ...") Signed-off-by: Klaus Kudielka <klaus.kudielka@gmail.com>
* mvebu: enable xHCI USB controller connected to PCIeTomasz Maciej Nowak2019-08-171-0/+1
| | | | | | | | | | This commit fixes regression on Linksys WRT1900 (Mamba) where this device doesn't have USB 3.0 controller integrated in SoC, instead it has Etron EJ168 connected to PCIe lane. Previously enabled in kernel 4.4 and 4.9, was lost in transition to 4.14. Fixes: 4ccad92 ("mvebu: Add support for kernel 4.14") Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
* lantiq: unify Fritz!Box LED mappingsDavid Bauer2019-08-154-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | This commit unifies the LED mapping of the AVM Fritz!Box routers, which have a combined Power/DSL LED. With the stock firmware, the Power LED has the following characteristics: - Blink when DSL sync is being established - Solid when DSL sync is present We can't completely resemble this behavior in OpenWrt. Currently, the Power LED is completely off, when DSL sync is missing. This is not really helpful, as a user might have the impression, that he bricked his device. Instead, map the Info-LED to the state of the DSL connection. There is no consistent behavior for the Info-LED in the stock firmware, as the user can set it's function by himself. The DSL connection state is one possible option for the Info LED there. Also use the red Power LED to indicate a running upgrade, in case the board has a two-color Power LED. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 3032bf7f89e8ad5b69ab2f031287f475e5d2b829)
* Revert "ath79: make target source-only"Jo-Philipp Wich2019-08-141-1/+1
| | | | | | | | | | | | | | This reverts commit 2b074654b0f259518aa56e0975ca8e26c0c12bc9. Due to popular demand, I've decided to revert this commit after deliberating with Petr. This means that 19.07 will ship ath79 binary images after all. We do however consider the ath79 target on Kernel 4.14 in the 19.07 branch to be beta quality at best. Acked-by: Petr Štetiar <ynezz@true.cz> Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* kernel: bump 4.14 to 4.14.138Koen Vandeputte2019-08-148-25/+25
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* lantiq: add led-upgrade alias for Fritz!Box 7412David Bauer2019-08-111-0/+1
| | | | | | | | This adds the led-upgrade alias for the AVM Fritz!Box 7412 to indicate a running firmware upgrade. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 920abb9b5865fe0994a5c8115cde616dac63d5ae)
* lantiq: enable second VPE on Fritz!Box 7412David Bauer2019-08-112-2/+2
| | | | | | | | | | The AVM Fritz!Box 7412 does not use the VMMC part of the Lantiq chip but rather a proprietary solution based on the DECT chip for the FXS ports. Therefore, the second VPE can be enabled for use with OpenWrt. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit 891a7007598d5d396bf621fcc6ab0cc083b192b6)
* lantiq: correct Fritz!Box 7412 button logic levelDavid Bauer2019-08-111-2/+2
| | | | | | | | | | The AVM FRITZ!Box 7412 buttons are both active low, which is currently incorrectly defined in the device-tree. This leads to the device booting directly into failsafe. Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit c12947b39e96c82974cbe0fc3557259713f37770)
* lantiq: use wpad-basic for boards with enough storageJohann Neuhauser2019-08-111-2/+2
| | | | | | | | | | This commit selects wpad-basic for the FRITZ!Box 7312 and 7412 as wpad-mini is only selected on boards with small flash. Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de> [add short description] Signed-off-by: David Bauer <mail@david-bauer.net> (cherry picked from commit c3c3cd5e4a86acfc83449c47c5f87779a800bdc7)
* ar71xx: ag71xx: init rings with GFP_KERNELKoen Vandeputte2019-08-091-1/+1
| | | | | | | ar71xx got lost during final rebase .. Fixes: c8a6ce71e49c ("ar71xx/ath79: ag71xx: init rings with GFP_KERNEL") Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx/ath79: ag71xx: init rings with GFP_KERNELKoen Vandeputte2019-08-091-1/+1
| | | | | | | | | | | | | | | Upstream commit 246902bdf562d45ea3475fac64c93048a7a39f01 Which contains following explanation: -- There is no need to use GFP_ATOMIC here, GFP_KERNEL should be enough. The 'kcalloc()' just a few lines above, already uses GFP_KERNEL. -- Looking at the code, all other descriptors also use plain GFP_KERNEL Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* ar71xx/ath79: ag71xx: fix sleep in atomicKoen Vandeputte2019-08-092-12/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When enabling atomic-sleep-debugging options in the kernel, following splat is seen when disabling the interface (which happens on boot): [ 10.892878] eth0: link down [ 10.896788] BUG: sleeping function called from invalid context at net/core/dev.c:5563 [ 10.904730] in_atomic(): 1, irqs_disabled(): 1, pid: 425, name: ip [ 10.911004] 2 locks held by ip/425: [ 10.914539] #0: (rtnl_mutex){....}, at: [<80377474>] rtnetlink_rcv_msg+0x2d8/0x380 [ 10.922441] #1: (&(&ag->lock)->rlock){....}, at: [<80330158>] ag71xx_hw_disable+0x24/0x94 [ 10.930976] CPU: 0 PID: 425 Comm: ip Not tainted 4.14.136 #0 [ 10.936716] Stack : 805e0000 80589228 80557404 876998ec 80610000 80610000 87cdcafc 805b5327 [ 10.945233] 80551534 000001a9 8061386c 87699ccc 87cfb180 00000001 876998a0 84f70903 [ 10.953751] 00000000 00000000 80b00000 8769979c 6a7407fa 00000000 00000007 00000000 [ 10.962270] 000000b7 16d0954a 000000b6 00000000 80000000 87cb658c 87cb65b0 00000001 [ 10.970787] 8046f97c 87699ccc 87cfb180 87ff2810 00000003 802ce724 0806e098 80610000 [ 10.979306] ... [ 10.981797] Call Trace: [ 10.984287] [<8006cb0c>] show_stack+0x58/0x100 [ 10.988814] [<800aab34>] ___might_sleep+0x100/0x120 [ 10.993774] [<8035c434>] napi_disable+0x30/0xd8 [ 10.998377] [<80330198>] ag71xx_hw_disable+0x64/0x94 [ 11.003418] [<8033069c>] ag71xx_stop+0x24/0x38 [ 11.007959] [<80359e30>] __dev_close_many+0xcc/0x104 [ 11.013009] [<80362eac>] __dev_change_flags+0xc8/0x1ac [ 11.018227] [<80362fb8>] dev_change_flags+0x28/0x70 [ 11.023182] [<80376890>] do_setlink+0x31c/0x91c [ 11.027786] [<80379360>] rtnl_newlink+0x3ec/0x7f8 [ 11.032563] [<80377498>] rtnetlink_rcv_msg+0x2fc/0x380 [ 11.037799] [<8039a734>] netlink_rcv_skb+0xd4/0x178 [ 11.042754] [<80399d10>] netlink_unicast+0x168/0x250 [ 11.047796] [<8039a2d4>] netlink_sendmsg+0x3d8/0x434 [ 11.052841] [<8033f0e4>] ___sys_sendmsg+0x1dc/0x290 [ 11.057794] [<80340140>] __sys_sendmsg+0x54/0x84 [ 11.062495] [<8007212c>] syscall_common+0x34/0x58 This is caused by calling napi_disable() while holding the spinlock. Fix it by omitting the spinlock, which is not required here Extensively tested on GL-MiFi, RB-912 and RB-922 hardware Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.137Koen Vandeputte2019-08-096-10/+10
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx Runtime-tested on: cns3xxx Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>