Commit graph

3071 commits

Author SHA1 Message Date
Florian Beier
5abeba3450
ar71xx: add userspace support for D-Link DIR-869 A1, generate images
Signed-off-by: Florian Beier <beier.florian@gmail.com>
[Matthias Schiffer: fix factory image, improve commit message]
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-10-11 22:58:37 +02:00
Matthias Schiffer
594f0e80ce
ar71xx: add kernel support for D-Link DIR-869 A1
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-10-11 22:58:36 +02:00
Matthias Schiffer
e407f1a4c8
ar71xx: add back SEAMA header checksum fix (as used on ramips)
The D-Link DIR-869 A1 doesn't accept images with the jffs2 marker added
after the checksummed range, so we need to include it in the checksum and
fix it on first boot.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-10-11 20:57:59 +02:00
Matthias Schiffer
212ce6bce1
ar71xx: avoid double lzma compression of kernel for SEAMA images
Use relocation loader instead of lzma loader.

Tested on D-Link DIR-869 A1.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-10-11 20:57:51 +02:00
Matthias Schiffer
0d1fb72241
ar71xx: add relocation loader
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-10-11 20:39:16 +02:00
Matthias Schiffer
fce0b5d893
ar71xx: clean up SEAMA image build code
Split seama-factory and seama-sysupgrade into smaller pieces (similar to
the ramips code) to make the image generation more flexible.

Also use standard pad-offset instead of adding a block of zeros at the
beginning of the image that is later cut off again. Standard pad-rootfs can
be used as the seal header doesn't contain an image size or checksum.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-10-11 20:32:24 +02:00
Amir Rachum
4c36bcc567
ar71xx: build image for Archer C7 v2 IL
TP-Link uses a different region coding mechanism for IL firmware for the Archer
C7 v2. Instead of of setting the region, they set a different TPLINK_HWREV.

Signed-off-by: Amir Rachum <amir@rachum.com>
2016-10-09 21:13:09 +02:00
Piotr Dymacz
52974da2bb ar71xx: update kernel config symbols
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:51 +02:00
Piotr Dymacz
c166b050fd ar71xx: base-files: fix boards order in lib/upgrade/platform.sh
Keep also case sections in alphabetical order.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:50 +02:00
Piotr Dymacz
8be47007a9 ar71xx: base-files: cleanups in lib/upgrade/platform.sh
This includes:

- code style fixes
- fix boards order within case sections

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:50 +02:00
Piotr Dymacz
92870eac27 ar71xx: comsetic cleanups in files/arch/mips/ath79/{Makefile,machtypes.h}
Keep everything in alphabetical order and aligned in columns.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:50 +02:00
Piotr Dymacz
6e58440fc1 ar71xx: base-files: cleanups in etc/board.d/01_leds
This includes:

- use of local 'board' variable in LED names, wherever possible
- merge of boards with exactly the same LED configuration

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:50 +02:00
Piotr Dymacz
c142df3094 ar71xx: fix LED names for GL Innovations boards
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:50 +02:00
Piotr Dymacz
8689078a9b ar71xx: base-files: fix code style in etc/board.d/01_leds
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:50 +02:00
Piotr Dymacz
d09f4e0631 ar71xx: base-files: combine boards with the same config in etc/diag.sh
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:49 +02:00
Piotr Dymacz
2917ae91ec ar71xx: base-files: cleanups in etc/diag.sh
This includes:

- code style fixes
- use of local 'board' variable in LED names, wherever possible

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:49 +02:00
Piotr Dymacz
edcdb93467 ar71xx: base-files: fix boards order in etc/board.d/02_network
Keep everything in alphabetical order. Boards are ordered in two steps,
first within/inside common configuration (case section), then sections,
globally.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:49 +02:00
Piotr Dymacz
a75cfac1f6 ar71xx: base-files: cleanups in etc/board.d/02_network
This includes:

- code style fixes
- removal of huge comment (it should be in doc, not here) and some small ones
- removal of redundant config for DR531/WPJ531 as the default is the same
- merge of boards with exactly the same interfaces config

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:49 +02:00
Piotr Dymacz
4fa90c49c1 ar71xx: base-files: rework etc/board.d/02_network
Convert etc/board.d/02_network in ar71xx target to the same shape
as we have in ramips target. Split code into two new functions:

