aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic
Commit message (Collapse)AuthorAgeFilesLines
* kernel: Remove CONFIG_COMPATHauke Mehrtens2019-05-113-0/+3
| | | | | | | | | | | | | This removes support for executing old 32 bit applications on 64 bit ARM and MIPS kernels. On OpenWrt we normally compile all the user space applications on our own and do not support third party binary only modules especial not 32 bit applications on 64 bit CPUs. This reduces the attack surface on such systems and should also save some memory. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Remove CONFIG_DEBUG_RODATA and CONFIG_DEBUG_SET_MODULE_RONXHauke Mehrtens2019-05-112-4/+0
| | | | | | | These were renamed to CONFIG_STRICT_KERNEL_RWX and CONFIG_STRICT_MODULE_RWX and are activated in kernel 4.14 and later by default. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Activate CONFIG_ARM64_SW_TTBR0_PANHauke Mehrtens2019-05-112-0/+2
| | | | | | | | | | This activates "Emulate Privileged Access Never using TTBR0_EL1 switching" on ARM64. This should prevent the kernel from reading code from user space in kernel context. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* Kernel: Activate CONFIG_HARDENED_USERCOPYHauke Mehrtens2019-05-113-3/+7
| | | | | | | | | | | This adds additional checks to the copy_from_user() and copy_to_user() functions. The details are described in this article: https://lwn.net/Articles/695991/ This should only have a very small performance impact on system calls and should not affect routing performance. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: bump 4.19 to 4.19.38Koen Vandeputte2019-05-061-3/+3
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.172Koen Vandeputte2019-05-061-1/+1
| | | | | | | | | Refreshed all patches. Compile-tested on: ar7 Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: Rename UPROBE_EVENT to UPROBE_EVENTSPetr Štetiar2019-05-052-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Upstream has renamed UPROBE_EVENT to UPROBE_EVENTS in the following commit: commit 6b0b7551428e4caae1e2c023a529465a9a9ae2d4 Author: Anton Blanchard <anton@samba.org> Date: Thu Feb 16 17:00:50 2017 +1100 perf/core: Rename CONFIG_[UK]PROBE_EVENT to CONFIG_[UK]PROBE_EVENTS We have uses of CONFIG_UPROBE_EVENT and CONFIG_KPROBE_EVENT as well as CONFIG_UPROBE_EVENTS and CONFIG_KPROBE_EVENTS. Consistently use the plurals. So I'm changing it to this plural option in order to make kconfig happy and stop asking about it if kernel is compiled with verbose logging: Enable uprobes-based dynamic events (UPROBE_EVENTS) [Y/n/?] (NEW) Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: Remove support for kernel 3.18Hauke Mehrtens2019-05-03244-40439/+0
| | | | | | | | | | No target is using kernel 3.18 anymore, remove all the generic support for kernel 3.18. The removed packages are depending on kernel 3.18 only and are not used on any recent kernel. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: bump 4.19 to 4.19.37Koen Vandeputte2019-05-028-38/+38
| | | | | | | | | | | | | Refreshed all patches. Altered patches: - 150-bridge_allow_receiption_on_disabled_port.patch - 201-extra_optimization.patch Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.114Koen Vandeputte2019-05-027-16/+18
| | | | | | | | | | | | | | | | Refreshed all patches. Altered patches: - 150-bridge_allow_receiption_on_disabled_port.patch - 201-extra_optimization.patch Remove upstreamed: - 022-0006-crypto-crypto4xx-properly-set-IV-after-de-and-encryp.patch Compile-tested on: ar71xx, cns3xxx, imx6, x86_64 Runtime-tested on: ar71xx, cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.171Koen Vandeputte2019-05-025-15/+17
| | | | | | | | | | | | | Refreshed all patches. Altered patches: - 150-bridge_allow_receiption_on_disabled_port.patch - 201-extra_optimization.patch Compile-tested on: ar7 Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: add missing symbol in 4.19 configKoen Vandeputte2019-04-291-0/+1
| | | | | | Intel AtomISP2 dummy / power-management driver (INTEL_ATOMISP2_PM) [N/m/y/?] (NEW) Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: fix regression on 4.19 with ↵Felix Fietkau2019-04-271-0/+9
| | | | | | | | | | | 613-netfilter_optional_tcp_window_check.patch (FS#2253) Since ct->proto.tcp.last_win isn't updated when nf_ct_tcp_no_window_check is enabled, the retransmission timeout check needs to be bypassed. Based on patch by Rob Mosher Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: bump 4.19 to 4.19.36Koen Vandeputte2019-04-232-3/+3
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.113Koen Vandeputte2019-04-231-4/+4
| | | | | | | | | Refreshed all patches. Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.170Koen Vandeputte2019-04-231-2/+2
| | | | | | | | | Refreshed all patches. Compile-tested on: ar7 Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.19 to 4.19.35Koen Vandeputte2019-04-223-14/+8
| | | | | | | | | | | | | | | Refreshed all patches. Fixes: - CVE-2019-3887 New symbol: - CONFIG_LDISC_AUTOLOAD Compile-tested on: cns3xxx, imx6 Runtime-tested on: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.112Koen Vandeputte2019-04-222-9/+3
| | | | | | | | | | | | Refreshed all patches. New symbol: - CONFIG_LDISC_AUTOLOAD Compile-tested on: ar71xx, cns3xxx, imx6, x86_64 Runtime-tested on: ar71xx, cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.169Koen Vandeputte2019-04-222-1/+3
| | | | | | | | | | | | | Refreshed all patches. New symbols: - CONFIG_LDISC_AUTOLOAD - CONFIG_PPC_BARRIER_NOSPEC Compile-tested on: ar7 Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: add missing drm symbolLucian Cristian2019-04-183-0/+3
| | | | | | dependency introduced with module drm-kms-helper Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
* kernel: MIPS: perf: ath79: Fix perfcount IRQ assignmentPetr Štetiar2019-04-152-0/+234
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently it's not possible to use perf on ath79 due to genirq flags mismatch happening on static virtual IRQ 13 which is used for performance counters hardware IRQ 5. On TP-Link Archer C7v5: CPU0 2: 0 MIPS 2 ath9k 4: 318 MIPS 4 19000000.eth 7: 55034 MIPS 7 timer 8: 1236 MISC 3 ttyS0 12: 0 INTC 1 ehci_hcd:usb1 13: 0 gpio-ath79 2 keys 14: 0 gpio-ath79 5 keys 15: 31 AR724X PCI 1 ath10k_pci $ perf top genirq: Flags mismatch irq 13. 00014c83 (mips_perf_pmu) vs. 00002003 (keys) On TP-Link Archer C7v4: CPU0 4: 0 MIPS 4 19000000.eth 5: 7135 MIPS 5 1a000000.eth 7: 98379 MIPS 7 timer 8: 30 MISC 3 ttyS0 12: 90028 INTC 0 ath9k 13: 5520 INTC 1 ehci_hcd:usb1 14: 4623 INTC 2 ehci_hcd:usb2 15: 32844 AR724X PCI 1 ath10k_pci 16: 0 gpio-ath79 16 keys 23: 0 gpio-ath79 23 keys $ perf top genirq: Flags mismatch irq 13. 00014c80 (mips_perf_pmu) vs. 00000080 (ehci_hcd:usb1) This problem is happening, because currently statically assigned virtual IRQ 13 for performance counters is not claimed during the initialization of MIPS PMU during the bootup, so the IRQ subsystem doesn't know, that this interrupt isn't available for further use. So this patch fixes the issue by simply booking hardware IRQ 5 for MIPS PMU. Signed-off-by: Petr Štetiar <ynezz@true.cz>
* kernel: move and replace accepted patchDaniel Golle2019-04-111-12/+11
| | | | Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: bump 4.19 to 4.19.34Koen Vandeputte2019-04-0825-137/+71
| | | | | | | | | | | | | | | | | | | | | | | | Refreshed all patches. Removed: - 030-PCI-dwc-skip-MSI-init-if-MSIs-have-been-explicitly-d.patch Altered: - 366-netfilter-nf_flow_table-clean-up-and-fix-dst-handlin.patch - 650-netfilter-add-xt_OFFLOAD-target.patch - 662-remove_pfifo_fast.patch - 332-arc-add-OWRTDTB-section.patch - 100-clocksource-drivers-arch_timer-Workaround-for-Allwin.patch - 702-phy_add_aneg_done_function.patch New symbols: - ARC_IRQ_NO_AUTOSAVE - SUN50I_ERRATUM_UNKNOWN1 Compile-tested: cns3xxx, imx6, sunxi Runtime-tested: cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.111Koen Vandeputte2019-04-084-7/+7
| | | | | | | | | Refreshed all patches. Compile-tested on: ar71xx, cns3xxx, imx6, x86_64 Runtime-tested on: ar71xx, cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.168Koen Vandeputte2019-04-081-1/+1
| | | | | | | | | Refreshed all patches. Compile-tested on: ar7 Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.14 to 4.14.110Koen Vandeputte2019-04-081-1/+1
| | | | | | | | | Refreshed all patches. Compile-tested on: ar71xx, cns3xxx, imx6, x86_64 Runtime-tested on: ar71xx, cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* tegra: add kernel 4.19 supportTomasz Maciej Nowak2019-04-061-0/+1
| | | | Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
* tegra: add new targetTomasz Maciej Nowak2019-04-061-0/+2
| | | | | | | | | | New target introduces initial support for NVIDIA Tegra SoC based devices. It focuses on Tegra 2 CPUs, for successors supporting NEON instruction set the target should be split in two subtargets. This initial commit doesn't create any device image, it's groundwork for further additions. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
* kernel: b53: add support for kernels 5.0+Rafał Miłecki2019-04-041-0/+10
| | | | | | | | It adjusts b53 code to upstream changes from the commit 3c1bcc8614db ("net: ethernet: Convert phydev advertize and supported from u32 to link mode"). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: backport upstream ubifs default compression selection fixRafał Miłecki2019-04-042-1/+10
| | | | Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: fix rtcache compilation with 4.18+ with IPv6 supportRafał Miłecki2019-04-041-2/+2
| | | | | | | | | | | | | | | | | | | | Please note that modified code isn't currently being compiled with kernels 4.19+ due to the dropped CONFIG_NF_CONNTRACK_IPV6 in upstream Linux. That requires a separated fix. This fixes: net/netfilter/nf_conntrack_rtcache.c: In function 'nf_rtcache_get_cookie': net/netfilter/nf_conntrack_rtcache.c:82:11: error: 'const struct rt6_info' has no member named 'rt6i_node'; did you mean 'rt6i_idev'? if (rt->rt6i_node) ^~~~~~~~~ rt6i_idev IPv6 structs were reworked in upstream kernel by: commit a64efe142f5e ("net/ipv6: introduce fib6_info struct and helpers") commit 77634cc67dc1 ("net/ipv6: Remove unused code and variables for rt6_info") commit 93c2fb253d17 ("net/ipv6: Rename fib6_info struct elements") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* kernel: bump 4.9 to 4.9.165Koen Vandeputte2019-03-271-1/+1
| | | | | | | | | Refreshed all patches. Compile-tested on: ar7 Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* generic: ar8216: introduce qca,mib-poll-interval propertyChuanhong Guo2019-03-242-2/+13
| | | | | | | | This allows users to specify a shorter mib poll interval so that the swconfig leds could behave normal with current get_port_stats() implementation. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: do a software reset for switch during hw_initChuanhong Guo2019-03-241-0/+3
| | | | | | | | | | | | | | This applies to ar8216 and ar8236. QCA's newer U-boot will enable the switch mdio master for FE switches which makes phy inaccessible from CPU mdio. (e.g. on TP-Link TL-WR941N v7 Chinese version which uses QCA9558+AR8236.) For these devices PHY probing is broken and mdio device probing is a must. We also need to disable switch mdio master in driver for later PHY initialization. Do a soft reset during hw_init so that mdio master can be disabled and expose PHYs to CPU mdio for later PHY accessing. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: mib_work_func: read all port mibs everytimeChuanhong Guo2019-03-242-9/+5
| | | | | | | | ar8xxx_mib_capture will update mib counters for all ports. Current code only update one port at a time and the data for other ports are lost. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: add support for get_port_stats()Chuanhong Guo2019-03-243-25/+59
| | | | | | | | | | | | | | | | | | | | | | | Partially reverts commit eff3549c5883a9abc5dbff00c084cabbcfdf4437. AR7240 and AR9341 have buggy hardware switch LED trigger. The AR7240 one doesn't blink and the blinking of port0/port5 is reversed on AR9341 if we swap PHY0 and PHY4. (Only blinking is reversed, which means LED for PHY0 will lit when PHY0 is link up and will blink when PHY4 has active link and vice versa.) On these two chips a software swconfig LED trigger is required. This commit adds swconfig port stats back but: 1. move checking of mib_t/rxb_id into ar8xxx_chip since we can't distinguish ar7240sw and ar8216 using only chip id. 2. don't update mib counter in get_port_stat. This function is called every 0.01s and this capturing procedure will take up a lot of CPU. We already have a mib_work_func updating mib counters every 2s so return the saved counter instead of fetching new data. The blinking rate will be weird but it should solve the previously mentioned CPU time problem. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: add support for ar724x/ar933x builtin switchChuanhong Guo2019-03-242-6/+112
| | | | | | | | | | | | | | This builtin switch is a bugless ar8216 with different mib counters and gigabit cpu port. Atheros uses the same device ID and it's impossible to distinguish the standalone one and the builtin one. So we add support to mdio device probe only. This switch doesn't have buggy vlan tag so it's not needed to enable atheros header. This commit changed ar8216_setup_port so that it can be reused for this switch. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: mdiodev: add qca,phy4-mii-enable optionChuanhong Guo2019-03-241-0/+6
| | | | | | This option allows setting phy4 as a phy connected directly to CPU. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: ar8229: add phy_read/phy_writeChuanhong Guo2019-03-242-0/+57
| | | | | | | the added function also works for ar8216 and will be used in the following ar7240 support. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: add support for separated mdio bus for phy accessChuanhong Guo2019-03-242-1/+37
| | | | | | | | | | | | | | Atheros FE switches have a builtin mdio master available for PHY accessing and on ar724x/ar933x builtin switches this mdio master is the only way of accessing PHYs. After this patch if there is phy_read/phy_write method available in ar8xxx_chip we register a separated mdio bus for accessing PHYs. Still adds support for mdio device probing only since this isn't needed for those switches registered using PHY probing. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: add support for ar8229Chuanhong Guo2019-03-242-5/+144
| | | | | | | | | | | | | | | | ar8229 is the builtin switch in ar934x and later chips. There is also a standalone version available and their registers/functions are the same. This commit added support for the builtin ar8229. The only thing missing for standalone ar8229 should be phy modes. Since I don't have a router using that, this commit doesn't add support for other phy modes. Only add its support for mdio-device probing method because the current PHY probing can't return 1G speed when it's a FE switch. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: add mdio-device probing supportChuanhong Guo2019-03-241-1/+134
| | | | | | | currently only ar8327 and ar8236 are added since they are the only two I could verify. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: move ar8xxx_id_chip into ar8xxx_phy_probeChuanhong Guo2019-03-241-4/+4
| | | | | | | | ar8xxx_id_chip is used to determine current ar8xxx_chip using switch id and this isn't needed during mdiodev probing. Move it out of ar8xxx_probe_switch so that we can skip it. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: add device struct into struct ar8xxx_privChuanhong Guo2019-03-243-2/+5
| | | | | | dev has been taken up by switch_dev so it's named pdev instead. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: drop duplicated includeChuanhong Guo2019-03-241-1/+0
| | | | Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: ar8216: move chip id reading into a separate functionChuanhong Guo2019-03-241-1/+12
| | | | | | | | | for mdio-device probing we still need to read chip id but ar8xxx_chip can be determined using drvdata. We can't distinguish the buggy standalone ar8216 and the builtin ar8216 in ar724x/ar933x using chip id. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* kernel: bump 4.14 to 4.14.107Koen Vandeputte2019-03-221-10/+5
| | | | | | | | | Refreshed all patches. Compile-tested on: ar71xx, cns3xxx, imx6, x86_64 Runtime-tested on: ar71xx, cns3xxx, imx6, x86_64 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: bump 4.9 to 4.9.164Koen Vandeputte2019-03-221-3/+3
| | | | | | | | | Refreshed all patches. Compile-tested on: ar7 Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* imx6: fix legacy IRQ support (4.19)Koen Vandeputte2019-03-221-0/+48
| | | | | | | | | | | | | | | The PCIe DWC host controller is now using MSI (Message-signaled-interrupts) by default. While ath9k itself does support MSI here, a lot of wlan adapters do not. Avoid non-functioning cards by simply continue to disable MSI for now. This can be done by appending "pci=nomsi" to the boot cmdline. Also an extra fix needs to be backported which avoids MSI initialization which prevented legacy IRQ's init from taking over. Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: Backport ar933x_uart build fix (fixes FS#2152)Petr Štetiar2019-03-202-0/+198
| | | | | | | | | | | | | | | Andrey has reported on OpenWrt's bug tracking system[1], that he currently can't use ar93xx_uart as pure serial UART without console (CONFIG_SERIAL_8250_CONSOLE and CONFIG_SERIAL_AR933X_CONSOLE undefined), because compilation ends with following error: ar933x_uart.c: In function 'ar933x_uart_console_write': ar933x_uart.c:550:14: error: 'struct uart_port' has no member named 'sysrq' 1. https://bugs.openwrt.org/index.php?do=details&task_id=2152 Signed-off-by: Petr Štetiar <ynezz@true.cz>