Changeset r43049 removed the "062-mips_decompressor_build_fix.patch" which is
still required to properly build the xburst kernel.
Fix the syntax error in the preprocessed code by explicitely undefining the
"memcpy" and "memset" macros prior to declaring the replacements functions.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 44133
Using port-based VLANs depends on a non-standard
swconfig parameter, which compilcates things like
LuCI that don't know about it. This patch changes
the default to use 802.1q VLANs internally in the
switch, but without tagging packets since we have
two Ethernet ports.
iperf3 tests indicate no difference in performance
versus port-based VLANs when the CPU port is not
using tags.
Signed-off-by: Claudio Leite <leitec@staticky.com>
SVN-Revision: 44122
* fix TSO features verify on mt7621 firewrt board
* improve tx clean up. no need to access uncached
memory. also use TX_DTX register instead of
read tx ring DONE bit
* mt7621 need napi weight 64 to get more performance
* remove netif_receive_skb, after kernel version
3.7 tcp4_gro_receive can handle tcp checksum.
on rt2880 use iperf tcp LAN to WAN throughput test.
with gro 135 Mbits/sec. without gro 80.4Mbits/sec.
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 44118
on mt7621 don't have tx vlan vid registers.
so set FE_REG_FE_DMA_VID_BASE to 0.
set rx vlan offload register to disable.
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 44117
the rx_buf_size now is 1534 when mtu is 1500.
the ethernet frame with vlan tag and FCS is 1522.
so the buffer is enough.
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 44116
Add global read-only swconfig attribute "arl_table" to display the
address resolution table.
So far the chip-specific part is implemented for AR8327/AR8337 only
as I don't have the datasheets for the other AR8XXX chips.
Successfully tested on TL-WDR4300 (AR8327rev2)
and TL-WDR4900 (AR8327rev4).
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 44104
Until a few years ago the page switch wait time was set to msleep(1)
what was changed to usleep_range(1000, 2000) later.
I can not imagine that a low-level operation like switching page
on register level takes so much time.
Most likely the value of 1ms was initially set to check whether
it fixes an issue and then remained w/o further checking whether
also a smaller value would be sufficient.
Now the wait time is set to 5us and I successfully tested this on
AR8327. IMHO 5us should be plenty of time for all supported chips.
However I couldn't test this due to missing hardware.
If other chips should need a longer wait time we can add the
wait time as a parameter to the ar8xxx_chip struct.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 44103
Check for switch port link changes and
- flush ATU in case of a change
- report link change via syslog
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 44102
The functionality to flush the address translation table contains two bugs
which luckily compensate each other.
1. Just setting the operation is not sufficient to perform the flushing.
The "active" bit needs to be set to actually trigger an action.
For the vtu operations this is implemented correctly.
2. ar8xxx_phy_read_status is called every 2s by the phy state machine
to check for link changes. This would have caused an ATU flush
every 2s.
Fix the chip-specific ATU flush functions and remove the ATU flush call
from ar8xxx_phy_read_status.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 44101
TP-LINK TL-WR843ND v1 is the same model like wr41, but with
Power over Ethernet on wan port.
Signed-off-by: Cezary Jackiewicz <cezary.jackiewicz@gmail.com>
SVN-Revision: 44085
This adds a patch to target/linux/lantiq/patches-3.14
fixing a bug clock code on ar9. The current version returns
the wrong value for the fpi clock frequency in some
cases.
See discussion for further details:
https://lists.openwrt.org/pipermail/openwrt-devel/2015-January/030688.html
I'm not sure about the patch naming and numbering convention.
Do please let me know it this is not OK.
Many thanks,
Ben Mulvihill
Signed-off-by: Ben Mulvihill <ben.mulvihill@gmail.com>
SVN-Revision: 44083
the GPIO controlling the rf filter is not configured properly by this patch.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 44077
This patch is a follow up for my previous patch:
"ramips: add support for Intenso Memory 2 Move USB 3.0".
It fixes a couple of errors in the DTS (one of which broke
the gpio-buttons). The kmod-leds-gpio dependency has been
dropped as it is already part of the ramips target.
Furthermore the ramdisk/uImage image is generated by default
for the rt3050 subtarget. This image is needed to flash
OpenWrt for the first time onto the device via TFTP.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
SVN-Revision: 44072
The dLAN USB Extender profile was referecing binary packages which are not to
be included in any of the source-only feeds. Instead remove these references
and document how to use the 3rd party feed.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 44071
Ths will allow us to use early 3xx numbers for patches designed for
sending mainline.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 44057
* use default timeout value
* print more debug ring info
* move timeout reset function to workqueue
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 44043
This patch builds on the previous three to streamline support for the
Netgear DGN3500.
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
SVN-Revision: 44032
It seems the call to ltq_get_eth_mac() disappeared at some point. This
patch puts it where it currently most makes sense.
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
SVN-Revision: 44031
Somewhere in the conversion of the MIPS architecture code to Device Tree
usage, there's been a failure to keep the separate variables holding the
kernel command line reconciled between the tree and the bootloader. This
patch restores previous functionality that broke.
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
SVN-Revision: 44030
Currently this initscript fails if the macaddr has any leading zeroes.
This patch corrects the problem.
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
SVN-Revision: 44029
The swconfig get_link attribute (at least) on AR8327/AR8337 doesn't
consider the autonegotiated flow control.
AR8327/AR8337 provide the info about autonegotiated rx/tx flow control
in bits 10 and 11 of the port status register.
Use these values to display info about autonegotiated rx/tx flow
control as part of the get_link attribute.
Successfully tested on TL-WDR4900 (AR8327 rev.4) and
TL-WDR4300 (AR8327 rev.2).
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 44023
AR8327/AR8337 allow to read the result of EEE autonegotiation.
If EEE is autonegotiated between the link partners, display
this as part of the swconfig get_link attribute.
eee100: 100MBit EEE supported by both link partners
eee1000: 1GBit EEE supported by both link partners
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 44022
Users reported network issues with AR8327 which turned out to be caused
by EEE not working correctly with certain link partners (ticket 14597).
The workaround was to disable EEE on all ports (changeset 41577).
The issue was with certain link partners only, therefore this patch
allows to control usage of EEE per port via swconfig.
Still the default is to initially disable EEE on all ports.
Successfully tested on a TL-WDR4900 (AR8327 rev.4)
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 44021
This adds support for a rt5350-based "portable nas" solution
from Intenso. The board comes with 32M RAM and 8M Flash, the
built-in HDD is connected/accessible via a usb3.0<->sata
bridge VLI VL701.
The device has 1 Ethernet port (100M/10M), 1 micro b usb 3.0
socket (for charging the battery, or accessing the hdd directly).
Wireless connectivity is provided by the rt5350 SoC [i.e.:
802.11n 1x1 2.4 GHz with a pcb antenna.]
Serial, leds, wifi, ethernet and usb are tested and
as far as I can tell: they are working fine (tm).
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
SVN-Revision: 44001
The only reason this patch was helping was moving bcma init *after*
of_serial init. It was a bit of luck because both drivers use
device_initcall.
It isn't really a correct way to provide early logging.
Now we have earlyprintk support in bcm53xx we can drop this patch.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 43981
Malta ramdisk images are no longer copied to output due to a recent change.
This change reimplements copying of ramdisk images for Malta builds.
Signed-off-by: Eric Schultz <eschultz@prplfoundation.org>
SVN-Revision: 43970
The mvebu image makefile define something almost identical to the generic
implementation found in include/image.mk.
Switch to this implementation.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
SVN-Revision: 43969
The mvebu image Makefile directly calls the padjffs2 utility, while there's an
generic make function to do just that. Switch to it
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
SVN-Revision: 43968
Since the driver doesn't know anything about (M)STP
we just hard-set the ports to be enabled if they are
part of the VLAN.
Signed-off-by: Claudio Leite <leitec@staticky.com>
SVN-Revision: 43938
- eliminate MV_CPUPORT; not necessary since we define
the CPU port(s) via Device Tree
- add STU and expand VTU operations
- update register names to match those of 88E61xx rather than
mvswitch's 88E6060
- use more consistent formatting
Signed-off-by: Claudio Leite <leitec@staticky.com>
SVN-Revision: 43937
3.3 produced *.dtb files in arch/arm/boot/ while 3.14 will produce those
in arch/arm/boot/dts/, adjust the image makefile accordingly.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 43925
Most of the devices we support have between 16MiB and 32MiB of RAM
available.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 43924
- Fix LED definitions.
- Add mode-switch slider definition (at GPIO 14).
- Remove unneeded VLAN now that the ethernet driver is fixed and TCP packets get passed correctly now. (This router only has one port.)
- Fix LAN port MAC address, which is defined in the factory partition as WLAN MAC address + 1.
- Fix board name, as the company name is HooToo and not HOOTOO.
- Remove unnecessary packages from the profile. (The end-user is supposed to use mechanisms such as the ImageBuilder in order to add his own set of packages to his own images... while the precompiled images should just contain the core set of packages needed to run the base functions of a wireless router.)
Signed-off-by: Vittorio Gambaletta <openwrt@vittgam.net>
SVN-Revision: 43883
This patch fixes a wrong mask operation for the rt2880-compatible ralink devices.
The mask operation reads the actual flags and then logical combines it with the pin flag it want to set.
Unfortunally, for rising as for falling interrupt flags the actual flag status of the rising interrupts was used.
That caused a problem if you want to use more than one falling GPIO interrupt.
Now the correct (seperated) actual status is used for both, falling and rising.
Signed-off-by: Jonas Arndt <info@greenwire-elektronik.de>
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43882
Move all AR8327/AR8337-specific driver code into a separate source file
ar8327.c and adjust patches so that ar8327.c is compiled if
CONFIG_AR8216_PHY is set.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43845
Move several structure definitions and #defines from ar8216.c
to ar8216.h and move AR8327/AR8337 header stuff into a new
header file ar8327.h.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43844
modules build during the kernel compile phase are ignored anyway,
all modules should be built using KernelPackage in
package/kernel/linux/modules/*
selecting the appropriate config symbols there rather than in
target/linux/*/config-*
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43842
The following patches unfortunately didn't hit the kernel stable
branches yet, therefore cherrypicking them for OpenWRT here:
* bridge: fix netfilter/NF_BR_LOCAL_OUT for own, locally generated queries
* bridge: multicast: enable snooping on general queries only
* bridge: multicast: add sanity check for general query destination
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
SVN-Revision: 43841
This will allow simple sysupgrade-s including simpler reverting to the
original firmware.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 43799
After the changes make ubinize.cfg optional in image.mk, ubifs
generation can now safely be enabled again.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43789
kernel lock debugging unveiled that we should not call
of_reset_control_get inside a clock's enable operation (see below)
move of_reset_control_* previously used in pllb_clk_enable to new
pllb_clk_prepare and pllb_clk_unprepare functions.
use a container to carry runtime information.
------------[ cut here ]------------
WARNING: CPU: 0 PID: 1 at kernel/locking/lockdep.c:2742 lockdep_trace_alloc+0xb8/0xfc()
DEBUG_LOCKS_WARN_ON(irqs_disabled_flags(flags))
Modules linked in:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.14.26 #6
[<c001a6ac>] (unwind_backtrace) from [<c0016dec>] (show_stack+0x10/0x14)
[<c0016dec>] (show_stack) from [<c0194f68>] (dump_stack+0x7c/0x94)
[<c0194f68>] (dump_stack) from [<c0021b50>] (warn_slowpath_common+0x68/0x8c)
[<c0021b50>] (warn_slowpath_common) from [<c0021ba4>] (warn_slowpath_fmt+0x30/0x40)
[<c0021ba4>] (warn_slowpath_fmt) from [<c0061b30>] (lockdep_trace_alloc+0xb8/0xfc)
[<c0061b30>] (lockdep_trace_alloc) from [<c00cb740>] (kmem_cache_alloc+0x1c/0xf8)
[<c00cb740>] (kmem_cache_alloc) from [<c01d33c8>] (of_reset_control_get+0xe8/0x12c)
[<c01d33c8>] (of_reset_control_get) from [<c0269228>] (pllb_clk_enable+0x14/0xbc)
[<c0269228>] (pllb_clk_enable) from [<c0265738>] (__clk_enable+0x54/0xa0)
[<c0265738>] (__clk_enable) from [<c0265acc>] (clk_enable+0x18/0x2c)
[<c0265acc>] (clk_enable) from [<c04325f8>] (oxnas_pcie_probe+0x3b8/0x6a0)
[<c04325f8>] (oxnas_pcie_probe) from [<c01f2510>] (platform_drv_probe+0x18/0x48)
[<c01f2510>] (platform_drv_probe) from [<c01f1070>] (driver_probe_device+0xd8/0x24c)
[<c01f1070>] (driver_probe_device) from [<c01f1298>] (__driver_attach+0x70/0x94)
[<c01f1298>] (__driver_attach) from [<c01ef728>] (bus_for_each_dev+0x4c/0x98)
[<c01ef728>] (bus_for_each_dev) from [<c01f0818>] (bus_add_driver+0xcc/0x1e8)
[<c01f0818>] (bus_add_driver) from [<c01f169c>] (driver_register+0xa0/0xe8)
[<c01f169c>] (driver_register) from [<c01f2568>] (platform_driver_probe+0x20/0xa4)
[<c01f2568>] (platform_driver_probe) from [<c0013a3c>] (do_one_initcall+0x90/0x140)
[<c0013a3c>] (do_one_initcall) from [<c0421d38>] (kernel_init_freeable+0x1e4/0x2c0)
[<c0421d38>] (kernel_init_freeable) from [<c000c214>] (kernel_init+0x8/0x104)
[<c000c214>] (kernel_init) from [<c0008768>] (ret_from_fork+0x14/0x2c)
---[ end trace 5f17ed2f61e0683f ]---
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43787
accidentally #if was used instead of #ifdef, thus gcc warned
about CONFIG_ATA_LEDS being undefined...
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43786
This is a 3.14.x backport of:
"mvneta: Fix TSO and checksum for non-acceleration vlan traffic"
Upstream commits:
817dbfa5d1bc276a72c1a577310382008e8aca0a
2d39d120781a5770573dc6ed672a5a562f541aea
Fixes vlan tagging on SoC interfaces for the WRT1900AC. Useful
when using mvsw6171 driver.
Signed-off-by: Mark Milburn <mark.a.milburn@gmail.com>
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 43781
safed one level of indention by using 'continue' instead of a
lengthy if-clause.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
v2: use logic-AND instead of '?' operator when checking for hw bug 6320
SVN-Revision: 43768
- replaced // comments by /* comments */
- added line-breaks where needed
- fixed white-space according to kernel style
- fixed some obvious spelling mistakes in comments and printks
- removed some unneeded left-overs imported from vendor code-base
- replaced printk(...) by libata macros where possible
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43767
locking for 2nd port and hwraid was added from vendor's GPL code which
doesn't comply with current kernel coding style.
- moved all global variables into host_priv
- renamed locks
- sanetized acquire() and release() parameter list
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43766
and no longer compile-in ext4 filesystem now that sata_oxnas is
also built as a module.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43765
Set defaults health led to a timer heartbeet (200/800)
and populate network for:
- GuruplugServerPlus
- SheevaPlug
- SheevaPlug with eSATA
Signed-off-by: Gerald Kerma <dreagle@doukki.net>
SVN-Revision: 43752
This maps the LAN ports to eth0 and WAN port to eth1.
Since there are two interfaces the 802.1q VLAN mode
is unnecessary and left disabled. Port-based VLANs
are used instead.
Signed-off-by: Claudio Leite <leitec@staticky.com>
SVN-Revision: 43750
When there is no device connected to the controller we should not start
the controller. This also changes between PCIe 1.0 and PCIe 2.0 speed
based on the device. This code is based on code from the new Broadcom
PCIe controller driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 43748
This patch adds soc support for QCA9561 and TP9343.
TP9343 is a reduced version of QCA9561, which can be found in TP-LINK routers in China.
The qca956x_wmac has not yet been supported by ath9k.
tested on TL-WDR6500 and TL-WR882N v1 (Chinese version)
Signed-off-by: Weijie Gao <hackpascal@gmail.com>
SVN-Revision: 43744
Remove read/write/rmw member functions from ar8xxx_priv
There seems to be no real benefit of the ar8xxx_priv member functions
read/write/rmw as one implementation exists for each of them only.
Especially ar8xxx_mii_rmw is assigned to priv->rmw first and then
mapped to ar8xxx_rmw.
Rename the ar8xxx_mii_.. functions to ar8xxx_.. and use them directly.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43742
Create helpers mii_read32 / mii_write32 for 32 bit MII ops.
Rename r3 variable to page in ar8xxx_mii_write to make it consistent
with the other ar8xxx_mii_xxxx functions.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43741
Factor out chip-specific parameters from ar8xxx_probe_switch.
Move the ar8xxx_chip definitions after the swops definitions.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43740
This new argument is used right after starting regular preinit (which
happens if failsafe wasn't triggered). The main purpose of "preinit"
argument is to indicate that failsafe can be triggered, however we were
missing a way to inform user that we don't wait for a trigger anymore.
With this change it's clear when failsafe mode can be triggered.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 43715
This will allow us to drop it in the future. This patch doesn't change
the final mtdpart.c, it remains the same.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 43696
Aigale Ai-BR100 is a router with mt7620a soc.
There are only 2 lights on the board (WAN and WLAN) so I used the wlan light as the status led.
Signed-off-by: 郭传鈜 <gch981213@gmail.com>
SVN-Revision: 43681
It moves firmware patch code behind an extra check on board_name.
Otherwise it will calculate firmware checksum for unaffected boards.
It also reduce boottime by a md5 calculation and removes error message
on boot if firmware not found.
SVN-Revision: 43679
Restoring the config for kernel 3.14 didn't contain that change already
made to config-3.18.
It is needed to make squashfs in the kernel match the compression settings
for ARCH=arm in the framework.
If set to ARMTHUMB, boot fails due to squashfs being unreadable if the
filesystem was generated for wth ARM BCJ filter.
in include/image.mk: BCJ_FILTER:=-Xbcj $(LINUX_KARCH)
Thus the ARM filter is used for all ARM targets.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43640
it should needs to depend on imx and mxs
also remove duplicate kmod definition from mxs target
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43627
The target au1000 has at least 2 different models, the
'InternetBox' and the 'MeshCube' which look very similar
from the kernel point of view but are totally different
devices which base on the same design. Populating /tmp/sysinfo
now. The 1st one has an issue which leads to a random
mac-address after each boot which is corrected now via
reading the bootloader-env. The real fix would be
converting to DTS, this is only a workaround now.
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
SVN-Revision: 43626
This is required because it has to be called at very precise moment. See
comment in driver for details.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 43611
similar to mv_sata, use nr-ports attribute from device tree.
import and adapt locking code from vendor GPL sources.
add dma controller handling, it may be used in future to avoid
full core resets similar to the vendor SDK's "progressive cleanup"
function.
this is still very dirty and aimed to first of all do things
quite exactly like the reference code. and it somehow works.
obviously there is lots of room for improvement :)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43598
sata_oxnas.c is obviously a refactored version of sata_ox820.c
which does contain this header.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43597
According to the vendor tarball, the TD-w8900GB's flash has 64k erase
block size, but CFE spans two blocks. So fixup the image offset
accordingly but keep block size at its default (64k).
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo: add commit message, add image offset, change nvram offset]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43572
This adds some updates to the NAND driver and refreshed the config.
Most of these changes are done in preparation for mainling it.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 43546
This adds some updates to the PCIe driver and refreshed the config.
Most of these changes are done in preparation for mainling it.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 43545
This brings ssb and bcma to wireless-testing tag master-2014-12-05
In addition it also adds the ARM-BCM5301X-Add-IRQs-to-Broadcom-s-bus-
axi-in-DTS-f.patch which adds the irq number in a way it is done in the
mainline kernel.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 43544
I don't see that we're in an atomic context so there's no need to
busy-wait. Therefore replace the delay with sleep calls.
See also Documentation/timers/timers-howto.txt. It states:
"In general, use of mdelay is discouraged and code should
be refactored to allow for the use of msleep."
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43539
Replace the fixed wait time of 1s with polling for BMCR_RESET
to be cleared on all PHYs.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43538
This reverts commit c81ddddde5fd193802d511b42eb7b108aac17136 on
https://gitorious.org/openwrt-oxnas/openwrt-oxnas.git
which removed patches and config for 3.14.
[arm_introduce-dma-fiq-irq-broadcast patch was renamed to match 3.18]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43520
similar to what was observed on kirkwood this significantly accelerates
btrfs write operations.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43498
gpio-beeper module was added to the kernel recently.
Make use of it to drive the piezoelectric buzzer of the kd20.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43496
This is a swconfig driver for the Marvell 88E6171 switch,
which is a 7-port GigE switch with two CPU ports and 64
802.1q VLANs.
Signed-off-by: Claudio Leite <leitec@staticky.com>
SVN-Revision: 43486
Factor out set_mirror_regs to ar8xxx_chip.
Remove related chip_is_... checks.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43468
Factor out info whether switch should be configured at probe stage
to ar8xxx_chip. Remove related chip_is_... checks.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43466
Patch to add the buildprofile for the GL-Init-6408A-v1 and the GL-Inet-6416A-v1
Both devices are identical, only difference is one comes with 8MB flash and
the other with 16MB flash
Official website: http://www.gl-inet.com/w/?page_id=241&lang=en
Comprehensive list of specs: https://revspace.nl/GL-Inet
Signed-off-by: Martijn Zilverschoon <martijn@friedzombie.com>
SVN-Revision: 43462
Add the required nodes for the interrupt controllers and register
them through DT when a DTB is present.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43457
Add irq-domain aware irqchip drivers for the irq controllers of bcm63xx
and switch to use them.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43454
At least on my Iomega ix2-200 system, this makes btrfs writes about 30% faster.
Signed-off-by: Richard Kunze <richard.kunze@web.de>
SVN-Revision: 43434
This patch introduces some code that is compiled in whenever
CONFIG_BRIDGE_NETFILTER is built, with the code called from code compiled under
CONFIG_BRIDGE, CONFIG_BRIDGE_IGMP_SNOOPING or CONFIG_BRIDGE_NF_EBTABLES.
Unfortunately, these options aren't setting explicitly the dependency they now
have on CONFIG_BRIDGE_NETFILTER, for obvious reasons for CONFIG_BRIDGE.
However, this is not working really well when CONFIG_BRIDGE_NETFILTER is built
as a module, since code statically compiled will now use a function that is not
in the kernel image, which makes the linker grumpy.
Solve this by removing the option to build CONFIG_BRIDGE_NETFILTER as a module,
and protect our function definition by an IS_BUILTIN instead of a IS_ENABLED
macro. This fixes the issue for CONFIG_BRIDGE and CONFIG_BRIDGE_IGMP_SNOOPING.
Fixing CONFIG_BRIDGE_NF_EBTABLES has to be handled a bit differently, since it
directly references a variable that will not be declared if
CONFIG_BRIDGE_NETFILTER is not set. Protect the variable affectations by an
ifdef to make sure this doesn't happen.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 43419
This is the oxnas target previously developed at
http://gitorious.org/openwrt-oxnas
Basically, this consolidates the changes and addtionas from
http://github.org/kref/linux-oxnas
into a new OpenWrt hardware target 'oxnas' adding support for
PLX Technology NAS7820/NAS7821/NAS7825/...
formally known as
Oxford Semiconductor OXE810SE/OXE815/OX820/...
For now there are 4 supported boards:
Cloud Engines Pogoplug V3 (without PCIe)
fully supported
Cloud Engines Pogoplug Pro (with PCIe)
fully supported
MitraStar STG-212
aka ZyXEL NSA-212,
aka Medion Akoya P89625 / P89636 / P89626 / P89630,
aka Medion MD 86407 / MD 86805 / MD 86517 / MD 86587
fully supported, see http://wiki.openwrt.org/toh/medion/md86587
Shuttle KD-20
partially supported (S-ATA driver lacks support for 2nd port)
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43388
This adds support for the TP-LINK CPE210/220/510/520 (Pharos series). These
devices are very similar to the Ubiquiti NanoStations, but with better specs:
faster CPU, more RAM, 2x2 MIMO.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
SVN-Revision: 43385
With kernel 3.14 dts target p1010rdb was renamed to p1010rdb-pa.
To maintain compatibility define p1010rdb-pa as new standard and
copy p1010rdb.dts to p1010rdb-pa.dts under 3.10.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43371
If there is no board support in the kernel, it does not make sense to
build images for devices. So drop any images for board ids for which
there are nc corresponding board_info structs in the kernel.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43364
Patch reverts 43332 which seems to cause issues with VLAN functionality.
Add a specific check to check whether ANEG is still enabled and re-enable
it if necessary. Disable generic phy soft reset for kernel >=3.16.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43356
This target can be emulated using ARM's Foundation_V8 simulator
software or qemu-system-aarch64 using the command-line described in the
README file.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 43355
Move compatible strings from board structs into separate table. This
allows for several board compatibles to match to the same board in case
e.g. only the flash size / partitions differ.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43341
We should make sure that also for ar8216 hw gets initialized.
For ar8216 hw_init is a dummy currently. The hw_init used for ar8236
should be generic enough to be usable with ar8216 too.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43334
Move the PHY fixup call to the PHY init loop.
Use ar8xxx_has_gige in the PHY init instead of passing the gigE
capability via function parameter.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43333
Kernel 3.14 introduced a switch reset in phy_init_hw in drivers/net/phy
causing BMCR_ANENABLE to get cleared.
Due to the fact that ar8xxx_phy_config_aneg does nothing for
PHY 0 autonegatiation support remains disabled.
This can cause ports to operate at 10MBit/half-duplex only.
Fix this by calling genphy_config_aneg for PHY 0 too as
genphy_config_aneg sets BMCR_ANENABLE if it's not yet set.
Fixes: ticket 17800
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43332
PHY init code in the switch-specific hw_init functions is mainly
identical. Factor it out into a generic ar8xxx_phy_init function.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 43331
Move phy fixup code from the chip-specific hw_init functions into a
fixup_phys callback.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43330
Currently there is a fixed 1000ms wait time after the switch was reset.
Most if not all switches need much less time to perform a reset.
Therefore replace the fixed wait time with polling for BMCR_RESET to
be cleared.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 43329
All supported switches have 5 PHYs. Currently partially 5 is hardcoded
and partially switch-specific constants exist.
Replace them with a global constant.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43328
wg302v1_fixup() looks for the ATAG_CMDLINE atag, it doesn't find it and
so it takes the last atag in the list and overwrites non allocated
memory.
The side effects are corrupted vital data and a kernel that doesn't
boot. More details here https://dev.openwrt.org/ticket/18356
The fix appends the fixup to the command line and updates the atag only
when it finds it.
Signed-off-by: Gianluca Anzolin <gianluca@sottospazio.it>
SVN-Revision: 43320
Few notes:
- redboot partitions are unusable
- redboot declares only 16M of RAM, hence the mem arg in cmdline and separate kernel config
- boots fine but only ethernet works for now
- split wiliboard and raidsonic boards into different subtargets
Signed-off-by: Roman Yeryomin <roman@advem.lv>
SVN-Revision: 43319
This patch adds 3.14 kernel support for the mpc85xx platform.
Works fine here with a TL-WDR4900 which seems to be the only
supported device using this platform.
There might be differences depending on HW version, therefore
I'd ask others to test too.
Changes to 3.10
missing config options added to 3.14 config file
patch 001: rebased
patch 100: rebased
patch 110: rebased
patch 120: rebased
patch 130: rebased
patch 140: minor adjustment
patch 200: removed, change went upstream
patch 210: rebased
patch 220: removed, change went upstream
patch 750: new, fixes an issue with ethernet port autoneg being
disabled due to changes in kernel phy handling
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
SVN-Revision: 43308
still no sound but the codec is properly detected now, powers up and i can hear
noise on the speakers.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43305
hardware status and tx vlan offload support on all targets
except rt5350. so i modify the IS_ENABLE condition only for
mt7621.
support mt7621 hardware status reference by SDK. but i don't
have mt7621. if not work just set mt7621 FE_REG_FE_COUNTER_BASE
to 0 to let software count.
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 43303
hardware tx vlan offload only support max 16 vids
now use add/delete vlan interface to update vlan id table
when duplicate vlan id index detect.
disable hardware tx vlan offload support.
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 43301
some old mt7620a uboots dont reset the pcie core properly. work around this
issue in the kernel driver.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43292
Without this patch the UBIFS driver is unable to attach to the mtd
storage and mount the root FS.
Fixes a kernel panic with Netgear WNDR4300/3700v4 devices.
Signed-off-by: Gianluca Anzolin <gianluca@sottospazio.it>
SVN-Revision: 43287
the SDK does a bit of extra init that we did not do yet when using an external mt7530.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43245
* read MAC address from factory partition
* remove port defines since there is only one port (most likely C/P error)
Signed-off-by: Luka Perkov <luka@openwrt.org>
SVN-Revision: 43231
r43200 tries to detect if the fixup is needed or not. control the behaviour via
OF instead and disable unused ports.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43201
This is a RT2880-based board, 32MB RAM, 4MB flash. The bootloader
is a hacked u-Boot that reads an LZMA image directly, so we skip
generating the uImage header and enable the lzma mtdsplit parser.
Signed-off-by: Claudio Leite <leitec@staticky.com>
SVN-Revision: 43153
Add patches for getting the IRQ number for a device of the bcma bus
that were send for upstream inclusion.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 43148
The patch adding AR8216_PHY_LEDS was not ported to more recent kernel
versions.
Thank you swalker for spotting this.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 43139
Some changes from the header file were not ported from older kernel.
Thank you swalker for spotting this.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 43137
The select SYS_HAS_DMA_OPS in CPU_CAVIUM_OCTEON was from the kernel
patch in 3.13, but it is only included in kernel 3.14 and not in 3.13
and 3.18, add it again.
Thank you swalker for spotting this.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 43134
some bootloaders (linksys e1700) set wonky hw trap values. reset this upon boot to make all ports work.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43117
OpenWRT patch 255-lib80211_kconfig_hacks gives user possiblity to select
LIB80211 dependant settings (LIB80211_CRYPT_*) without having LIB80211
selected which is wrong.
My patch changes OpenWRT patch so LIB80211 is vissible and all
LIB80211_CRYPT_* options selects LIB80211 automatically.
Signed-off-by: Tomasz Wasiak <tjwasiak@gmail.com>
SVN-Revision: 43112
Change list:
* add tx scatter gather function.
* add software rx vlan offload to let GRO work.
* add jumbo frame support. because use build_skb so max MTU is 3812.
* enable hardware tx vlan.
* enable GRO and remove LRO. because it can improve performance and can work on forwarding.
* enable/fix tx padding function.
* let napi handle tx clean up.
* support ethtool operation. now support message level, hardware status and coalesce.
* ethtool support use mdio to get phy status only on mt7620. need modify dts file and add phy info to support it.
Notes:
* build and test on rt2880, rt3052, rt3352, rt3662, rt5350 and mt7620a.
* TCP NAT performance improve. test with netperf.
- rt2880(gigabit) from 5x to 12x Mbps.
- rt3x5x from 6x to 94 Mbps.
- rt5250 from 5x to 8x Mbps.
- rt3662(gigabit) from 6x to 42x Mbps with GRO. 23x Mbps without GRO. 66x Mbps with jumbo frame.
- mt7620 still 94Mbps.
* TSO function not tested. because i don't have mt7620 with eco >= 5. and the hardware don't support to set MSS. it will have problem.
Signed-off-by: michael lee <igvtee@gmail.com>
SVN-Revision: 43108
Boards that have more than one swconfig enabled switch will show the devices in
reverse order when call swconfig list. Fix this by using list_add_tail().
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43106
0x8100000c vs 0x810000c0 int he pvc register this caused the cascade with an external mt7530 to fail.
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 43104
(Reposted due to an issue with the patchwork server during original submission)
Unbranded. Silkscreen on PCB is “A5-V11”, believed to be made by Bococom (or at least uses Bococom image encryption - as used on poray devices - but different key)
Signed-off-by: Gareth Bryan <gareth@mx9.org>
SVN-Revision: 43102
lantiq_dsl.sh didn't work with VDSL chipsets for now, fix that by
detecting whether vdsl_cpe_control or dsl_cpe_control should be used.
Also add missing quotes around shell string comparision.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
SVN-Revision: 43101
This works around a bootloader issue where every device
has the same lan/wan-mac 00:04:9f:ef:01:01 - with this patch
we read the macs from config-partition during initial network
setup. We have 9 valid macs stored in the partition, the
1st two are used for the radios, 3 and 4 are now used for WAN/LAN.
on an already setup / running device we can get the real macs with
. /lib/functions.sh
. /lib/functions/system.sh
echo "LAN = $(mtd_get_mac_binary config 338)"
echo "WAN = $(mtd_get_mac_binary config 344)"
see:
https://dev.openwrt.org/ticket/14714
from the ticket / user klondike:
U-Boot passed this commit ecd1a09b81http://u-boot.10912.n7.nabble.com/U-Boot-PATCH-mpc83xx-remove-hardcoded-network-addresses-from-config-files-td44372.html
I suppose to prevent this particular issue, but the WDR4900 may be using an old bootloader still affected.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
I have been checking the contents of the dtb on the flash, this particular bit is quite revealing:
ethernet@b0000 {
#address-cells = <0x1>;
#size-cells = <0x1>;
device_type = "network";
model = "eTSEC";
compatible = "fsl,etsec2";
fsl,num_rx_queues = <0x8>;
fsl,num_tx_queues = <0x8>;
local-mac-address = [00 00 00 00 00 00];
^^^^^^^^^^^^^^^^^
interrupt-parent = <0x2>;
phy-handle = <0x3>;
phy-connection-type = "rgmii-id";
ptimer-handle = <0x4>;
queue-group@0 {
#address-cells = <0x1>;
#size-cells = <0x1>;
reg = <0xb0000 0x1000>;
rx-bit-map = <0xff>;
tx-bit-map = <0xff>;
interrupts = <0x1d 0x2 0x1e 0x2 0x22 0x2>;
};
};
I also have been checking the live device map to find this:
root@GHS-AP3:~# hexdump -C /proc/device-tree/soc@ffe00000/ethernet@b0000/local-mac-address
00000000 00 04 9f ef 01 01 |......|
00000006
root@GHS-AP3:~# hexdump -C /proc/device-tree/soc@ffe00000/ethernet@b1000/local-mac-address
*
root@GHS-AP3:~# hexdump -C /proc/device-tree/soc@ffe00000/ethernet@b2000/local-mac-address
*
My conclussion is that U-Boot most likely finds the device and (as no valid MAC-address is provided)
falls back to the default MAC provided by the old code, the kernel then receives thee modified
device map from U-Boot and assumes this is the correct MAC for the device despite it obviously isn't.
This can be seen at
target/linux/mpc85xx/patches-3.10/140-powerpc-85xx-tl-wdr4900-v1-support.patch
The enetaddr is filled up by using the device tree data by the process_boot_dtb
function and used by the platform_fixups function to set the eth0 address
(by calling dt_fixup_mac_address_by_alias("ethernet0", enetaddr); ).
But instead we should be used the device address which to my understanding is
provided in the mtd.
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
SVN-Revision: 43074
All platforms which are using 3.10.x at the moment are upgraded.
Changelogs:
https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.50https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.51https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.52https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.53https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.54https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.55https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.56https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.57https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.58
A new symbol 'X86_16BIT' appeared in 3.10.52 with commit 34273f41d57ee8d854dcd2a1d754cbb546cb548f
("x86-espfix-make-it-possible-to-disable-16-bit-support.patch")
I defaults to 'unset', but it's worth a discussion to enable it
("turn off support for any 16-bit software").
Also removed the patch 0db3db45f5bd6df4bdc03bbd5dec672e16164c4e
("fix build failure on memcpy() in decompress.c")
and is obsolete by commit 29593fd5a8149462ed6fad0d522234facdaee6c8 upstream.
included in kernel 3.10.56
compile tested on all platforms with:
make tools/install
make toolchain/install
make target/linux/compile
user@box:~/user/openwrt$ cat /tmp/log.txt
[Wed Oct 22 00:36:02 CEST 2014] ./smoketest.sh: ar71xx - OK
[Wed Oct 22 00:53:22 CEST 2014] ./smoketest.sh: ar7 - OK
[Wed Oct 22 01:08:27 CEST 2014] ./smoketest.sh: au1000 - OK
[Wed Oct 22 01:21:43 CEST 2014] ./smoketest.sh: avr32 - OK
[Wed Oct 22 01:37:47 CEST 2014] ./smoketest.sh: cns21xx - OK
[Wed Oct 22 01:52:05 CEST 2014] ./smoketest.sh: cns3xxx - OK
[Wed Oct 22 02:10:23 CEST 2014] ./smoketest.sh: gemini - OK
[Wed Oct 22 02:29:07 CEST 2014] ./smoketest.sh: ixp4xx - OK
[Wed Oct 22 02:44:01 CEST 2014] ./smoketest.sh: malta - OK
[Wed Oct 22 02:55:57 CEST 2014] ./smoketest.sh: mpc85xx - OK
[Wed Oct 22 03:07:56 CEST 2014] ./smoketest.sh: orion - OK
[Wed Oct 22 03:24:30 CEST 2014] ./smoketest.sh: ppc40x - OK
[Wed Oct 22 03:40:19 CEST 2014] ./smoketest.sh: ppc44x - OK
[Wed Oct 22 03:55:29 CEST 2014] ./smoketest.sh: realview - OK
[Wed Oct 22 04:09:47 CEST 2014] ./smoketest.sh: sparc - OK
[Wed Oct 22 04:23:37 CEST 2014] ./smoketest.sh: x86 - OK
[Wed Oct 22 04:35:56 CEST 2014] ./smoketest.sh: xburst - OK
run tested on x86, au1000, ar71xx, mpc85xx and brcm47xx
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
SVN-Revision: 43049
replace all occurences of LINUX_VERSION with the cleaner
approach. future kernel upgrades must mostly touch only
one file. the only platform left is netlogic, because it
uses a intermediate kernel 3.14.16
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
SVN-Revision: 43047
This is required due to 306-mips_mem_functions_performance.patch, just
add a memmove() implementation to satisfy the lzma2 decompressor code.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 43036