John Crispin [Thu, 10 Mar 2016 19:11:09 +0000 (19:11 +0000)]
kernel: Linux IP Virtual Server kernel modules (netfilter.mk patch)
IPVS (IP Virtual Server) implements transport-layer load balancing inside the Linux kernel
so called Layer-4 switching.
IPVS running on a host acts as a load balancer at the front of a cluster of real servers, it
can direct requests for TCP/UDP based services to the real servers, and makes services of
the real servers to appear as a virtual service on a single IP address.
John Crispin [Thu, 10 Mar 2016 19:10:54 +0000 (19:10 +0000)]
brcm63xx/lzma-loader: fix O32 ABI conformance
According to the calling convention of the o32 ABI the caller
function must reserve stack space for $a0-$a3 registers in case
the callee needs to save its arguments.
The assembly code of the loader does not reserve stack space for
these registers thus when the 'loader_main' function needs to save
its arguments, those will be stored in the 'workspace' area instead
of the stack.
Because the workspace area is also used by other part of the code, the
saved register values gets overwritten and this often leads to failed
kernel boots.
Fix the code to reserve stack space for the registers to avoid this
error.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
[noltari: apply the fix for brcm63xx too] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 48979
John Crispin [Tue, 8 Mar 2016 18:11:59 +0000 (18:11 +0000)]
ramips: add support for Planex MZK-WDPR.
add support for Planex MZK-WDPR.
MZK-WDPR(MZK-WDPR-R01) is internet radio tuner.
This patch is "network board" in MZK-WDPR.
LCD board is non OpenWrt Platform.
Rafał Miłecki [Mon, 7 Mar 2016 22:37:09 +0000 (22:37 +0000)]
mac80211: backport brcmfmac patchset with driver setting concept
This prepares brcmfmac for better country handling and fixes BCM4360
support which was always failing with:
[ 13.249195] brcmfmac: brcmf_pcie_download_fw_nvram: FW failed to initialize
Felix Fietkau [Mon, 7 Mar 2016 11:03:41 +0000 (11:03 +0000)]
ltq-vdsl-app: do not set the reserved bit 4 in the xTSE 8
I do not know if this causes any problems now, but we should not set
it, because it is reserved. Some more recent versions of the Lantiq DSL
API driver and Control is checking if only valid bits are set.
Felix Fietkau [Mon, 7 Mar 2016 11:03:38 +0000 (11:03 +0000)]
ltq-vdsl-app: make it possible to configure ADSL/VDSL independently
There are some cases where ISPs are running ATM over VDSL or PTM over
ADSL, this is not the common case, but these cases exist. Make it
possible to configure OpenWrt for such cases by adding a new config
option line_mode.
Felix Fietkau [Mon, 7 Mar 2016 11:03:35 +0000 (11:03 +0000)]
ltq-vdsl-app: sync annex option between from ADSL package
The detailed annex option were only available in the danube DSL app
including the activation of G.992.2 Annex A (ADSL Lite). This is now
also added to the vdsl app for the vrx200.
Felix Fietkau [Mon, 7 Mar 2016 11:03:32 +0000 (11:03 +0000)]
ltq-adsl-app: sync annex option between from VDSL package
The adsl control app missed the activation of annex M and annex L in
the Annex A part, this now activates everything the firmware supports.
In Annex L type only the wide US (Mask1) was activated, now also the
narrow US (Mask2) version gets activated.
In addition annex J was also added.
Felix Fietkau [Mon, 7 Mar 2016 11:03:29 +0000 (11:03 +0000)]
base-files: change type of adsl and vdsl to dsl only
Instead of having two different types adsl and vdsl just create one dsl
type. This way we can use the same luci code for adsl and vdsl and the
config parameters are not so different.
Felix Fietkau [Mon, 7 Mar 2016 11:03:26 +0000 (11:03 +0000)]
ltq-vdsl-app: make the dsl_control application stop cleanly
I am not calling dsl_cmd because I want to ignore the lock, quit
should also be send when someone else is accessing it. I saw that some
other call was stuck here and all following calls were stuck in the
dsl_cmd lock.
Instead of having two big binaries only add one binary and then a patch
to create the other one when needed at runtime.
This is easier to handle in one Makefile for both firmware files.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 48939
Hauke Mehrtens [Sat, 5 Mar 2016 17:49:09 +0000 (17:49 +0000)]
kernel: mpc85xx: fix build of kmod-usb2-fsl
Fix buildbot error for mpc85xx.
ehci-fsl.ko should be packaged inside the usb2 package, because it
depends on the ehci kernel module. The fsl-mph-dr-of.ko module can stay
in an own package because the ehci driver depends on it.
Hauke Mehrtens [Sat, 5 Mar 2016 16:23:50 +0000 (16:23 +0000)]
kernel: fix section mismatch in crashlog
The function memblock_insert_region() is in the section
__init_memblock, also put crashlog_init_memblock there.
This fixes this section mismatch warning:
The function memblock_insert_region.isra.1() references
the function __meminit crashlog_init_memblock().
This is often because memblock_insert_region.isra.1 lacks a __meminit
annotation or the annotation of crashlog_init_memblock is wrong.
Hauke Mehrtens [Sat, 5 Mar 2016 16:23:19 +0000 (16:23 +0000)]
spi-gpio-custom: fix section mismatch
This fixes this section mismatch warning:
The function spi_gpio_custom_get_slave_cs() references
the variable __initdata bus_nump.
This is often because spi_gpio_custom_get_slave_cs lacks a __initdata
annotation or the annotation of bus_nump is wrong.
Felix Fietkau [Sat, 5 Mar 2016 09:45:10 +0000 (09:45 +0000)]
ar71xx: WNR2000v3: add speed_mask to Ethernet port LED initialization
This patch add speed_mask parameter to Ethernet port LED initialization
during system startup. LEDs are configured to show amber light for 10 Mbps
link and green for 100 Mbps as described on device label.
Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>
SVN-Revision: 48923
John Crispin [Fri, 4 Mar 2016 08:33:36 +0000 (08:33 +0000)]
procd: Allow to configure default respawn retry count
Extend /etc/config/system with a parameter to set the
default respawn retry for procd launched services that
have respawn enabled.
config service
option respawn_retry -1
All services that don't specify specific respawn parameters
will get their defaults added by procd.sh. If respawn_retry
is specified in /etc/config/system the default retry limit
will be set to this value by procd.
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
SVN-Revision: 48915
John Crispin [Fri, 4 Mar 2016 08:33:33 +0000 (08:33 +0000)]
AR8216: improve mmd register access
Combine all bus operations for one MMD access in one function.
Protecting all these bus operations with one lock also helps
to avoid potential issues due to bus operations intercepting
the register and data write.
John Crispin [Fri, 4 Mar 2016 08:33:30 +0000 (08:33 +0000)]
AR8216: make ARL age time configurable
The default TTL for address resolution table entries is 5 minutes
for all members of the AR8216 family. This can cause issues if
e.g. Wifi clients roam to another AP and their MAC appears on
another switch port suddenly. Then the client may not be reachable
until the old ARL entry expires.
I would have expected the switch to invalidate old entries if it
detects the same MAC on another port. But that's not the case.
Therefore make the TTL for ARL entries configurable.
The effective TTL will always be a multiple of 7 seconds.
John Crispin [Fri, 4 Mar 2016 08:33:25 +0000 (08:33 +0000)]
AR8216: complement MIB counters with info in GiB / MiB / KiB
The decimal values especially for TxByte and RxGoodByte are hard to read
once bigger amounts of data have been transferred.
Therefore complement the decimal values with info in GiB / MiB / KiB.
John Crispin [Fri, 4 Mar 2016 08:33:22 +0000 (08:33 +0000)]
AR8216: don't display MIB counters if all are empty
For unused switch ports all MIB values are zero. Displaying ~40 empty
MIB counters is just confusing and makes it hard to read the output of
swconfig dev <dev> show.
Therefore, if all MIB counters for a port are zero, just display
an info that the MIB counters are empty.
John Crispin [Fri, 4 Mar 2016 08:33:06 +0000 (08:33 +0000)]
ramips: Add device tree for JCG JHR-N926R
Add a device tree for JCG JHR-N825R
This router is based on a RT3052 and has 4MB of CFI flash and 32MB of
SDRAM. As a special feature, it comes with a two digit seven segment
display that is connected to a pair of daisy-chained 74164 shift
registers that can be controlled via GPIOs.
For details, see https://wikidevi.com/wiki/JCG_JHR-N825R .
Signed-off-by: Reinhard Max <reinhard@m4x.de> Reviewed-by: Torsten Duwe <duwe@lst.de>
SVN-Revision: 48904
John Crispin [Thu, 3 Mar 2016 20:24:47 +0000 (20:24 +0000)]
kernel: gpio-button-hotplug: Add missing ONESHOT flag to threaded IRQ request
Without the IRQF_ONESHOT flag in devm_request_threaded_irq() call I get
following error:
genirq: Threaded irq requested with handler=NULL and !ONESHOT for irq 56
gpio-keys gpio-keys: failed to request irq:56 for gpio:20
>From kernel/irq/manage.c:
The interrupt was requested with handler = NULL, so we use the default
primary handler for it. But it does not have the oneshot flag set. In
combination with level interrupts this is deadly, because the default
primary handler just wakes the thread, then the irq lines is reenabled,
but the device still has the level irq asserted. Rinse and repeat....
While this works for edge type interrupts, we play it safe and reject
unconditionally because we can't say for sure which type this interrupt
really has. The type flags are unreliable as the underlying chip
implementation can override them.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
SVN-Revision: 48894
John Crispin [Thu, 3 Mar 2016 20:24:45 +0000 (20:24 +0000)]
ramips: Incorrect file mode change
Commit d0f5ab6d95a1 ("ramips: Added support for ZBT-826 / ZBT-1026")
incorrectly changed the mode of the ramips shell scripts from 755 to 644.
I.e., they are not excutable any more and for example devices will be left
with broken configs.
Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
SVN-Revision: 48893
John Crispin [Thu, 3 Mar 2016 20:24:41 +0000 (20:24 +0000)]
target/mpc85xx: check for 'generic' subtarget for initramfs image file
Copy 'cuImage.tl-wdr4900-v1-initramfs' only for the 'generic' subtarget.
This is a follow-up to:
http://git.openwrt.org/?p=openwrt.git;a=commitdiff;h=b889fe55c1844aec2c03da28fecb03e958c21f18
We build our initramfs images more rarely, so it took a while
to catch this too.
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
SVN-Revision: 48892
John Crispin [Thu, 3 Mar 2016 20:24:38 +0000 (20:24 +0000)]
mtd: fix reading of image magic bytes in smaller chunks
The image_check currently fails when it cannot read all magic bytes in a
single chunk. But this can happen when the data are read from a pipe. This
currently breaks the openmesh.sh upgrade script with musl because it uses
dd with a blocksize of 1 to copy the image file to the mtd process.
The read can simply be repeated until enough bytes are read for the magic
byte check. It only stops when either an error was returned or 0 bytes were
read.
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
SVN-Revision: 48891
John Crispin [Thu, 3 Mar 2016 20:24:33 +0000 (20:24 +0000)]
om-watchdog: Stop om-watchdog via procd before rebooting
It was noticed that the system can hang during the reboot before the kernel
actually triggers the system reset and before all processes are stopped. The
watchdog didn't automatically restart the system because the om-watchdog
process was still running and triggering the hardware watchdog.
Instead the system should stop the watchdog during the shutdown to get the
benefit of an hardware reset in case of an software related problem. This stop
can be done quite easily with procd because it keeps track of its started
processes.
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
SVN-Revision: 48889