This adds support for Byte Queue Limits in bgmac and b44, now it is
possible to use more advanced network queue control algorithms.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 38038
This updates the patches for BCM5354 to the version send for upstream
Linux inclusion.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 38037
This is now the version which was send for mainline Linux kernel
inclusion. The data needed to detection a board is now stored in init
data.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 38036
This patch adds support for Huawei E970 wireless gateway devices.
It has been tested on an E970 labelled as T-Mobile web'n'walk Box IV.
E960/B970 should work too, from what I know it's basically the same hardware.
The device has a Broadcom BCM5354 SoC and a built-in 3G USB modem.
It uses a hardware watchdog which needs GPIO-7 to be toggled at least
every 1-2 seconds. This patch uses gpio_wdt module (see my previous
patch today) to take care of this.
Tested and works: 3G wan, wlan+LED, VLAN config, failsafe using reset
button, image to be used for upgrade from OEM firmware's web interface
Link to the wiki page I've created: <http://wiki.openwrt.org/toh/huawei/e970>
Issue:
* lzma-loader crashes, so gzipped kernel is used. Presumably due to watchdog
reset during kernel decompress.
Signed-off-by: Mathias Adam <m.adam--openwrt@adamis.de>
SVN-Revision: 38011
A new type of partition with magic FCTY was found on Huawei E970:
46 43 54 59 4b 51 37 4e 41 42 31 38 41 32 39 30 |FCTYKQ7NAB18A290|
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 38005
This is important patch for new devices that support unaligned
addressing. That devices suffer from the backward-compatibility bug in
DMA engine. In theory we should be able to use old mechanism, but in
practice DMA address seems to be randomly copied into status register
when hardware reaches end of a ring. This breaks reading slot number
from status register and we can't use DMA anymore.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 38004
Add a new kernel config option for generic firmware partition
split support and change the uImage split support to depend on
the new option. Aslo rename the MTD_UIMAGE_SPLIT_NAME option to
MTD_SPLIT_FIRMWARE_NAME to make it more generic.
The patch is in preparation for multiple firmware format
support.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38002
This is based on a patch by Mathias Adam.
Signed-off-by: Mathias Adam <m.adam--openwrt@adamis.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 38001
Without this patch it is impossible to read et_swtype, because the 1
byte space is needed for the terminating null byte. Now it should be
possible to read decimal and hex vars of max 8 bit.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 37999
Most of the bcm47xx devices use TRX format for storing kernel and some
partition like Squashfs or JFFS2. This is pretty flexible solution, CFE
(the bootloader) just writes (and later boots) TRX at some hardcoded
place and paritions can vary in the size.
However some devices don't use TRX format. Very recently we have
discovered ZTE H218N that has kernel and rootfs partitions at some
"random" places.
This patch allows Linux find a rootfs partition after installing custom
image with a CFE bootloader.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 37998
Separate OpenWrt specific MTD options from the mainline
option by moving those into a new submenu in the kernel
configuration interface.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37997
* Use different structs depending on the number of nvram variables to check.
* Add detection of ZTE H218N, this closes#14151.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 37996
The revision is stored in a different register than it is in other
Broadcom switches.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 37995
These switches are integrated in some recent BCM53XX and BCM47XX SoCs
like the BCM53572.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 37994
Some devices (BCM4749, BCM5357, BCM53572) have internal switch that
requires initialization. We already have code for this, but because
of the typo in code it was never working. This resulted in network not
working for some routers and possibility of soft-bricking them.
Use correct bit for switch initialization and fix typo in the define.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
SVN-Revision: 37993
The Linksys wrt310n v1 does not have a robo_reset config variable in
nvram, but GPIO Pin 8 is the pin needed for resetting the external
switch, Linksys hard coded it into their source code.
Thank you Devastator for testing.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 37988
This patch adds board detection for the Linksys E1000 V2.1 router, as well
as GPIO support for same.
This fixes bug #14135. Currently, wired networking isn't working on the
router, and I haven't tried the wireless, but with this patch, OpenWRT
successfully boots, and all the LEDs and buttons work properly.
Signed-off-by: Zachary Catlin <zcatlin@indiana.edu>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 37977
- change patch numbers to group the related stuff together,
- add mtd prefix where it is missing,
- use hyphens in the patch names
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37974
This patch adds support for building firmware images for the
TP-Link TL-MR3040 v2. Tested and working on v2.1 hardware.
Signed-off-by: Mads Hansen <d@taba.se>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37964
I checked the GPL code drop from D-Link and tried to get the wireless
and LAN switch LEDs to light up. I found some references in
AthSDK/www/DIR-825_C1/bsp.h as well as
AthSDK/www/DIR-825_C1/rootfs/etc/sysconfig/S2gpio.sh, but in the end I
only got the led for 2.4GHz to work. Anyway, here's the patch.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37963
The skb is usually started by a padding which allows the protocols in the
network stack to add their headers in front of the payload. The skb can be
reallocated in case the preallocated padding is not large enough. This can for
example happen in the function __skb_cow which will check the requested extra
headroom and allocate more buffer when the requested headroom is bigger than
the available one. The extra buffer is aligned again to the multiple of the
NET_SKB_PAD of the target architecture.
The macro used to create the multiple of the NET_SKB_PAD is written in a way
which allows only values power two as alignment parameter. The currently used
value of 48 bytes can not be written as n ** 2 but as 2 ** 4 + 2 ** 5. The
extra buffer is therefore not always the multiple of 48 but can be 16, 64, 80,
128, 144 and so on. The generated values are also not monotonic (48 requested
bytes are mapped to 80 allocated bytes and 49 requested bytes are mapped to 64
allocated bytes).
These unexpected small values result in more reallocations of the buffer. This
was noticed prominently during tests between two QCA9558 720 MHz devices which
were connected via ethernet to PCs and had a HT40 802.11n 3x3 link between each
other. The throughput PC-to-PC during iperf TCP runs increased reliable from
186 Mibit/s to 214 Mibit/s in one direction and from 195 Mibit/s to 220 Mibit/s
in the other direction. This is a performance increase of ~14% just by reducing
the amount of reallocations.
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
SVN-Revision: 37948
Currently, the module causes an oops at least on rt5350. These patches
have been accepted upstream at:
git://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
SVN-Revision: 37931
BCM5365 (and probably other older variants) use a different phy id, so
the phy driver never attached for them.
Fix this by adding the appropriate phy id to the fixup and the phy
driver.
Reported-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 37906
b53_no_ops has no elements and b53_port_ops has one element, this makes
the code access some random memory when trying to access the mib
counter functions.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 37895
Every device I connect to the USB port is detected as 2-1, not 1-1.
So adjust the default setting accordingly.
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 37882
When the squashfs and jffs2 images are generated
in the same turn, the compressed kernel images
are generated twice with the same parameters.
Move compressed kernel generation into a separate
phase to avoid that.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37881
The myloader partition parser code uses ifdef wrappers
to make the code usable on kernels below version 3.2.
All targets are using kernel 3.3 at least so the wraper
is not needed. Remove that.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37880
Those are not needed since we are generating the
initramfs images along with the others.
Remove the variables and use the template names
directly.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37876
Initramfs images are not generated for profiles which
are using the squashfs-only template. Add the missing
'Image/Build/Template/squashfs-only/initramfs' to fix
that.
Also, 'Image/Build/Cameo933x/initramfs' uses wrong
parameters for 'MkuImageLzma/initramfs' due to a
misplaced commma. Remove that to fix the generated
initramfs images.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37871
Taken from the 'alix2: update to LINUX_VERSION 3.10.9'
patch: http://patchwork.openwrt.org/patch/3971/.
Russell says in the original patch:
"Initial whack at updating alix2 to a current kernel. It builds
and runs without problems so far. I copied target/linux/config-3.8,
target/linux/x86/alix2/config-3.8, and target/linux/patches-3.8 to
their 3.10 equivalents and tweaked until it built. The patches
required no changes."
Signed-off-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37869
Taken from the 'alix2: update to LINUX_VERSION 3.10.9'
patch: http://patchwork.openwrt.org/patch/3971/.
Russell says in the original patch:
"Initial whack at updating alix2 to a current kernel. It builds
and runs without problems so far. I copied target/linux/config-3.8,
target/linux/x86/alix2/config-3.8, and target/linux/patches-3.8 to
their 3.10 equivalents and tweaked until it built. The patches
required no changes."
The current patch contains additional configuration tweaks.
Signed-off-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37868
Add kernel configuration and patches for Linux 3.10.
Taken from the 'alix2: update to LINUX_VERSION 3.10.9'
patch: http://patchwork.openwrt.org/patch/3971/.
Russell says in the original patch:
"Initial whack at updating alix2 to a current kernel. It builds
and runs without problems so far. I copied target/linux/config-3.8,
target/linux/x86/alix2/config-3.8, and target/linux/patches-3.8 to
their 3.10 equivalents and tweaked until it built. The patches
required no changes."
The current patch contains additional configuration tweaks,
and the kernel patches were refreshed.
Signed-off-by: Russell Senior <russell@personaltelco.net>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37867
The 'Warning: unable to open an initial console' message
indicates an error in the rootfs. Remove the patch which
hides the warning.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37848
Linux expects that the /dev/console node is present
in the rootfs image. Create the node in initramfs,
in order to make std{in,out,err} usable even in early
init process.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 37846