| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 35798
|
|
|
|
|
|
| |
https://dev.openwrt.org/ticket/12830
SVN-Revision: 35359
|
|
|
|
|
|
| |
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 34843
|
|
|
|
|
|
|
|
|
|
| |
The Kconfig identifier to enable debugging in the driver was different from the
actually used one. Fix that.
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 34332
|
|
|
|
|
|
|
|
|
| |
This should fix the stalled irq problem seen by several people.
This is not the real fix, but rather moves the bug to the un/init patch of the driver.
The real bug still needs to be fixed, but this workaround should be suffcient to make
the ethernet stable.
SVN-Revision: 34177
|
|
|
|
| |
SVN-Revision: 33548
|
|
|
|
| |
SVN-Revision: 33547
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add missing andmask to ramips_esw register read for recv_good value.
Without the mask, recv_bad leaks into the recv_good packet count.
Didn't notice the bug before since you don't usually get bad
packets, so I only saw it when I was playing with overlength packets
earlier...
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 33322
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
more reliable.
Use doubletagging to disable ramips_esw vlan by default, it seems
more reliable.
Daniel Golle found an issue where sometimes (possibly only for
RT3352) the default vlan disable method (clearing en_vlan, untag,
doubletag and putting all ports into vlan 0) doesn't work and the
packets get sent out vlan-tagged with vlan 0.
Instead switch to using the doubletagging method (allow doubletagged
packets, put all ports into vlan 0 with untag enabled) by default.
Unless someone figures out a way to really globally disable vlan for
this switch, this seems like the best (most reliable) option.
I did some tests regarding maximum packet size and did not see any
difference between the two methods, both allow for slightly bigger packets
than the ramips_main.c ethernet driver (ping stops going through
above "ping -s 1472" (1514 bytes), on the switch packets are recv_good until
"ping -s 1490", or about 1532 bytes).
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 33321
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Power down phy on disabled switch ports.
Haven't measured this myself yet, but according to this
http://www.8devices.com/community/viewtopic.php?f=6&t=156
it can save about 300mW of power.
[juhosg: fix checkpatch warning]
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 33304
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename POC registers.
The current code uses POC1-POC3.
The datasheet uses:
POC1: Port Control 0
POC1: Port Control 1
POC2: Port Control 2
So the first POC1 is a typo that should have been POC0, rename the
registers to POC0-POC2 accordingly.
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 33302
|
|
|
|
|
|
|
|
|
|
|
|
| |
Stop handling VLAN setup in the kernel.
Removes the obsolete RT305X_ESW_VLAN_CONFIG_BYPASS option I added for
WL-351 and add some extra comments.
Also removes the en_vlan per-port flag that isn't very useful really, it now
is only controlled by the global enable_vlan flag.
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 33301
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add swconfig support to ramips_esw.c
This patch adds swconfig support for ramips_esw:
Tested on both D-LINK DIR-300 B1 and Sitecom WL-351 (external
rtl8366rb on internal port 5).
I've made sure that in the enable_vlan=0 case it behaves like a dumb
switch, so external switches should work fine with vlans and
verified this on the WL-351.
The current state shown by swconfig is always read directly from HW
registers, new settings only show after 'swconfig dev rt305x set apply'.
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 33299
|
|
|
|
|
|
|
|
|
|
| |
Minor indentation cleanup.
Prepare for the main swconfig patch by cleaning up indentation a bit.
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 33298
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As the userspace has no means to determine the maximum possible timeout, use
that as the default and let the userspace lower it when necessary.
As the result the usual OpenWrt install (with busybox's watchdog trying to set
the timeout to 60s on start) is using a 33s timeout on an RT3052 clocked at
384MHz instead of the current 20s default.
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
SVN-Revision: 33144
|
|
|
|
|
|
| |
Signed-of-by: Nikolai Zhubr <n-a-zhubr@yandex.ru>
SVN-Revision: 32823
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add byte queue limits support to net/ethernet/ramips_main.c
"Byte queue limits are a mechanism to limit the size of the transmit
hardware queue on a NIC by number of bytes. The goal of these byte
limits is too reduce latency (HOL blocking) caused by excessive
queuing in hardware (aka buffer bloat) without sacrificing
throughput."
Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de>
SVN-Revision: 31844
|
|
|
|
| |
SVN-Revision: 30733
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This helps to reduce code size on RX path:
add/remove: 0/0 grow/shrink: 3/1 up/down: 68/-56 (12)
function old new delta
ramips_eth_open 1104 1144 +40
ramips_ring_free 212 232 +20
ramips_eth_stop 400 408 +8
ramips_eth_rx_hw 648 592 -56
SVN-Revision: 30732
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This helps to reduce code size on TX path:
add/remove: 0/0 grow/shrink: 1/4 up/down: 56/-92 (-36)
function old new delta
ramips_eth_open 1048 1104 +56
ramips_eth_tx_housekeeping 156 148 -8
ramips_ring_free 224 212 -12
ramips_eth_stop 420 400 -20
ramips_eth_hard_start_xmit 480 428 -52
SVN-Revision: 30731
|
|
|
|
|
|
| |
Also rename the 'fe_int' variable.
SVN-Revision: 30713
|
|
|
|
| |
SVN-Revision: 30681
|
|
|
|
| |
SVN-Revision: 30680
|
|
|
|
| |
SVN-Revision: 30679
|
|
|
|
| |
SVN-Revision: 30671
|
|
|
|
|
|
| |
Also clean up the Kconfig symbols.
SVN-Revision: 30670
|
|
|
|
| |
SVN-Revision: 30669
|
|
|
|
| |
SVN-Revision: 30652
|
|
|
|
| |
SVN-Revision: 30573
|
|
|
|
| |
SVN-Revision: 30555
|
|
|
|
| |
SVN-Revision: 30554
|
|
|
|
|
|
|
|
| |
structures
This helps GCC to generare more efficient code.
SVN-Revision: 30553
|
|
|
|
| |
SVN-Revision: 30552
|
|
|
|
| |
SVN-Revision: 30550
|
|
|
|
| |
SVN-Revision: 30549
|
|
|
|
| |
SVN-Revision: 30547
|
|
|
|
| |
SVN-Revision: 30497
|
|
|
|
| |
SVN-Revision: 30495
|
|
|
|
| |
SVN-Revision: 30475
|
|
|
|
| |
SVN-Revision: 30455
|
|
|
|
| |
SVN-Revision: 30450
|
|
|
|
| |
SVN-Revision: 30449
|
|
|
|
| |
SVN-Revision: 30448
|
|
|
|
| |
SVN-Revision: 30447
|
|
|
|
| |
SVN-Revision: 30446
|
|
|
|
| |
SVN-Revision: 30445
|
|
|
|
| |
SVN-Revision: 30444
|
|
|
|
| |
SVN-Revision: 30443
|
|
|
|
| |
SVN-Revision: 30442
|
|
|
|
| |
SVN-Revision: 30441
|