- interface/s setup in ar71xx_setup_interfaces()
- MAC/s setup in ar71xx_setup_macs()

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-10-04 11:50:48 +02:00
Álvaro Fernández Rojas
7d559169c5 kernel: update to v4.4.23
Refresh patches for all targets that support kernel 4.4.
compile/run-tested on brcm2708/bcm2710 only.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-09-30 20:08:21 +02:00
Martin Blumenstingl
e7be0decf6 ar71xx: Do not use a hardcoded ath10k firmware mac address
ar71xx has an init-script for special devices where the ath10k OTP
calibration data is stored on the PCIe card's EEPROM (and thus can only
be read by ath10k). Unfortunately the OTP data uses the default mac
address (= all devices come with the same mac address, which leads to
problems when you have multiple of these devices in the same network).

To work around this the mac address is patched in the firmware during
the first boot of the device. To prevent flash wear this was only done
if the ath10k firmware matched a hardcoded md5sum.
However, if the md5sum does not match this can mean that either the mac
address was already patched (which is fine) - unfortunately it can also
mean that the firmware version was updated without updating the
hardcoded md5sum.

Change the "was the mac address already patched" check to actually
compare the mac address inside the ath10k firmware.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
2016-09-28 08:39:01 +02:00
Chris Blake
68d649f5cd ar71xx: add support for Cisco Meraki Z1 Cloud Managed Teleworker Gateway
This patch adds support for Cisco's Z1.
Detailed instructions for the flashing the device can
be found in the OpenWrt wiki:
<https://wiki.openwrt.org/toh/meraki/z1>

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
2016-09-27 17:50:22 +02:00
Matthias Schiffer
9dbf8241c3
ar71xx: clean up DEVICE_PACKAGES of legacy devices
Remove arbitrary or redundant packages from DEVICE_PACKAGES.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-09-26 17:57:57 +02:00
Neal Oakey
524d4110f9
ar71xx: add model detection for many Ubiquiti AirMax XM devices
Signed-off-by: Neal Oakey <neal.oakey@bingo-ev.de>
[Matthias Schiffer: minor adjustments]
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-09-24 19:07:27 +02:00
Jo-Philipp Wich
1c09849f6c treewide: remove bad local shell variable declarations
Local variable declarations outside of functions are illegal since the Busybox
update to v1.25.0, therfore remove them from the appropriate places.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-09-24 14:38:20 +02:00
Piotr Dymacz
dc9172b65b ar71xx: update kernel config symbols
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-09-19 15:30:32 +02:00
Piotr Dymacz
2ad0ecc101 ar71xx: mark U-Boot and radio calibration data partitions as read-only
General convention is to keep U-Boot and radio calibration
data (ART) mtd partitions marked as read-only.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-09-19 15:30:32 +02:00
Matthias Schiffer
01e2024754
ar71xx: set region code of TP-Link TL-WDR3600/4300 to US
There are currently two stock firmwares for the TL-WDR3600/4300, a US and
a universal version. Both allow installing images with US region code, so
we don't need to provide multiple images.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-09-15 19:34:28 +02:00
Matthias Schiffer
b063faa2c8
ar71xx: separate TP-Link TL-WDR3600/4300/4310 profiles
Simplify modifying some of the images without affecting the others.

While we're at it, also unify the profiles to use := syntax and add "v1" to
the TL-WDR4300 name to make things more consistent.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-09-15 19:33:30 +02:00
Álvaro Fernández Rojas
d14c28fc80 kernel: update kernel 4.4 to version 4.4.20
Refresh patches for all targets that support kernel 4.4.
Compile-tested on brcm2708 only.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-09-15 08:10:55 +02:00
Mathias Kresin
61c2a7339a image: remove padding parameter from append-kernel/append-rootfs
Using pad-to instead of passing the optional padding to append-kernel
or append-rootfs. It could be that the value of a variable is passed.
In case the variable is empty no error is thrown.

Furthermore the purpose of the extra parameter is hard to get without
reading the code.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-09-13 19:36:41 +02:00
Mathias Kresin
1cd0a4c688 image: add KERNEL_SIZE to the default device vars
This reverts commit ec37a56587 and fixes
the underlying issue.
2016-09-13 19:36:41 +02:00
Daniel Gimpelevich
993ad29359 kernel: Backport pending appended DTB handling patches
Backport patches from upstream Linux kernel which are making the
kernel stores the appended dtb not in the same resisters as defined in
the UHI specification, use a separate variable on MIPS.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[some modifications]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-09-12 22:36:55 +02:00
Mathias Kresin
ec37a56587 ar71xx: fix typo in image build code
The kernel size isn't passed to the append-kernel build step and the
resulting image bricks the device.

