The eth5 LED on the RB2011 is not working because the
LED control rule is missing. Fix it.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39335
The r39147 commit introduces a regression: at lease on some routers
with ar8216 switch large packets get lost if 802.1q tagged port is
used on the interface connected to the aforementioned switch.
The r39147 changes code in the way so interface is set to accept
packets no longer than max ethernet frame length for a given mtu.
Unfortunately ar8216 has a feature: it sends two additional bytes
as a packet header and those this header needs to be added to the
max frame length. Otherwise long enough packets get lost.
The problem only manuifests itself if interface is used in vlan
tagged mode. If interface is untagged then ar8216's header fits
into space used by 802.1q tag and not packets are lost.
Include two additional bytes in the max frame length calculation
to fix the issue.
This patch is tested and works with Trendnet TEW-632BRP.
Signed-off-by Nikolay Martynov <mar.kolya@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/4656/
[juhosg:
- simplify the patch to include the additional bytes of the
switch header unconditionally,
- change subject and update commit message]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39219
The built-in wireless MAC of the AR934x SoC can handle
external LNAs and the control signal of the LNAs can be
routed to any GPIO line. Add a helper function which
can be used to configure the GPIO lines.
The helper function will be used for AR934x boards
which are using externel LNAs to improve sensitivity.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39215
The LNAs need to be enabled by setting their respective GPIO to high even
though the original firmware's setting sets them to low on initialization.
Obviously the LNAs are then later initialized by the driver on the OEM
firmware. Without this fix the device is mostly "deaf".
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
Tested-by: Steven Haigh <netwiz@crc.id.au>
Patchwork: http://patchwork.openwrt.org/patch/4689/
[juhosg:
- remove the GPIO LED changes, the My Net N600 has no yellow LEDs at all,
- change subject and update the commit message]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39214
The LNAs need to be enabled by setting their respective GPIO to high even
though the original firmware's setting sets them to low on initialization.
Obviously the LNAs are then later initialized by the driver on the OEM
firmware. Without this fix the device is mostly "deaf".
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
Patchwork: http://patchwork.openwrt.org/patch/4688/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39213
The hardware supports large ethernet frames. Override
the maximum frame length and packet lenght mask in the
platform data to allow to use large MTU on the ethernet
interfaces.
Limit the feature to AR934x SoCs for now. It should work
on some other SoCs as well, but those has not been tested
yet.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39149
The currently used bitmask of the maximum frame length field
is wrong for both models. On AR724x/AR933x the largest frame
size is 2047 bytes, on the AR934x it is 16383 bytes.
Make the MTU setup code model specific, and use the correct
bitmask for both models. Also change the value to the maximum.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39148
Set the MAX_FRAME_LEN register to zero in ag71xx_hw_init()
and write the correct value into that from the ag71xx_open()
and ag71xx_fast_reset() functions.
Also recalculate the RX buffer size based on the actual
maximum frame length value to optimize memory allocation.
Additionaly, disallow to change the MTU value while the
interface it running.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39147
The currently used bitmask is not correct for all SoCs.
Introduce a new field in struct ag71xx and store the
bitmask in that. Use the current value for now, it will
be adjusted for each SoCs in further patches.
Aslo use the new field directly in the ag71xx_rx_packets
and ag71xx_hard_start_xmit() functions and remove the
ag71xx_desc_pktlen() helper.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39144
Now that the switch works correctly we can enable the images for this
board.
Flashing from the factory firmware, the factory failsafe loader and
sysupgrade was tested successfully.
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
Patchwork: http://patchwork.openwrt.org/patch/4617/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39130
Now that the switch is working correctly I had the chance to actually
test the LED config.
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
Patchwork: http://patchwork.openwrt.org/patch/4616/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39129
The bootloader on the WD My Net N750 disables the ports on it's internal
AR8327N switch by powering them down. The stock firmware then brings the
ports back up again by starting the auto negotiation process on each
port.
This fix implements just that.
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
Patchwork: http://patchwork.openwrt.org/patch/4615/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39128
This enables us to add fixups to the board specific code for boards that
require special treatment of PHYs on mdio bus reset.
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
http://patchwork.openwrt.org/patch/4614/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39127
This enables us to modify the ag71xx_mdio_platform_data from within the
board support files.
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
Patchwork: http://patchwork.openwrt.org/patch/4613/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39126
Currently, the AG71XX_RX_PKT_SIZE value limits the received
frame size to 1514/1516 bytes with/without a VLAN header
respectively. However the hardware limit is controlled by
the value the AG71XX_REG_MAC_MFL register which contains
the value of the max_frame_len field.
Compute the RX buffer size from the max_frame_len field
to get rid of the 1514/1516 byte limitation. Also remove
the unused AG71XX_RX_PKT_SIZE definition.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39121
The ar7240_probe function uses the network device name
in the kernel log messages, however the name is not yet
initialized when the ar7240_probe function is called.
Use the mdio bus name in the messages to avoid ugly
log lines like the following one:
eth%d: Found an AR7240/AR9330 built-in switch
Reported-by: Ronald Wahl <ronald.wahl@raritan.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39116
The ag71xx debugfs code uses the network device name
for the device specific debugfs directory. Since r38689
'ar71xx: ag71xx: fix a race involving netdev registration'
the debugfs initialization happens before the ethernet
device gets registered and the network device name contains
'eth%d' at this point. If the board setup code registers
multiple ag71xx devices, the debugfs code tries to create
the device specific dir with the same name which causes
an error like this:
eth0: Atheros AG71xx at 0xba000000, irq 5, mode:GMII
ag71xx ag71xx.0: connected to PHY at ag71xx-mdio.1:04 [uid=004dd041, driver=Generic PHY]
ag71xx: probe of ag71xx.0 failed with error -12
Use the device name for the debugfs directory to avoid the
collisions. Also add an error message and change the return
code if the debugfs_create_dir call fails.
Reported-by: Ronald Wahl <ronald.wahl@raritan.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39115
It is only on RB911G-5HPnD and RB912UAG-5HPnD boards.
The LEDs and the USB port is not working yet.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39102
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
[juhosg: remove the image generation part until the ethernet
switch issue is resolved]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39078
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
[juhosg: use a separate patch for kernel changes]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39077
The TL-WA801ND v2 board has only one LAN port which makes
it more similar to the TL-WR[78]50RE devices. Move the
board setup code into the mach-tl-wax50re.c file.
Based-on: http://patchwork.openwrt.org/patch/4506/
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39072
This way it is a bit easier to add other TP-LINK devices based on the
Atheros AP123 reference board with one LAN port.
Based-on: http://patchwork.openwrt.org/patch/4506/
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39071
Patch to add the user space support for the TL-WA801ND v2
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Patchwork: http://patchwork.openwrt.org/patch/4501/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39064
Patch to add kernel support for the TP-LINK WA801ND v2
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Patchwork: http://patchwork.openwrt.org/patch/4500/
[juhosg:
- the TL-WA801ND v2 does not have a sliding switch, it uses a push button
for WPS instead. Use the tl_mr3420v2_gpio_keys array to reflect that,
- rename kernel patch]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39063
That function provides a slightly improved sanity check than the
currently used solution.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38967
This patch enables the convenient sysupgrade feature for
WD's Wi-Fi Range Extender.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Patchwork: http://patchwork.openwrt.org/patch/4341/
[juhosg:
- rename 'mynet_rext_check_image' function to 'cybertan_check_image'
and move that into platform.sh,
- remove the the model specific 'platform_do_upgrade_mynet_rext' function,
- drop the mynet-rext.sh script,
- remove the image/Makefile change,
- update commit message]
[christian:
- check all 8 bytes of the firmware/device magic]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38966
Make the Image/Build/CyberTAN macro more generic,
and use simple wrappers for the GZIP/LZMA variants.
This simplifies the Makefile a bit, and allows to
build sysupgrade images for the devices which are
using LZMA compressed uImages.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38965
In the current sysupgrade images, the CRC32 value of
the TRX header covers the whole rootfs data. Due to
this, the CRC value should be changed during sysupgrade
otherwise the bootloader refuses to load the image on
the next boot.
Change the image generation to create sysupgrade images
where the CRC32 value covers the kernel data only. This
allows to skip the 'fixtrx' step during sysupgrade on
the target.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38964
- partitions on factory fw are a bit strange
- unknown contained some strings in factory
- unknown2 contains some atheros (2nd art ?)
Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>
Patchwork: http://patchwork.openwrt.org/patch/4149/
[juhosg: edit commit message]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38954
There was no way to determine a working config, because
the switch (ar8337) was not working previously.
Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>
Patchwork: http://patchwork.openwrt.org/patch/4470/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38953
The device has three extra LEDs which indicate the quality
of the wireless link. Thanks to rssileds, this feature now
works out of the box.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Patchwork: http://patchwork.openwrt.org/patch/4462/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38950
This patch improves support for the device considerably.
1. The wifi didn't work in the initial release. This was because
the WMAC of the AR9340 is not connected to the antennas.
(However, it can pick up wifi signals, if they are strong enough!)
Instead there's a dedicated AR9300 chip on the same board, which
works.
2. Ethernet throughput is improved. iperf shows that the hardware
can sustain more than 200Mbit/s and no longer drops any packages
when the link is under load.
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Patchwork: http://patchwork.openwrt.org/patch/4461/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38949
The F1E Phy (AR8035?) requires additional bits to be
set in order to provide a fast and reliable connection
over gigabit links.
When enabled, the link doesn't suffer anymore from a small
package loss under load and the performance is improved
quite a bit as well. (203 mbit/s vs 112 mbit/s, iperf tcp).
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Patchwork: http://patchwork.openwrt.org/patch/4460/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38948
Small update to uci_defaults/01_leds, to support the usb led
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/4426/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38947
Just a small oversight my part, added the support for the USB led
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/4425/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38946
Patch to add the profile for the TP-LINK WR842N/ND v2
Small update, because of a change in the Makefile.
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/4382/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38815
Patch to add the user space support for the TL-WR842N/ND v2
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
Patchwork: http://patchwork.openwrt.org/patch/4354/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38814
Get the factory assigned mac addresses stored in the caldata
partition and asign them to lan and wan interfaces. Also put
the correct mac addresses into the WiFi eeprom files to ensure
that the ath9k driver will use the correct ones.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Patchwork: http://patchwork.openwrt.org/patch/4350/
[juhosg:
- move WiFi MAC address setup to the firmware hotplug file,
- use the official MAC address for the 2.4GHz as well,
- remove uci-defaults.sh modifications,
- update commit message]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38812
The current implementation of mtd will not append the backup
file created by sysupgrade to the correct partition, as mtd will append
the data to first jffs2 partition it finds. As the kernel is also
stored on a jffs2 partition (which resides before the overlay
partition), the data will be appended to this partition.
To fix this problem, a new option
-s <number> skip the first n bytes when appending data to the jffs2 partiton, defaults to "0"
is added to mtd.
Signed-off-by: Peter Wagner <tripolar@gmx.at>
SVN-Revision: 38807
Patch to add user space support for the TL-WA750RE/WA850RE range extender
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38718
Patch to add kernel support for the TP-LINK WA750RE and the WA850RE
range extender
Signed-off-by: Martijn Zilverschoon <thefriedzombie@gmail.com>
[juhosg: rename and refresh kernel patch]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38717
In particular, phy_connect before register_netdev. This is because
register_netdev runs the netdev notifiers, which can race with the rest of
the initialization in ag71xx_probe. In my case this manifested in two ways:
1) If ag71xx is compiled as a module and inserted after netifd has started,
netifd is notified by register_netdev before the call to
ag71xx_phy_connect. netifd tries to bring the interface up, which calls
ag71xx_open, which in turn enters ag71xx_phy_start. This keys off
ag->phy_dev (which is still NULL) and thinks this is a fixed-link board,
and enters ag71xx_link_adjust. This looks at ag->speed which is not yet
initialized and hits the BUG() in the switch (ag->speed) in
ag71xx_link_adjust.
This is the wrong code path for ag71xx_phy_start - my board has PHYs that
need to be brought up with phy_start. Doing ag71xx_phy_connect before
register_netdev ensures that ag->phy_dev is non-NULL before
ag71xx_phy_start is ever called.
2) When ag71xx is built into the kernel, and netconsole is enabled, there
is a gap in the initial burst of replayed printks right after the netdev
comes up. My assumption is that netconsole is also triggered by a netdev
notifier, and part of this printk burst happens before the call into
ag71xx_phy_connect, so part of the burst is lost while the PHY comes up.
This patch fixes the gap - all the printks before eth0 comes up are bursted
in full when netconsole initializes.
ag71xx_phy_connect_xxx no longer runs with a registered netdev, so the
logging has been adjusted accordingly to avoid "unregistered net_device" or
"eth%d" messages in dmesg.
Signed-off-by: Catalin Patulea <cat@vv.carleton.ca>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38689
Patchwork: http://patchwork.openwrt.org/patch/4281/
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
[juhosg:
- remove the Image/Build/CyberTANLZMA/loader macro, it is not used
- move the MYNETREXT SingleProfile definition to the correct place]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38688
This patch adds a new device definition for a
Western Digital device. The hardware seems to
be based on Qualcomm Atheros DB120 design.
Patchwork: http://patchwork.openwrt.org/patch/4281/
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
[juhosg: refresh kernel patch]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38686
Append EOF markers to the END of the UBI image
file. This forces the kernel to erase all blocks
after the marker even if those blocks are not
empty.
Additionally, the resulting image can be flashed
from the original web UI now, so use '-factory'
suffix for that.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38683
Extended the Makefile to generate a working factory reset image
for Netgear WNDR4300. The image uses UBI with two volumes squashfs
(rootfs) and JFFS2 (rootfs_data). In order to make stock U-Boot
happy, a fake rootfs image is placed into the last erase block
of the kernel partition.
Signed-off-by: Stefan Agner <stefan@agner.ch>
[juhosg:
- restore the NetgearNAND/initramfs macro,
- remove unused {Squash,Ubi}fsTemplate macros,
- remove board specific mtd options from CONFIG_CMDLINE, append the
board specific ubi.mtd parameter to the kernel command line instead,
- increase kernel partition size to 2MiB,
- use board specific ini file for ubinize,
- put jffs2 eof mark into the rootfs_data ubi volume,
- use KDIR_TMP for temporary images,
- use the squashfs-raw image,
- increase kernel partition size to 2MiB,
- use a local ubinize macro,
- fix macro parameter comments,
- put the fake rootfs into the last erase block of the kernel
partition,
- move Image/Build/NetgearNAND/buildkernel macro before
define Image/Build/NetgearNAND,
- don't use the wndr3700 utility, use '-M' parameter of mkimage to set
the uImage magic,
- use '-recovery' suffix for the generated image, it is only usable via
the fw_recovery function of the bootloader,
- update commit log]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38655
Add new subtarget nand with UBI/UBIFS including GLUEBI and squashfs.
This target will be used for NAND based router which make use of
UBI (and maybe UBIFS later on) in order to provide proper NAND
support.
Signed-off-by: Stefan Agner <stefan@agner.ch>
[juhosg:
- tweak target.mk:
change BOARDNAME variable,
improve Target/Description,
remove targz and ubifs from FEATURES and add broken flag,
- optimize kernel configuration:
disable ubifs, it is not used yet,
disable unused MTD options,
disable SPI support
disable unused network drivers,
tune kernel command line,
- remove image/ubinize.cfg, it will be in a follow-up patch
- move profile modifications into a separate patch]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38646