The combination of r35942 and r35952 causes an issue where eth_schedule_poll()
can be called from a different CPU between the call to napi_complete() and the
setting of cur_index which can break the rx ring accounting and cause ethernet
latency and/or ethernet stalls. The issue can be easilly created by adding
a couple of artificial delays such as:
@@ -715,6 +715,7 @@ static int eth_poll(struct napi_struct *napi, int budget)
if (!received) {
napi_complete(napi);
+udelay(1000);
enable_irq(IRQ_CNS3XXX_SW_R0RXC);
}
@@ -727,6 +728,7 @@ static int eth_poll(struct napi_struct *napi, int budget)
rx_ring->cur_index = i;
wmb();
+udelay(1000);
enable_rx_dma(sw);
return received;
This patch moves the setting of cur_index back up where it needs to be and
addresses the original corner case that r35942 was trying to catch in an
improved fashion by checking to see if the rx descriptor ring has become
full before interrupts were re-enabled so that a poll can be scheduled again
and avoid an rx stall caused by rx interrupts ceasing to fire again.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
SVN-Revision: 39761
The IMX6 SoC uses an ARM Cortext-A9 which has both NEON and VFPv3 hardware
blocks. This will tune gcc to use neon instead of vfpv3 which will outperform
VFPv3.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
SVN-Revision: 39760
The OpenWrt build system uses MACHINE_FEATURES of fpu to set the HAS_FPU which
in turn sets the default of CONFIG_SOFT_FLOAT as well as uClibc configuration.
As the IMX6 SoC has both vfpv3 and NEON hardware support we want to add fpu
to the feature list. This will default the IMX6 target to use -mfloat-abi=hard
which will the be most efficient use of floating point.
When switching to hard float, we also need to enable VFP support in the kernel.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
SVN-Revision: 39759
We were copying the actual vmlinux-initramfs.elf kernel which cannot be
launched by QEMU or a real bootloader, use zImage-initramfs instead.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 39756
The ar71xx platform always uses the eth0 interface to provide
access to the device in failsafe mode. Due to this, failsafe
access is broken on devices where the LAN ports are connected
to the 'eth1' interface.
Update the relevant script to correctly set the ifname variable
for these devices.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39752
Add support for 3.13 as a development kernel. Mostly untested, only net
booted. If flashed may brick your router or kill your cat.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 39746
Let the switch start the carrier and set the duplex mode independently
if this nic is up of not.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 39733
We did not start the PHY when an external phy was in use. Without this
patch the driver uses half duplex mode and the switch uses full duplex
mode, which causes problems.
Thank you fback for spotting this problem.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
SVN-Revision: 39719
The RB91x boards are using a serial shift register
connected to the SPI bus to drive some of the LEDs.
Rework the board setup code to register a SPI device
for that. This makes it possible to use the 'spi-74x164'
driver to control the device.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39703
That will be used to drive the 74HC595 serial-in/parallel-out
8-bits shift register which can be found on some RouterBOARDs.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39702
The serial flash devices used on the ROuterBOARDs are
supporting 4KiB erase blocks. Enable the small sector
erase option in the m25p80 driver to avoid superfluous
erase/write of adjacent blocks.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39696
This is a backported patch for the gianfar ethernet driver
used in TPLink 4900 v1. It is supposed to fix the error which
show up in dmesg with:
NETDEV WATCHDOG: eth0 (fsl-gianfar): transmit queue xy timed out
Full upstream patch is at: http://patchwork.ozlabs.org/patch/271242
Signed-off-by: Thomas Huehn <thomas@net.t-labs.tu-berlin.de>
SVN-Revision: 39692
Only netboot tested, so no images or now.
GbE ports are only working in FE mode, and leds do not work.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 39679
Completely untested except for booting from network; wan port
only works in 10/HD, lan1 only in 100/FD.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 39678
BCM63168 has 6 ports (3 FE PHY, 1 GE PHY, two RGMII) and BCM63268
has two additional RGMII ports, making it 8.
Fix this by checking the chip variant and applying an appropriate
limit.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 39677
Support for Asmax AR 1004g router
Signed-off-by: Adrian Feliks <mexit@o2.pl>
Patchwork: http://patchwork.openwrt.org/patch/4464/
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 39674
This adds profile and build image for Sagemcom F@st2704, using b43
driver.
For WiFi to work properly BCMA fallback SPROM support patch must
be applied (http://git.io/z1Ki8A).
Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/4212/
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 39673
This adds userspace support for Sagemcom F@st 2704 router.
Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/4215/
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 39672
This adds kernel support support for Sagemcom F@st 2704 wireless ADSL
router.
It's a BCM6328-based 802.11n wireless router with USB port and ADSL2+
modem equipped with 64 MiB RAM and 8 MiB flash.
Signed-off-by: Marcin Jurkowski <marcin1j@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/4266/
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 39671
Update the Ventana device-tree to match upstream:
- Add IMX6Q/IMX6DL variants for GW54xx/GW53xx/GW52xx/GW51xx
- align pinctrl with upstream
- consolidate multiple patches into one
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
SVN-Revision: 39644
I noticed that the patch at http://patchwork.openwrt.org/patch/4017/
for adding support for the MikroTik RouterBOARD 951Ui-2HnD had been
abandoned because it wasn't generated and sent to the mailing list
correctly and doesn't apply as a result. I have cleaned up this patch.
When testing this on real hardware, I also noticed that wireless didn't
work, so this patch fixes that as well.
This patch applies cleanly to SVN 39392.
Signed-off-by: Matthew Reeve <mreeve@tenxnetworks.com>
Patchwork: http://patchwork.openwrt.org/patch/4773/
[juhosg:
- drop the 'rb951ui_wlan_init' function and rework the code to
use the recently introduced rb95x_wlan_init function instead,
- fix GPIO number of the port5 LED,
- rename LEDs according to the standard LED naming conventions,
and use 'rb' prefix in the names]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39641
This is a backport of code to improve the quality of fq_codel
hashing for 3.10 for some encapsulated protocols.
Not needed in 3.11 and later.
Patch-by: Dave Taht <dave.taht@bufferbloat.net>
Patchwork: http://patchwork.openwrt.org/patch/4902/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39640
Patch-by: TenNinjas <tenninjas@tenninjas.ca>
Patchwork: http://patchwork.openwrt.org/patch/4849/
[juhosg:
- use the Archer C7 specific LED setup instead of adding
identical code]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39636
This missing bit of the hack saves hugely on instruction traps
on tcp connections to ar71xx based routers.
Patch-by: Dave Taht <dave.taht@bufferbloat.net>
Patchwork: http://patchwork.openwrt.org/patch/4905/
[juhosg: adjust subject, refresh kernel patch]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39626
Solves ticket #14356 <https://dev.openwrt.org/ticket/14356>
Without this patch, UART output will show only 4 partitions:
[ 0.740000] 4 cmdlinepart partitions found on MTD device spi0.0
[ 0.750000] Creating 4 MTD partitions on "spi0.0":
[ 0.750000] 0x000000000000-0x000000050000 : "u-boot"
[ 0.760000] 0x000000050000-0x000000070000 : "u-boot-env"
[ 0.770000] 0x000000070000-0x0000007f0000 : "firmware"
[ 0.790000] 0x0000007f0000-0x000000800000 : "art"
and then linux complains :VFS: Cannot open root device "(null)"
With this patch, UART out will show 7 partitions:
[ 0.740000] 4 cmdlinepart partitions found on MTD device spi0.0
[ 0.750000] Creating 4 MTD partitions on "spi0.0":
[ 0.750000] 0x000000000000-0x000000040000 : "u-boot"
[ 0.760000] 0x000000040000-0x000000050000 : "u-boot-env"
[ 0.770000] 0x000000050000-0x0000007f0000 : "firmware"
[ 0.780000] 2 netgear-fw partitions found on MTD device firmware
[ 0.780000] 0x000000050000-0x00000014b440 : "kernel"
[ 0.790000] mtd: partition "kernel" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[ 0.800000] 0x00000014b440-0x0000007f0000 : "rootfs"
[ 0.810000] mtd: partition "rootfs" must either start or end on erase block boundary or be smaller than an erase block -- forcing read-only
[ 0.820000] mtd: device 4 (rootfs) set to be root filesystem
[ 0.830000] 1 squashfs-split partitions found on MTD device rootfs
[ 0.830000] 0x000000340000-0x0000007f0000 : "rootfs_data"
[ 0.840000] 0x0000007f0000-0x000000800000 : "art"
This patch is tested against r39502 of trunk.
Signed-off-by: Jonathan Chang <changcs@santos.ee.ntu.edu.tw>
Patchwork: http://patchwork.openwrt.org/patch/4870/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39625
The board is optimized for ubi(fs) and boots OpenWrt without changes to uboot
environment if OpenWrt's uboot package is used. In order to flash the image run
following commands in uboot shell:
nand erase 0x200000 0xfe00000
ubi part root ; ubi remove rootfs ; ubi create rootfs
tftpboot 0x800000 openwrt-kirkwood-dockstar-rootfs.ubifs ; ubi write 0x800000 rootfs ${filesize} ; reset
Signed-off-by: Luka Perkov <luka@openwrt.org>
Tested-by: Alexander Couzens <lynxis@fe80.eu>
CC: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 39593
The board is optimized for ubi(fs) and boots OpenWrt without changes to uboot
environment if OpenWrt's uboot package is used. In order to flash the image run
following commands in uboot shell:
nand erase 0x200000 0xfe00000
ubi part root ; ubi remove rootfs ; ubi create rootfs
tftpboot 0x800000 openwrt-kirkwood-ib62x0-rootfs.ubifs ; ubi write 0x800000 rootfs ${filesize} ; reset
Signed-off-by: Luka Perkov <luka@openwrt.org>
Tested-by: Luka Perkov <luka@openwrt.org>
CC: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 39592
Previous patch was pushed due to false user report. While at it fix alphabetic
ordering.
The board is optimized for ubi(fs) and boots OpenWrt without changes to uboot
environment if OpenWrt's uboot package is used. In order to flash the image run
following commands in uboot shell:
nand erase 0x200000 0x1fe00000
ubi part root ; ubi remove rootfs ; ubi create rootfs
tftpboot 0x800000 openwrt-kirkwood-iconnect-rootfs.ubifs ; ubi write 0x800000 rootfs ${filesize} ; reset
Signed-off-by: Luka Perkov <luka@openwrt.org>
CC: Imre Kaloz <kaloz@openwrt.org>
SVN-Revision: 39591
Some ARV4510PW units seem to have unstable PCI due to missing pull-up
resistors. This patch makes sure that the GPIO lines are driven properly.
Signed-off-by: Matti Laakso <malaakso@elisanet.fi>
SVN-Revision: 39587
The mtdpartsize macro triggers shell errors on various Linux distributions
when the partname argument $(1) does not appear within the partmap $(2).
Change the sed pattern to only emit anything if a successful substitution
occured and only evaluate the arithmetic expression if something was printed
by the sed program.
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
SVN-Revision: 39583
This Armada XP GP board from Marvell comes with:
* 2GB DDR3 DIMM
* 1GB NAND flash (8-bit interface)
* 16MB NOR flash (16-bot interrface)
* 16MB SPI flash
* SDIO module
* 3 PCIe
* 1 SATA link
* 2 USB EHCI
* 1 internal SSD
* 4 Ethernet Gigabit
* 1 RS232 port over USB
Signed-off-by: Seif Mazareeb <seif.mazareeb@gmail.com>
SVN-Revision: 39568
The config-3.10 doesn't specify the configuration of the backported PCI
features, and the Marvell EBU Device Bus Controller, this will prevent
a clean compile. This patch enables these features to archive a clean compile
without having to specify the state of these configuration after starting to
compile.
Signed-off-by: Seif Mazareeb <seif.mazareeb@gmail.com>
SVN-Revision: 39567