Fixes FS#168.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-09-11 19:40:45 +02:00
Mathias Kresin
c1578d4fc9 cleanup ucidef_set_interface* usage
- quote the interface name
- remove call of not existing function
- remove the proto if it's the default proto

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-09-10 15:32:25 +02:00
Mathias Kresin
92eaf27c62 use immediate set in target Makefiles
No functional change, it's just to have the same style everywhere. This
way I don't need to use any regex magic to extract all subtargets for
compile tests.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-09-10 15:30:38 +02:00
Felix Fietkau
02a9a74d17 ar71xx: fix ethernet driver fast reset issue causing tx timeouts
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-09-03 22:50:28 +02:00
Matthias Schiffer
fa0096f6cc
ar71xx: generate US- and EU-specific images for the Archer C7 v2
TP-Link has started providing US- and EU-specific stock firmwares that only
allow upgrading to firmwares with the same region code. Provide factory
images for both these regions.

To avoid confusing users outside these regions, we still provide a
"universal" factory.bin without a region code, although flashing either of
the US and EU images would work as well.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-08-28 20:04:52 +02:00
Felix Fietkau
83997146e7 ar71xx: disable flow control to the built-in switch on AR934x
It apparently causes a regression on some devices if the ethernet cable
is plugged in while booting.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-08-25 11:54:31 +02:00
Jonas Gorski
8cf1d64f1c ar71xx: switch to 24kc
GCC treats 24kc and 34kc exactly the same and will generate identical
code, so there is no need to tune to 34kc instead of 24kc.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2016-08-23 11:55:32 +02:00
Stijn Tintel
8072264b96 kernel: update kernel 4.4 to version 4.4.19
Refresh patches for all targets that support kernel 4.4.
Compile-tested on all targets that use kernel 4.4 and aren't marked broken.
Runtime-tested on ar71xx, octeon and x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2016-08-23 10:51:17 +03:00
Piotr Dymacz
f478fba663 ar71xx: add support for Zbtlink ZBT-WE1526
Zbtlink ZBT-WE1526 is based on Qualcomm Atheros QCA9531 v2.
Short specification:

- 650/400/200 MHz (CPU/DDR/AHB)
- 5x 10/100 Mbps Ethernet
- 1x USB 2.0
- 128 MB of RAM (DDR2)
- 16 MB of FLASH
- 2T2R 2.4 GHz, up to 22 dBm
- two external, non-detachable antennas
- 8x LED, 1x button
- UART header (pinout: VCC, RX, TX, GND)

Flash instruction:

Use sysupgrade in vendor firmare which is based on OpenWrt.

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-08-18 09:49:18 +02:00
Chuanhong Guo
d1b20a3659 ar71xx: fix profile name of Mercury MW4530R
The mw4530r-v1 profile in tp-link.mk is for Mercury MW4530R.
There is no such a device called TL-WDR4530.
Also change MERCURY to Mercury in /lib/ar71xx.sh

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2016-08-15 15:18:35 +02:00
Felix Fietkau
6175115541 ar71xx: add missing LZO support select for routerboard devices
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-08-04 23:02:50 +02:00
Felix Fietkau
fb35ac857f ar71xx: remove useless minimal/ath5k profiles
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-08-02 13:51:13 +02:00
diizzyy
1bcad76395 ar71xx: Make wget2nand look for LEDE project firmware files
Make wget2nand aware of the new file names

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2016-07-26 08:39:36 +02:00
Felix Fietkau
63b525dd6b image: add a helper variable for getting kernel/rootfs from within image Build/* templates
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-31 12:25:25 +02:00
Jo-Philipp Wich
db49dd894e build: rename sysupgrade-nand to sysupgrade-tar
Now that the "sysupgrade-nand" step is used by non-NAND targets as well,
rename it to "sysupgrade-tar" to make it more generic.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-07-29 16:53:03 +02:00
Matthias Schiffer
adbbfb7ff9
ar71xx: don't use D-Link DIR-505 status LED as ethernet indicator
The stock firmware uses the single LED as status indicator only. Using the
same LED both for status and as ethernet indicator is uncommon, and has
been confusing users who were using the device as a WLAN mesh node (so the
LED was just off, as no ethernet was connected).

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-07-28 15:59:04 +02:00
Matthias Schiffer
500a67a167
ar71xx: add revision detection for D-Link DIR-505 A1/A2
The A1 image also works on the A2, correctly set AR71XX_MODEL in this case.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-07-28 15:44:52 +02:00