aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq/patches-4.4
Commit message (Collapse)AuthorAgeFilesLines
* lantiq: drop kernel 4.4 supportMathias Kresin2017-09-0545-18174/+0
| | | | Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: update 4.4 to 4.4.83Kevin Darbyshire-Bryant2017-08-171-3/+3
| | | | | | | | | | | | | | | | | Refresh patches. Minor update 704-phy-no-genphy-soft-reset.patch which was partially accepted upstream. Compile-tested on ar71xx. Runtime-tested on ar71xx. Fixes the following vulnerabilities: - CVE-2017-7533 (4.4.80) - CVE-2017-1000111 (4.4.82) - CVE-2017-1000112 (4.4.82) Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk> [cleanup commit message, add compile/runtime tested] Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* lantiq: fix missing otg_cap on danube platformDaniel Gonzalez Cabanelas2017-08-091-24/+54
| | | | | | | | | | USB doesn't work in some danube boards because otg_cap is missing since previous changes made on the USB-dwc2 lantiq driver. Fix it. Tested on the ARV7518PW router. Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
* lantiq: fix sleep with spinlock held in xrx200 network driverAndrea Merello2017-07-201-3/+4
| | | | | | | | | | | | | | | | | | | | | | | In the xrx200_close() function we call napi_disable(), that could sleep, with priv->hw->chan[i].lock held. This could lead to deadlock and causes the kernel to complain. Look at the code I couldn't convince myself about why we need to protect that specific code part with the lock. IMHO there seems no reason to protect the refcount variables, because AFAIK ndo_close() and ndo_open() callbacks are already called with a semaphore held. Neither I could figure out why napi_disable() have to be called with that lock held. The only remaining code part for which I could guess the lock is useful for is ltq_dma_close() function call. This patch reduces the lock to the said function call, avoiding the sleep-with-spinlock-held situation Signed-off-by: Andrea Merello <andrea.merello@gmail.com> [fold into 0025-NET-MIPS-lantiq-adds-xrx200-net.patch, backport to kernel 4.4] Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: move Lantiq PEF7061/7071/7072 phy driver to genericMathias Kresin2017-06-241-537/+0
| | | | | | | | | The driver is used for boards outside the lantiq target as well. Move it to generic to make it available for more targets. The phy driver is included in kernel 4.8 as INTEL_XWAY_PHY. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: fix 0008-MIPS-lantiq-backport-old-timer-code.patch for Amazon-SETino Reichardt2017-06-032-3/+9
| | | | | | | | | | | | | The patch 0008 removes the vanilla kernel gptu.c of lantiq. But the replacement file timer.c does not work Amazon-SE and is also protected therefore with an CONFIG_SOC_AMAZON_SE :-) This commit will re-activate the default vanilla kernel code in gptu.c for Amazon-SE. Signed-off-by: Tino Reichardt <milky-lede@mcmilk.de> [refresh patches and add same change for kernel 4.9] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: pinctrl: xway: fix copy/paste error in xrx200_grpsMartin Schiller2017-05-291-1/+1
| | | | Signed-off-by: Martin Schiller <ms@dev.tdt.de>
* kernel: update kernel 4.4 to version 4.4.69Kevin Darbyshire-Bryant2017-05-212-2/+89
| | | | | | | | | | | | | | | | | | | Refresh patches. A number of patches have landed upstream & hence are no longer required locally: 062-[1-6]-MIPS-* series 042-0004-mtd-bcm47xxpart-fix-parsing-first-block Reintroduced lantiq/patches-4.4/0050-MIPS-Lantiq-Fix-cascaded-IRQ-setup as it was incorrectly included upstream thus dropped from LEDE. As it has now been reverted upstream it needs to be included again for LEDE. Run tested ar71xx Archer C7 v2 and lantiq. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk> [update from 4.4.68 to 4.4.69] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: update kernel 4.4 to 4.4.61Jo-Philipp Wich2017-04-152-89/+2
| | | | Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* lantiq: drop tffs patchesMathias Kresin2017-04-083-113/+2
| | | | | | | With the fritz-tools a userspace parser for the Tiny Flash File System is available and makes the tffs2 kernel patches obsolete. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: vr9 fxs support: remove unused wdog declarations and initializersStefan Koch2017-03-241-30/+2
| | | | | | | | | | modify 0152-lantiq-VPE.patch from commit e0229a16b000 ("lantiq: added support for VPE1") - remove wdog function declarations from header (asm/vpe.h) - remove wdog command line init functions (vpe.c) Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
* lantiq: vr9 fxs support: remove soft-watchdog functionalityStefan Koch2017-03-241-170/+0
| | | | | | | | | - remove patched header (vpe.h) because kernel already provides one (asm/vpe.h) - remove module softdog_vpe since watchdog functionality is unused - remove module softdog_vpe from Makefile Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
* lantiq: vr9 fxs support: fixed check of SMP state within vpe-mt.cStefan Koch2017-03-131-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | SMP state is generally affected by - CONFIG_SMP build-time kernel configuration option and - 'nosmp' runtime kernel commandline option The SMP state within vpe-mt.c is determined by CONFIG_SMP option. A runtime check is needed if VPE functionality should be used with a kernel image that supports SMP. This fix introduces a check for 'nosmp' command line option if CONFIG_SMP kernel configuration option is enabled. Note: This patch is needed to use lantiq FXS if CONFIG_MIPS_MT_SMP (that activates CONFIG_SMP) is enabled within kernel configuration and the 'nosmp' command line argument is given to disable SMP at runtime. Without this patch CONFIG_MIPS_MT_SMP must be disabled before using FXS. With this patch setting the 'nosmp' parameter is enough. In general, concurrent usage of FXS and SMP is incompatible and will cause kernel panics. Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
* kernel: update kernel 4.4 to 4.4.53Hauke Mehrtens2017-03-121-53/+0
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: fix broadcasts and vlans in two iface modeMathias Kresin2017-03-111-5/+6
| | | | | | | | | | | | | | | | | The two phy operation mode where one phy is assigned to an interface without lantiq,* device tree property and the other phy is assigned to an interface with the lantiq,wan device property was broken with the multicast package leaks between vlans fixes. Move the multicast packages relevant portmap settings to the condition which handles multicast packages for better readability. Replace the priv->port_map based port_map only for the interface which has the lantiq,switch device tree property set, to allow tagged multicast packages in two phy mode where the lantiq,switch device tree property isn't used. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: fix broadcast packets leaking on the wrong vlan on xrx200Felix Fietkau2017-02-231-5/+6
| | | | | | | | | | | | | | | The ethernet driver uses a port map override via special tag to control the ports on which multicast packets are sent. This was added to work around an issue in the switch that was occasionally leaking packets onto the wrong vlan. Unfortunately the change had some leftover lines that were overwrting the port map with a list of all ports, thus always leaking packets onto the wront vlan. Fix this by only enabling the override with the VLAN port map and only if a matching VLAN port map was actually found Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: fix section mismatch in PCIe driverHauke Mehrtens2017-02-121-1/+1
| | | | | | | Do not put the probe function into the __init section, but use the normal section. This fixes a section mismatch warning. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: fix unaligned access in xrx200_poll_rx()Alexander Couzens2017-01-301-2/+2
| | | | Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* lantiq: fix an ethernet stability issue triggered by receving packets during ↵Felix Fietkau2017-01-191-0/+53
| | | | | | | | | | | | | | boot Disabling ethernet during reboot (only to enable it again when the ethernet driver attaches) can put the chip into a faulty state where it corrupts the header of all incoming packets. This happens if packets arrive during the time window where the core is disabled, and it can be easily reproduced by rebooting while sending a flood ping to the broadcast address. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: fix spurious irq stormFelix Fietkau2017-01-191-0/+87
| | | | | | | | | | | Since the MIPS IRQ stack patches, lantiq devices were emitting a storm of messages like this: [ 567.872172] Spurious IRQ: CAUSE=0x1100c300 Fix this by reworking the IRQ dispatch code Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: backport MIPS changes introducing a separate IRQ stackFelix Fietkau2017-01-151-1/+1
| | | | | | | | Prevents crashes when IRQs arrive when the current kernel stack context already contains deeply nested function calls, e.g. when stacking lots of network devices on top of each other Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: update 4.4 kernel to 4.4.42Hauke Mehrtens2017-01-131-1/+1
| | | | | | | Refresh patches on all 4.4 supported platforms. Compile & run tested: lantiq/xrx200 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: update USB controller initializationHauke Mehrtens2017-01-097-89/+383
| | | | | | | | | | | | | This adds USB initialization fixes for Danube, Amazon SE and xrx300 and should fix the clock on at least Danube which hopefully closes FS#351. The xrx200 usb driver now uses more memory for the dwc2 fifos, this was increased in the chip compared to ar9. This is based in part on the vendor documentation and the vendor code base as a reference. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: fix dma locking problems with SMPHauke Mehrtens2017-01-091-0/+152
| | | | | | | The DMA controller used only local locks, which will not lock the section against other CPUs, fix this by using spin locks. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: bump to 4.4.36Álvaro Fernández Rojas2016-12-041-1/+1
| | | | | | | Refresh patches on all 4.4 supported platforms. Compile & run tested: brcm2708/bcm2710 - Raspberry Pi 3 Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: bump to 4.4.35Kevin Darbyshire-Bryant2016-11-292-3/+3
| | | | | | | | | | | Refresh patches on all 4.4 supported platforms. 077-0005-bgmac-stop-clearing-DMA-receive-control-register-rig.patch removed as now upstream. Compile & run tested: ar71xx - Archer C7 v2 Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* lantiq: drop obsolete patchMathias Kresin2016-11-291-31/+0
| | | | | | | | | | | | ifxhcd never had roothub support but since kernel 3.x it was expected that a roothub always exists. The patched fixed a null pointer deref in the usb subsystem because of the missing roothub. Since ifxhcd is gone, this whole patch isn't required any longer. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: backport kernel patch to pass of node to nand_dt_initMathias Kresin2016-11-291-0/+27
| | | | | | | | | | | | | | | | | | | Backport upstream commit a61ae81a1907af1987ad4c77300508327bc48b23. The actually purpose of the patch was to do some cleanup. As a side effect of this cleanup, the device node is now passed to nand_dt_init. This allows to use the common nand device tree properties - nand-bus-width - nand-on-flash-bbt - nand-ecc-mode - nand-ecc-step-size - nand-ecc-strength for the plat_nand driver. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: drop ath9k device tree binding & ath9k pci fixupMathias Kresin2016-11-291-304/+7
| | | | | | | | | | Due to the addition of the bindings to the ath9k driver, this code isn't used any longer. The fixup is now done by the owloader. Rename the ath_eep.c file to ath5k_eep.c to indicate that this files includes ath5k related code only. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: Register the device tree node with the PCIe controllerMartin Blumenstingl2016-11-261-1/+9
| | | | | | | This allows specifying PCI devices as children of the PCIe controller node to pass configuration data to them. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* lantiq: dwc2 parameters for danubeBen Mulvihill2016-11-211-2/+31
| | | | | | | | | | Parameters for dwc2 on lantiq. A separate dwc2_core_params structure is defined for danube because danube fifo sizes are large enough to be autodetected. This is not the case on arx and vrx. Signed-off-by: Ben Mulvihill <ben.mulvihill@gmail.com>
* lantiq: initialise dwc2 on danubeBen Mulvihill2016-11-211-0/+10
| | | | | | Initialise dwc2 usb driver on danube boards as well as ar9 and vr9. Signed-off-by: Ben Mulvihill <ben.mulvihill@gmail.com>
* kernel: update kernel 4.4 to version 4.4.32Stijn Tintel2016-11-161-1/+1
| | | | | | | | Refresh patches for all targets that support kernel 4.4. Compile-tested on all targets that use kernel 4.4 and aren't marked broken. Runtime-tested on ar71xx, octeon. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* lantiq: fix pci issue if mem kernel parameter is usedEddi De Pieri2016-11-121-0/+22
| | | | | | | | | | | | | | | | | | | | As specified by e0229a16b0001c08e6c2611fa0bb9814507fced4 if the VR9 based router provides FXS ports and they should enabled then the following must added to the kernel command line: mem=[TOTALMEMSIZE-2M] vpe1_load_addr=ADDRESS vpe1_mem=2M By adding mem= parameter a pci device stop working correctly. The pci-lantiq.c module use get_num_physpages() to compute dynamically the memory amount of the board. The mem= make the module to compute in the wrong way the BAR11MASK, so in this situation the mask is misaligned with the dma area that the hardware expects. This patch is a port of what legacy ifxmips_pci.c does. Signed-off-by: Eddi De Pieri <eddi@depieri.net>
* lantiq: drop ralink eeprom handling functionMathias Kresin2016-11-091-73/+9
| | | | | | | The eeprom handling function from the rt2x00 driver is used and this code is obsolete. Signed-off-by: Mathias Kresin <dev@kresin.me>
* kernel: update kernel 4.4 to version 4.4.30Stijn Segers2016-11-022-2/+1
| | | | | | | | | | This patch bumps the 4.4 kernel from .28 to .30 and refreshes the patches. Compile-tested on ar71xx, x86/64, ramips/mt7621, brcm47xx and kirkwood. Run-tested on ar71xx & ramips/mt7621, brcm47xx and kirkwood (last two confirmed by P. Wassi). Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
* lantiq: vpe softdogStefan Koch2016-10-311-0/+171
| | | | | | | | | | | | | (required not-distributable firmware blob - dump it by yourself from original firmware) Signed-off-by: Eddi De Pieri <eddi@depieri.net> (cherry picked from commit eb0ce57270d0b5b81b224b9336cf54707497eede) Modified after cherry-pick: obj in Makefile Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
* lantiq: added support for VPE1Stefan Koch2016-10-311-0/+208
| | | | | | | | | | | | | | | | | | Created minimal patchset based on BB rev 43158 by Eddi De Pieri 14.07/openwrt.git 79472c025449efae9310defad0d3a73cff14d756 If the VR9 based router provides FXS ports and they shoud enabled then the following must added to the kernel command line: mem=[TOTALMEMSIZE-2M] vpe1_load_addr=ADDRESS vpe1_mem=2M maxvpes=1 maxtcs=1 To use FXS 2M of RAM are needed for the VPE firmware. The size is set by vpe1_mem. The available RAM must be reduced by this size using the mem argument. A correct load address (example 0x83e00000) for the firmware must be given, too. Signed-off-by: Stefan Koch <stefan.koch10@gmail.com>
* lantiq: fix thermal sensors driverMathias Kresin2016-10-191-5/+21
| | | | | | | | | | | | | | | | | | | | Read the temperature including the decimale place from the CGU_GPHY1_CR register. Decrement the temperature read from the register by 38.0 degree celsius. The temperature range of the sensor is -38.0 to +154 °C and the register value 0 is equal to -38.0 °C. This fixes the report of unrealistic temperatures as seen on all tested boards. Give the SoC a few milliseconds to get the first temperature value. On some rare occasions there is no temperature value in the register when read the first time after activation. This leads to a reported temperature of -38.0 °C on boot. Only version 1.2 of the vr9 SoC has a temperature sensor. Add a check to make sure the driver doesn't load on v1.1 vr9 SoCs. Signed-off-by: Mathias Kresin <dev@kresin.me>
* ntiq: make i2c-lantiqi driver compile againHauke Mehrtens2016-10-031-9/+9
| | | | | | | It missed some changes needed for kernel 4.4. This is only used by the Falcon SoC and not for the xRX SoCs. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: update to v4.4.23Álvaro Fernández Rojas2016-09-301-3/+3
| | | | | | | Refresh patches for all targets that support kernel 4.4. compile/run-tested on brcm2708/bcm2710 only. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: update kernel 4.4 to version 4.4.20Álvaro Fernández Rojas2016-09-151-1/+1
| | | | | | | Refresh patches for all targets that support kernel 4.4. Compile-tested on brcm2708 only. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: Backport pending appended DTB handling patchesDaniel Gimpelevich2016-09-121-0/+49
| | | | | | | | | | Backport patches from upstream Linux kernel which are making the kernel stores the appended dtb not in the same resisters as defined in the UHI specification, use a separate variable on MIPS. Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us> [some modifications] Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: fix ath5k EEPROM loadingMathias Kresin2016-08-241-9/+27
| | | | | | | | | | With 12fe4b579801ea812b64fc7e689716cd39c895ec I switched the ath5k eeprom extraction to an alternate code path. Unfortunately this code seams to be broken since ages and broke the ath5k EEPROM extraction. Reported-by: Mohammed Berdai <mohammed.berdai@gmail.com> Signed-off-by: Mathias Kresin <dev@kresin.me> Acked-by: John Crispin <john@phrozen.org>
* lantiq/xrx200-net: Add support for eth0 as WAN interfaceMartin Schiller2016-08-151-1/+1
| | | | | | | | Use priv->wan instead of priv->id as indicator if packets should go to the Ethernet WAN group (DPID=1) or not (DPID=0). This way, it's independant of interface names or indexes. Signed-off-by: Martin Schiller <mschiller@tdt.de>
* lantiq/xrx200-net: fix "tx ring full" error by introducing second DMA TX channelMartin Schiller2016-08-151-17/+31
| | | | | | | | | | With an own DMA TX channel for each network device (eth0 + eth1) there won't be any "tx ring full" errors any more. This patch also move the spinlocks to the channel level instead of locking the whole xrx200_hw structure. Signed-off-by: Martin Schiller <mschiller@tdt.de>
* lantiq: fix some ethernet driver SMP issuesFelix Fietkau2016-08-111-10/+16
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: drop duplicate and now unused "lantiq, eth-mac" bindingMathias Kresin2016-08-101-52/+1
| | | | | | | | | | | | The device tree binding and the associated code duplicates functionality already patched into the etop driver. The compatible string isn't used any more. Therefore the whole code can be dropped. The "mac-increment" property allowed to increment a mac address received via kernel cmdline. This functionality isn't used by any device and should be added as etop driver device tree property if required again. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: drop orphaned eeprom-handling code branchesMathias Kresin2016-08-101-97/+71
| | | | | | | | | | All device tree nodes are using the named properties now and the code path handling the reg property isn't required any more. The code related to the ath,eep-flash property has been reformatted to be better readable. Signed-off-by: Mathias Kresin <dev@kresin.me>
* Revert "kernel: remove long obsolete gpio spi controller driver patch"Felix Fietkau2016-08-041-3/+3
| | | | This reverts commit 9e62a7668c4085563a907da51a08819c88d04f33.