Previously the tx housekeeping was done in a spin_lock_irqsave critical
section which causes irqs to be disabled during that time. Since the
housekeeping is already prepared to be scheduled as a tasklet process
the housekeeping only in softirq context and revise the locking between
the tx path and the housekeeping tasklet by using a normal spin_lock
which in most situations will be a NOP anyway.
This makes sure that interrupts are only disabled for a short time
since in the worst case the housekeeping might have to free up to 256
skbs.
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29762 3c298f89-4303-0410-b956-a3cf2f4a3e73
Add workarround for BCM5357 and BCM4749.
This patch contains the following fixes from George Kashperko:
* separate subroutines for controller initialization workarounds -
following CodingStyle recommendations;
* __devinit __devexit __devinitconst annotations for CONFIG_HOTPLUG;
* fix leak in ssb_hcd_create_pdev/bcma_hcd_create_pdev - as hci_res being
kmalloc'ed is never freed anywhere while platform_device_add_resources
will kmemdup resources right away;
* fix compilation error in ssb_hcd_resume - it will fail as soon as
CONFIG_PM is selected.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29734 3c298f89-4303-0410-b956-a3cf2f4a3e73
Should fix whiteout issues and missing files when using extroot.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29727 3c298f89-4303-0410-b956-a3cf2f4a3e73
Reading from the flash chip on the TL-WR2543ND seems buggy.
If the SPI flash driver tries to read too much data in one
SPI transfer, the flash chip returns bogus values. This can
be caused by a buggy flash chip on my board, or it can
be a bug in our SPI driver.
Add a workaround to the m25p80 driver until I find out the
root cause of the problem. The patch allows to specify the
maximum numner of bytes which can be read safely withint
one SPI transfer.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29679 3c298f89-4303-0410-b956-a3cf2f4a3e73
* make clock delay configurable
* make read,write commands configurable
* use u16 for member and untag fields
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29677 3c298f89-4303-0410-b956-a3cf2f4a3e73
The wndr3700 at least has no eth0 mac address and usually leverages
the first wireless device's mac when in a bridged scenario. If,
however, you want to route, and not bridge the interfaces, you
need a unique mac address for it.
This patch sets the local bit on the mac address pulled from the
wireless chip and uses the resulting address for eth0.
Patch-by: Dave Taht <dave.taht@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29675 3c298f89-4303-0410-b956-a3cf2f4a3e73
It is based on patches from the linux-longsoon-community git tree:
http://dev.lemote.com/cgit/linux-loongson-community.git/
Now the kernel can use the command line parameter from kexec-tools.
Runtime tested on ar71xx with 2.6.39.4 (the wathdog must be stopped
before executing the new kernel). Compile tested with lantiq (3.1.4)
and brcm47xx (3.0.12).
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29674 3c298f89-4303-0410-b956-a3cf2f4a3e73
The microSD slot and the Real Time Clock is not working yet.
The miniPCIe interface is not tested due to the lack of a
suitable card.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29662 3c298f89-4303-0410-b956-a3cf2f4a3e73
These models are based on the AP99 reference board,
and uses the AR7241 SoC.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29658 3c298f89-4303-0410-b956-a3cf2f4a3e73
This patch adds support for the TP-Link device TL-MR3020 which is very
similiar to the TL-WR703N.
The TL-MR3020 uses 5 LEDs, 1 push button and a switch with 3 positions.
Only four LEDs can be controlled via GPIO. The power LED is connected to
the power supply.
The WPS push button has been mapped to KEY_WPS_BUTTON. The two GPIO signals
of the sliding switch have been mapped to BTN_0 and BTN_1.
I have also setup a wiki page with details here:
http://wiki.openwrt.org/toh/tp-link/tl-mr3020
USB is working and has been tested with USB mass storage and USB UMTS
stick.
Wifi also seems to work.
Ethernet is working too.
Signed-off-by: Christian Cier-Zniewski <c.cier@gmx.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29651 3c298f89-4303-0410-b956-a3cf2f4a3e73
commit 8efa88540635 (sch_sfq: avoid giving spurious NET_XMIT_CN signals)
forgot to call qdisc_tree_decrease_qlen() to signal upper levels that a
packet (from another flow) was dropped, leading to various problems.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29642 3c298f89-4303-0410-b956-a3cf2f4a3e73
Works for me! ;-)
Patch-by: Russell Senior <russell@personaltelco.net>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29614 3c298f89-4303-0410-b956-a3cf2f4a3e73
This add support for the Sitecom WL-351 v1 002.
In principle the Engenius ESR9850 should also work with this, but I
don't have the hardware to test it.
Since an external gigabit switch (RTL8366RB) is used,
I had to modify the ramips_esw driver to add a 'bypass' mode, which
just configures it to not filter the vlan tags.
Also two initialization words (FCT2 and FPA2) are set to different
values by u-boot than what the driver is using and it only seems to
work correctly when they not overridden by the driver, so I
added them to the platform specific data as reg_initval_fct2 and
reg_initval_fpa2.
With this wired lan works as expected, however I'm still having some
trouble with the wireless lan:
It only works after I rmmod & re-insmod rt2800pci and then
reconfigure it in the webinterface, but not directly after
rebooting.
The symptom of this is wpad saying:
Dec 20 15:45:09 OpenWrt daemon.info hostapd: wlan1: STA <notebookmac> IEEE 802.11: associated (aid 1)
Dec 20 15:45:09 OpenWrt daemon.info hostapd: wlan1: STA <notebookmac> WPA: pairwise key handshake completed (RSN)
Dec 20 15:45:22 OpenWrt daemon.info hostapd: wlan1: STA <notebookmac> IEEE 802.11: authenticated
But wpa_supplicant on the client saying:
Authentication with <wl351mac> timed out.
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29604 3c298f89-4303-0410-b956-a3cf2f4a3e73
This new usb driver uses an extra device so the ehci and the ohci driver are not depending on ech other any more.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29575 3c298f89-4303-0410-b956-a3cf2f4a3e73
There are problems with the patches for kernel 2.6.39 and I do not want to support two different sets of patches.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29573 3c298f89-4303-0410-b956-a3cf2f4a3e73
Because the external switch has no driver yet, connect GMAC0
to the PHY4 of the internal switch for now. This allows to
use the DB120 board as a router with 4LAN+1WAN ports.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29557 3c298f89-4303-0410-b956-a3cf2f4a3e73
This patch adds support for the Omnima MiniEMBWiFi
Ralink RT3050F based board.
Based on a patch by Ivan Ignjatic <ivan at omnima.co.uk>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29533 3c298f89-4303-0410-b956-a3cf2f4a3e73
This fixes the issues with the jffs2 images on various boards. Using
JFFS2 on devices with 4KiB erase sectors is not safe:
http://lists.infradead.org/pipermail/linux-mtd/2011-June/036591.html
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29521 3c298f89-4303-0410-b956-a3cf2f4a3e73
The WNDRMAC is a WNDR3700v2 (64MB RAM, 16MB flash) in a white case. The
WNDRMACv2 is a WNDR3800 (128MB RAM, 16MB flash) in a WNDRMAC case.
The WNDRMAC case doesn't have "holes" or labels for the 2.4GHz LED or
switch ports 2-4. The stock firmware uses a single LED (in the 5GHz
position) to indicate the status of both radios, and a single LED (in the
switch port 1 position) to indicate the status of all LAN ports. The
"missing" LEDs are present on the board, and easily shine through the
case. Unlike the stock firmware, OpenWrt will use these "hidden" LEDs.
I've tested the WNDRMACv2 image. I don't have a v1 WNDRMAC, but assume
that this is sufficient to build a fully-functional image.
Signed-off-by: Mark Mentovai <mark@moxienet.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29513 3c298f89-4303-0410-b956-a3cf2f4a3e73
Factory images for WNDR3700v2 and WNDR3800 should contain these model IDs
for the device: field in their DNI tags, not WNDR3700.
This regressed in r29434, which redid WNDR3x00 model detection. The sixth
parameter to Image/Build/Netgear is only used as the -B argument to
mkdniimg, which is used to set the device: field. In r29434, this was
erroneously changed to be WNDR3700 for all models. The tools to flash
factory images (U-Boot's TFTP server and the factory software's upgrade
utility) may refuse to honor images with incorrect device: fields in their
DNI tags.
Signed-off-by: Mark Mentovai <mark@moxienet.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29473 3c298f89-4303-0410-b956-a3cf2f4a3e73
Detect the model name for /tmp/sysinfo/model based on 10 bytes at offset
56 in the art (caldata) mtd partition.
r29434 redid WNDR3x00 model detection, attempting to distinguish between
WNDR3700v2 and WNDR3800 by checking MemTotal in /proc/meminfo. However, it
contained a bug: it put the awk inside a $(...), with the result that all
WNDR3700v2 and WNDR3800 models would be reported as WNDR3800. This patch
checks the model name stored in the art partition, as is done by U-Boot
shipping on the WNDR3800. It has the likely advantage of working with
future models based on the WNDR3700 board. It also will not mis-detect
units on which people install more memory.
I have tested this patch on WNDR3700 (v1), WNDR3700v2, and WNDR3800.
Signed-off-by: Mark Mentovai <mark@moxienet.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29472 3c298f89-4303-0410-b956-a3cf2f4a3e73
Based on a patch by Cristian Deluxe <djcristiandeluxe@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29468 3c298f89-4303-0410-b956-a3cf2f4a3e73
Based on a patch by Nerijus Baliunas <nerijus@users.sourceforge.net>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29454 3c298f89-4303-0410-b956-a3cf2f4a3e73
With the default OpenWrt configuration, this increases the size
of the rootfs_data partition by 384KB/128KB on the older/newer
TP-Link models.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29447 3c298f89-4303-0410-b956-a3cf2f4a3e73