aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq
Commit message (Collapse)AuthorAgeFilesLines
* lantiq: update spi driver to upstream versionHauke Mehrtens2017-03-265-82/+855
| | | | | | These patches are backported from upstream Linux kernel. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: update kernel 4.9 to 4.9.17Hauke Mehrtens2017-03-261-3/+3
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: vr9 fxs support: remove unused wdog declarations and initializersStefan Koch2017-03-242-60/+4
| | | | | | | | | | 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-242-340/+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: fix pci with kernel 4.9Mathias Kresin2017-03-241-2/+3
| | | | | | | | Commit 23dac14d058f ("MIPS: PCI: Use struct list_head lists") changed the controller list from reverse to straight order. Use the last entry in the controller list to get the fist conroller of the system. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: remove lantiq_board_model, it is unusedFelix Fietkau2017-03-221-9/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: remove lantiq_board_name, use the generic function insteadFelix Fietkau2017-03-226-18/+5
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: move lantiq_board_detect() to 03_preinit_board.shFelix Fietkau2017-03-222-10/+10
| | | | | | It is only used there Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: Shortcut non-pppoa interfaces in dsl_notifyOswald Buddenhagen2017-03-171-6/+8
| | | | | | No need to query 'up' and 'auto' when they are not going to be used. Signed-off-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
* lantiq: vr9 fxs support: fixed check of SMP state within vpe-mt.cStefan Koch2017-03-171-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>
* 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>
* kernel: update kernel 4.9 to 4.9.14Hauke Mehrtens2017-03-121-53/+0
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: use the P2812HNUF* wan port as wanMathias Kresin2017-03-111-1/+1
| | | | | | | The port is labeled as wan and was only used as lan port because of the "tx ring full" issues fixed with 8f02f7c. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: xrx200: use vlan for ethernet wan portMathias Kresin2017-03-114-39/+9
| | | | | | | | | | | | | | | | | | | | | | | Using the lantiq,wan device tree property for one interface node and the lantiq,switch device tree property for another interface node at the same time was never intended/isn't supported at the moment. The property is meant to be used in 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 to have two netdevs. If both properties are used at the same time, the lantiq,wan interface is shown as independent netdev but not able to operate independent. The port needs to be managed via swconfig. These dependency is not obvious and fooled already a lot of users. Add a default WAN vlan for xrx200 devices having an ethernet WAN port and remove the lantiq,wan device tree property. Leave it up to the user to set the ethernet WAN port as default WAN interface or to use this port as additional LAN port. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: fix broadcasts and vlans in two iface modeMathias Kresin2017-03-112-10/+12
| | | | | | | | | | | | | | | | | 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: add support for the Alpha ASL56026Alex Maclean2017-03-083-0/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ASL56026 is a VDSL2 router with dual 100mbit ethernet, also known as the ECI B-FOCuS V-2FUb/I. CPU: Lantiq XRX268 v1.1 at 333MHz Modem: Lantiq VRX208 RAM: 32MiB DDR2 at 167MHz Flash: 8MiB NOR, Spansion S29GL064N90TF04 UART is at JP1: Pin 1 TX Pin 2 GND Pin 3 +3.3V Pin 4 NC Pin 5 RX Boot selection pins are exposed via several resistor jumpers: boot_sel0 is at J15, on the rear of the board. Default is high. boot_sel1 is at J3, next to the flash - it is also the flash CE# pin. Default is low. boot_sel2 is at J12, directly below the SoC. Default is low. boot_sel3 is at J16, on the rear of the board. Default is low. The boot_sel pins should never be shorted, the jumper must be moved or a lower value resistor used to change the pull (existing resistors are 4k7, 1k should work) To install with the stock bootloader you must break the built in image selection process which uses at least the following vars: f_upgrade_addr, f_upgrade2_addr, loadaddr, kernel_addr, activeregion, committedregion This is done by setting loadaddr and both f_upgrade_addr vars to the same address: VR9 # setenv loadaddr 0xB0040000 VR9 # setenv f_upgrade_addr 0xB0040000 VR9 # setenv f_upgrade2_addr 0xB0040000 VR9 # saveenv Then flash the firmware image: VR9 # tftpboot 0x81000000 lede-lantiq-xrx200-ASL56026-squashfs-sysupgrade.bin VR9 # erase B0040000 +${filesize} VR9 # cp.b 0x81000000 0xB0040000 ${filesize} Signed-off-by: Alex Maclean <monkeh@monkeh.net>
* lantiq: clarify VG3503J nameAlex Maclean2017-03-081-1/+1
| | | | | | | Append the ECI model to the device name, to avoid confusion with the older model. Signed-off-by: Alex Maclean <monkeh@monkeh.net>
* lantiq: select kmod-mt7603 instead of kmod-mt76 for WBMR-300HPDFelix Fietkau2017-02-271-1/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: fix broadcast packets leaking on the wrong vlan on xrx200Felix Fietkau2017-02-232-10/+12
| | | | | | | | | | | | | | | 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 warning if ltq_atm modules are missingMathias Kresin2017-02-181-2/+1
| | | | | | | | | Fixes the following warning on first boot if the ltq_atm modules are not included in the image: ls: /lib/modules/4.4.49/ltq_atm*: No such file or directory Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: set the internet led interface according to wan interfaceMathias Kresin2017-02-181-0/+1
| | | | | | | | Use the nas0 interface for the netdev trigger as default. Use the ptm0 interface for xRX200 boards to match the default wan interface set in 02_network. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: introduce lantiq_is_vdsl_systemMathias Kresin2017-02-182-1/+5
| | | | | | | Move the code to check if the current system is a system with vdsl support to a dedicate function to make it reusable. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: fix ARV7519RW22 switch port indexingMathias Kresin2017-02-181-1/+1
| | | | | | Fixes FS#454. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: fix patching the wifi mac address on BTHOMEHUBV3AMartin Blumenstingl2017-02-131-1/+1
| | | | | | | | | | | | | | | | | | | The firmware hotplug script tries to read the mac address from a partition with the name "uboot-env" which does not exist (instead it's name is uboot_env). This broke calculation of the new checksum (after patching the mac address) which resulted in ath9k refusing to use the EEPROM data. The original error reported by ath9k was: PCI: Enabling device 0000:00:0e.0 (0000 -> 0002) ath: phy0: Bad EEPROM checksum 0x2523 ath: phy0: Unable to initialize hardware; initialization status: -22 ath9k 0000:00:0e.0: Failed to initialize device Fixes: a20616863d32d9 ("lantiq: use ath9k device tree bindings binding/owl-loader") Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* lantiq: fix section mismatch in PCIe driverHauke Mehrtens2017-02-122-2/+2
| | | | | | | 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: add support for kernel 4.9Hauke Mehrtens2017-02-1137-1/+16803
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following patches were dropped because they are already applied upstream: 0012-pinctrl-lantiq-fix-up-pinmux.patch 0013-MTD-lantiq-xway-fix-invalid-operator.patch 0014-MTD-lantiq-xway-the-latched-command-should-be-persis.patch 0015-MTD-lantiq-xway-remove-endless-loop.patch 0016-MTD-lantiq-xway-add-missing-write_buf-and-read_buf-t.patch 0017-MTD-xway-fix-nand-locking.patch 0044-pinctrl-lantiq-introduce-new-dedicated-devicetree-bi.patch 0045-pinctrl-lantiq-Fix-GPIO-Setup-of-GPIO-Port3.patch 0046-pinctrl-lantiq-2-pins-have-the-wrong-mux-list.patch 0047-irq-fixes.patch 0047-mtd-plat-nand-pass-of-node.patch 0060-usb-dwc2-Add-support-for-Lantiq-ARX-and-XRX-SoCs.patch 0120-MIPS-lantiq-add-support-for-device-tree-file-from-bo.patch 0121-MIPS-lantiq-make-it-possible-to-build-in-no-device-t.patch 122-MIPS-store-the-appended-dtb-address-in-a-variable.patch The PHY driver was reduced to the code adding the LED configuration, the rest is already upstream: 0023-NET-PHY-adds-driver-for-lantiq-PHY11G.patch The SPI driver was replaced with the version pending for upstream inclusion: New driver: 0090-spi-add-transfer_status-callback.patch 0091-spi-lantiq-ssc-add-support-for-Lantiq-SSC-SPI-controller.patch Old driver: 0100-spi-add-support-for-Lantiq-SPI-controller.patch Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* generic: rtl8366rb: fix compatible stringMathias Kresin2017-02-031-1/+1
| | | | | | | Use a vendor prefix as it has to be for all not core driver. Update the compatible string in the device tree files accordingly. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: enable SMP for XRX200Felix Fietkau2017-02-013-2/+21
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: fix unaligned access in xrx200_poll_rx()Alexander Couzens2017-01-301-2/+2
| | | | Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
* lantiq: fix brnImage signature for the VGV7510KW22BRN imagesMathias Kresin2017-01-281-2/+2
| | | | | | | | The VGV7510KW22BRN and VGV7519BRN do not have the same brnImage signature. It was accidentally changed with ba42c1d ("lantiq: un-macro the image building code"). Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: remove CPU_TYPE:=mips32r2, it gets overwritten anywayFelix Fietkau2017-01-241-2/+0
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* build: remove mips16 feature flag from target makefilesFelix Fietkau2017-01-244-4/+4
| | | | | | | It can be implicitly derived from the MIPS32 revision support in the kernel configuration Signed-off-by: Felix Fietkau <nbd@nbd.name>
* 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-0911-95/+394
| | | | | | | | | | | | | 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: remove ubifs xz decompression supportFelix Fietkau2017-01-092-2/+0
| | | | | | | It has been unused, and less useful than squashfs for cases where flash space usage matters. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* lantiq: fix console print for additional boardsHauke Mehrtens2017-01-063-0/+12
| | | | | | | | | | | | | | I missed 3 boards in this commit: commit d8dde8c5178eba8c847dd48e7d06e6663ba1979f Author: Hauke Mehrtens <hauke@hauke-m.de> Date: Wed Jan 4 21:53:22 2017 +0100 lantiq: fix console print Add bootargs parameters for ARV4525PW, ARV7506PW11 and ARV8539PW22 again. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: fix console printHauke Mehrtens2017-01-0535-4/+128
| | | | | | | | | | | | | | | | | | The boot loader of many boards provides a kernel boot argument with a broken console parameter to the kernel. This will be taken before the stdout-path defined in device tree and the serial will not work on this board. Multiple boards are affected by this problem, so revert this patch for all boards. Later we can remove the boot arguments from the device tree again, after the individual board was checked to work. This partly reverts this commit: commit 4995c64857a09c4cc92238ba0bd52cdb06c4c581 Author: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Date: Sun Dec 11 21:55:00 2016 +0100 lantiq: specify console using stdout-path instead of cmdline argument Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: fix falcon buildJohn Crispin2016-12-251-1/+1
| | | | | | | | | The following commit changed the build templates name but forgot to update the TARGET_DEVICES variable properly. commit f9226158bed52aeae408730 (lantiq: rename EASY98000 to EASY98000NOR) Signed-off-by: John Crispin <john@phrozen.org>
* lantiq: rename EASY98000 to EASY98000NORHauke Mehrtens2016-12-241-2/+1
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* lantiq: drop the FRITZ7360SL led-dsl aliasMathias Kresin2016-12-241-1/+0
| | | | | | | | | | | | | The power LED can not be used for indicating the xDSL line state and the in system (boot) state at the same time in LEDE. As soon as the xDSL Line goes down, the power LED is switched off. During xDSL handshake the power led would blink with the same or a similar pattern as during boot. Both might confuse users. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: add FRITZ7360SL phy reset gpiosMathias Kresin2016-12-241-5/+5
| | | | | | | | | | | | | | | Due to a hardware bug of Atheros 8030 phys, the driver need to reset the phys on link state change. Use the correct compatible string for the at903x phys connected to switch port 0 and 1. Fix the pinmux of the gpio lines connected to the reset pin of the phys and define the reset-pins to let the driver do the fixups. Fixes FS#343 Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: fix DGN1000B boot status ledsMathias Kresin2016-12-241-9/+7
| | | | | | The alias node should not be a child of the chosen node. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: remove "init" kernel command line parameter from bootargsMartin Blumenstingl2016-12-1234-125/+2
| | | | | | | | | | /etc/preinit has been the default init-script for a very long time (at least since Linux 2.6.30 in OpenWrt). Remove the kernel command line "init" parameter to get rid of duplicate and inconsistent definitions of this parameter (some boards, like FRITZ3370 for example did not use it at all, while it's just copy and paste on others). Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* lantiq: specify console using stdout-path instead of cmdline argumentMartin Blumenstingl2016-12-1240-37/+70
| | | | | | | | Use devicetree's /chosen/stdout-path instead of the kernel command line (embedded in the .dts-files) to specify the serial console. Using the chosen node is recommended on devicetree based platforms. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
* lantiq: falcon: remove bootargs-appendHauke Mehrtens2016-12-1010-40/+0
| | | | | | | This attribute is not evaluated any more and the boot loader on these reference boards does not provide a broken root= or console= parameter. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>