Commit graph

3169 commits

Author SHA1 Message Date
Felix Fietkau
83783f296a uboot-ar71xx: switch to using u-boot.mk
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 16:21:24 +01:00
Felix Fietkau
bfdc56d3a2 build: remove mips16 feature flag from target makefiles
It can be implicitly derived from the MIPS32 revision support in the
kernel configuration

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-24 13:15:01 +01:00
John Crispin
236fcedc51 Revert "ar71xx: wrt400n: lift size limit on kernel and rootfs part"
This reverts commit 78c2ec0f47.

The builders were failing with a segfault when generating the image

Signed-off-by: John Crispin <john@phrozen.org>
2017-01-20 06:43:13 +01:00
YuheiOKAWA
261415a660 ar71xx: add support for PQI Air Pen
SoC: AR9331
Ethernet x1, Wireless 2.4G, uSD card slot x1.
USB Power, include Li-Po Battery.

Signed-off-by: YuheiOKAWA <tochiro.srchack@gmail.com>

Changes in v2:
alphabetical ordering, tabs fron spaces.
2017-01-20 00:52:48 +01:00
Yousong Zhou
78c2ec0f47 ar71xx: wrt400n: lift size limit on kernel and rootfs part
While at it, convert to new build method

Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
2017-01-20 00:44:46 +01:00
Conor O'Gorman
274546046d ar71xx: add Abicom SC1750 support
Support Abicom International Scorpion SC1750 Board

QCA9550 700MHz Extended Temperature Range
256MB DDR2
256MB Nand Flash
16MB Nor Flash
1x SFP, 1x PCIe
2x 10/100/1000 Ethernet
135x100 mm
802.11ng/g/b
802.11ac/an/a

Signed-off-by: Conor O'Gorman <i@conorogorman.net>
2017-01-20 00:40:40 +01:00
Conor O'Gorman
d38ffd8cd9 ar71xx: add Abicom SC450 support
Support Abicom International Scorpion SC450 Board

QCA9550 700MHz Extended Temperature Range
256MB DDR2
256MB NAND Flash
16MB NOR Flash
10/100/1000 Ethernet
15W Max, 3x3 Mode, Full Power TX Power
802.3-at POE+ & DC Input options
100x 85mm
USB
PCIe
SFP
GPIO/LED

Signed-off-by: Conor O'Gorman <i@conorogorman.net>
2017-01-20 00:40:33 +01:00
Conor O'Gorman
eb97f41fc2 ar71xx: add Abicom SC300M support
Support Abicom International Scorpion SC300M Module

QCA9550 700MHz Extended Temperature Range
256MB DDR2
256MB Nand Flash
16MB SPI Flash
802.11a/na/b/g/ng
GPIO x 22, USB x2, PCIe x2
10/100/1000 Ethernet
23dBm, Optional Onboard Antenna
DC Input, 8-20V DC
85 x 55 mm

Signed-off-by: Conor O'Gorman <i@conorogorman.net>
2017-01-20 00:40:27 +01:00
Svetoslav Neykov
97b52593bc ar71xx: Chipidea USB device support
Changes the platform to use the Chipidea driver instead of the
generic USB host driver which has support for both host and
device modes (selected on boot).

The changes in 930-chipidea-pullup.patch are already in mainline.
I'll upstream 920-usb-chipidea-AR933x-platform-support.patch once I
can test the changes with a newer kernel.

Signed-off-by: Svetoslav Neykov <svetoslav@neykov.name>
2017-01-20 00:37:01 +01:00
Thibaut VARENE
29d0ac35bd ar71xx: mark soft_config mtd part as writeable for RB-941-2nD
The soft_config partition must be writeable for rbcfg to be able to
enact changes to the routerboot configuration.
The read-only flag was a mistake in the initial patch. Removing it
brings mach-rb941.c in line with all other RB platforms.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
2017-01-18 12:05:43 +01:00
Felix Fietkau
00144d2730 ar71xx: fix up the kernel config for the mikrotik subtarget
Limit enabled devices to routerboards, disable all other devices

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:13 +01:00
Cezary Jackiewicz
05115e9656 ar71xx: fix network config for Mikrotik RB411U
Mikrotik RB411U has only one ethernet port - eth0. This patch allows to create
correct config with one lan section.

Signed-off-by: Cezary Jackiewicz <cezary@eko.one.pl>
2017-01-16 20:40:12 +01:00
Thibaut VARENE
3f7841a70a ar71xx: add support for RB-941-2nD
Add full support for Mikrotik RB-941-2nD (hAP lite)

Original patch by Sergey Sergeev <adron@yapic.net> and
more information is available here:
https://wiki.openwrt.org/toh/mikrotik/rb941_2nd
I updated and adapted the patch to apply cleanly to LEDE trunk
and added proper numbering for the switch ports (matching case
labels).
Tested working on actual hardware with the information
provided in the above webpage. Sysupgrade works.

Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:12 +01:00
Felix Fietkau
9db9072d67 ar71xx: convert mikrotik routerboard support to UBI
Remove the wget2nand script, drop the need for manual installation,
use sysupgrade instead.

There are now two different NAND images, one for 64 MiB flashes, the
other for >= 128 MiB

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:12 +01:00
Felix Fietkau
0e547400fb ar71xx: create a proper default profile for the mikrotik subtarget, drop other profiles
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 20:40:12 +01:00
João Chaínho
ace9d1fb6f ar71xx: Detect USB port on Mikrotik RB750UP
The USB port on Mikrotik RB750UP isn’t detected. This patch provides a fix. Tested and working.

Signed-off-by: João Chaínho <joaochainho@gmail.com>
2017-01-15 17:43:14 +01:00
Felix Fietkau
1708644f19 kernel: backport MIPS changes introducing a separate IRQ stack
Prevents crashes when IRQs arrive when the current kernel stack context
already contains deeply nested function calls, e.g. when stacking lots
of network devices on top of each other

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-15 18:25:54 +01:00
Felix Fietkau
d6c77b9d99 ar71xx: default to external USB power on RB-912UAG
There's a GPIO that can switch between power to USB pins for the
internal MiniPCIe slot or the external USB port.
People are more likely to use the external one so enable it by default.
Existing configurations should be unaffected

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-13 10:53:05 +01:00
David Varga
d7fd1a0f8d ar71xx: enable serial console on Mikrotik RB411/RB433
This patch adds support for serial console on Mikrotik RB411 and RB433
series devices.

Signed-off-by: David Varga <duvi@duvinet.hu>
[picked from FS#377]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-13 08:32:20 +01:00
Felix Fietkau
e21cb649a2 ar71xx: disable sub-page writes on routerboard nand drivers
They seem to fail in tests using UBI, and are not used by yaffs2

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-11 13:10:19 +01:00
Felix Fietkau
b1dbe6028e ar71xx: fix legacy image build error
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-11 13:09:21 +01:00
Felix Fietkau
889272d92d ar71xx: fix RB4xx CPLD SPI device mode setup
Commit af79fdbe4a changed the code to use tx_nbits for dual SPI tx
transfers, however the SPI stack only allows this when the device mode
includes the relevant bit as well

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-11 13:02:11 +01:00
Felix Fietkau
c3a8b87773 ar71xx: fix RB4xx SPI driver mode bits
Accept SPI_TX_DUAL in device mode to fix the CPLD driver

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-11 13:02:11 +01:00
Stijn Tintel
0d3dc16931 ar71xx: drop references to madwifi
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Acked-by: Felix Fietkau <nbd@nbd.name>
2017-01-10 13:02:00 +01:00
Matthias Schiffer
1fef80f29c
ar71xx: add support for TP-Link WBS210/510
The devices are mostly identical to the CPE210/510, but use external
antennas.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-01-05 16:01:17 +01:00
Felix Fietkau
af79fdbe4a ar71xx: remove a non-upstream spi core patch
- use standard flags instead
- remove dead code from the rb4xx spi drivers

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-05 11:09:13 +01:00
Radek Dostál
3561d89ad6 ar71xx: RE450: enable building of TP-Link RE450
Signed-off-by: Radek Dostál <rd@radekdostal.com>
2016-12-22 14:50:06 +01:00
Tal Keren
9c475eca3e ar71xx: add support for TP-Link RE450
Add full support for TP-Link RE450.
The wireless SoC is similiar to Archer C7: QCA9558 + QCA9880 (pci).
The ethernet interface is AR8035, but the mdio is connected to the gpio and
the chipset builtin mdio bus isn't used, which is unique (and weird), so the
kernel gpio mdio module is used.
The two ethernet leds are connected to the GPIO, so they are both configured,
one to indicate link status and the other to indicate data transfer.

The generation of the image was added to the image Makefile.
The return value of tplink-safeloader is not ignored anymore (to fail on error)

The result factory image is flashable from the stock web ui.

Signed-off-by: Tal Keren <kooolk@gmail.com>
[rd@radekdostal.com: ar71xx: RE450: do not build RE450 for nand]
Signed-off-by: Radek Dostál <rd@radekdostal.com>
[hyniu@o2.pl: ar71xx: RE450: Renaming LED accordance with the standard]
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
[jo@mein.io: squash fixes from Radek and Henryk into original commit]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-22 14:50:05 +01:00
Radek Dostál
236fc232bb ar71xx: sort items in 11-ath10k-caldata alphabetically
Requested-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Radek Dostál <rd@radekdostal.com>
2016-12-22 14:50:05 +01:00
Tal Keren
0d9d980ecd firmware-utils: kernel image generator for TP-Link RE450
The firmware image that is used in TP-Link RE450 (and some more devices from
the RE series) is tplink-safeloader.
In the kernel partition, the kernel is compressed in a regular tp-link
firmware that is just used for booting. Since it is only used for compressing
and booting, only four fields are filled in the header:
Vendor, version, kernel load address and kernel entry point.
mktplinkfw-kernel is a simpler version of mktpolinkfw that generate such
images. It also specifies the hardware id (as it is in the product info
section), so when doing a sysupgrade - the existing code will check for
hardware compatibility.

Signed-off-by: Tal Keren <kooolk@gmail.com>
[rd@radekdostal.com: add build target to .../image/tp-link.mk]
Signed-off-by: Radek Dostál <rd@radekdostal.com>
2016-12-22 14:50:05 +01:00
Matthias Schiffer
324bdf3ecc
ar71xx: remove redundant -j from TL-WR1043ND v4 kernel build command
mktplinkfw ignores -j in combined mode, the EOF marker is added by
tplink-safeloader.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-12-21 23:29:00 +01:00
Ludwig Thomeczek
1a4d07c2c5
ar71xx: add support for TP-LINK WR1043ND v4
Signed-off-by: Ludwig Thomeczek <ledesrc@wxorx.net>
2016-12-20 14:38:48 +01:00
Matthias Schiffer
0495181529
ar71xx: rename mktplinkfw-initramfs to more generic mktplinkfw-combined
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-12-20 14:38:48 +01:00
Kevin Darbyshire-Bryant
79abb8f140 kernel: bump to 4.4.39
Bump & refresh patches for all 4.4 targets.

Compile & run tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2016-12-20 09:35:36 +01:00
David Lutz
aada15af93
ar71xx: add support for TP-LINK TL-WR940N v4
Signed-off-by: David Lutz <kpanic@hirnduenger.de>
2016-12-16 11:12:46 +01:00
Jo-Philipp Wich
98b14e0906 ar71xx: fix TL-WR842N v2 switch port order
The TL-WR842N v2 has the following switch port layout with swconfig port 0
being connected to eth1:

            Power  LAN4    LAN3    LAN2    LAN1    WAN     USB
             (*) | [...] | [...] | [...] | [...] | [...] | [.]
    swconfig port:   1       4       3       2      n/a
    netdev:        eth1    eth1    eth1    eth1    eth0

Adjust the board defaults to match this model specific layout.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-14 18:43:48 +01:00
Gad Krumholz
21cb84435a ar71xx: Added missing support for Linksys E2100L
It's based on the WRT160NL according to
https://wiki.openwrt.org/toh/linksys/e2100l

Based on research done here: https://forum.openwrt.org/viewtopic.php?id=24244
and here: https://forum.openwrt.org/viewtopic.php?pid=120791#p120791 this patch
was conceived.

Signed-off-by: Gad Krumholz <gad.krumholz@gmail.com>
[Jo-Philipp Wich: fix ordering, move addpattern change into separate commit]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-14 18:42:48 +01:00
Huan Truong
fd62fa752b ar71xx: Add support for Netgear WNR2000v1
This patch adds supports for the WNR2000v1 board with 4MB flash, and
produces device-specific factory, rootfs, and sysupgrade files for the
WNR2000v1. This board is errorneously claimed as supported on the OpenWRT
wiki as AP81, but AP81 image would not work because of APT81 image
requiring having 8MB of flash, while WNR2000v1 has only 4MB.

The image requires the u-boot bootloader to be modified to fuhry's
bootloader first.

Short specification:

- CPU: Atheros AR9132
- 4x 10/100 Mbps Ethernet, 1x WAN 10/100 Mbps
- 4 MB of Flash
- 32 MB of RAM
- UART header (J1) on board
- 1x button

Factory/Initial flash instructions:

- Set up a TFTP server on your local machine.
- Download the uImage for ar71xx-generic and the rootfs image for
  ar71xx-generic-wnr2000 and save in the tftp server root.
- Gain serial access to the router via the UART port (telnetenable over
  the network only won't work!).
- Upgrade the u-boot bootloader to fuhry's version by running the
  script: http://fuhry.com/b/wnr2000/install-repart.sh
- When the router restarts, interrupt u-boot and gain access to u-boot command line.
- Repartititon the board and flash initial uImage and rootfs as follow.

Commands to type in u-boot:

	# tells u-boot that we have a tftp server on 192.168.1.10
	setenv serverip 192.168.1.10

	# tells u-boot that the router should take the address 192.168.1.1
	setenv ipaddr 192.168.1.1

	# erase the region from 0x050000-0x3f0000
	erase 0xbf050000 +0x3A0000

	# loads sqfs.bin on TFTP server, and put it to memory address 0x81000000
	tftpboot 0x81000000 sqfs.bin
	# it will tell you the length of sqfs.bin in hex, let's say ZZZZZZ
	# copy bit by bit 0xZZZZZZ bytes from offset 0x050000
	cp.b 0x81000000 0xbf050000 0xZZZZZZ

	# same to the uImage.bin, write it right next to sqfs.bin
	# again, 0xYYYYYY is the length that tftpboot reports
	tftpboot 0x81000000 uImage.bin
	cp.b 0x81000000 0xbf2a0000 0xYYYYYY

	# We need to tell the kernel what board it is booting into, and where to find the partitions
	setenv bootargs "board=WNR2000 console=ttyS0,115200 mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,3712k(firmware),64k(art)ro rootfstype=squashfs,jffs2 noinitrd"

	# Tell u-boot where to find the uImage
	setenv bootcmd "bootm 0xbf2a0000"

	# Tell u-boot to save parameters to the u-boot-env partitions
	saveenv

	# Reset the board
	reset

Tested on:

- WNR2000v1 board.
- Initial flash works.

Known bugs:

- I don't know why factory image doesn't work on initial flash on stock
  firmware in u-boot recovery mode while it should.
- Sysupgrade does not yet work, if you do -f it will mess up your
  installation (requiring a reinstall of sqfs and uImage).

Signed-off-by: Huan Truong <htruong@tnhh.net>
2016-12-14 10:37:01 +01:00
Jing Lin
c9a9f9b8ce ar71xx: Add ath10k-firmware-qca988x for DomyWifi DW33D
The default package selection was missing the correct FW for ath10k to
work.

Signed-off-by: Jing Lin <mumuqz@163.com>
2016-12-14 10:37:01 +01:00
Kevin Darbyshire-Bryant
f5b833b8fe kernel: bump to 4.4.38
Bump & refresh patches for all 4.4 supported targets.

Compile & run tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2016-12-13 08:28:28 +01:00
Matthias Schiffer
fcf54f79d2
ar71xx: simplify model detection for TP-Link Pharos devices
This also makes the detection more flexible, as it doesn't need to check
for each model explicitly.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-12-12 13:45:37 +01:00
Felix Fietkau
8f23ec609c ar71xx: remove obsolete flash chip locking code
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-12 10:22:19 +01:00
Felix Fietkau
a5923cd549 ar71xx: remove PB92 reference design board support
Due to flash size limitations, support for this board has not been
functional for years

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-12 10:22:18 +01:00
Felix Fietkau
30285facbe ar71xx: remove AP113 reference design board support
Due to flash size limitations, support for this board has not been
functional for years

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-12 10:22:18 +01:00
Felix Fietkau
4c8a9b8e39 ar71xx: remove AP81 reference design board support
This board is very old and unlikely to still be relevant today.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-12 10:22:18 +01:00
Felix Fietkau
fd95dec2e3 ar71xx: remove obsolete duplicate driver source file
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-12 10:22:18 +01:00
Felix Fietkau
441ee62931 ar71xx: remove AP83 reference design board support
This board is very old and unlikely to still be relevant today. Support
for it contains a significant amount of device specific baggage which is
worth getting rid of.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-12 10:22:18 +01:00
Felix Fietkau
fa04682f21 ar71xx: clean up spi controller related patches
Remove various hacks for fast read, un-break device tree support

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-12 10:22:17 +01:00
Piotr Dymacz
c198ca682c ar71xx: add support for YunCore SR3200 and XD3200
YunCore SR3200 is a dual-band AC1200 router, based on Qualcomm/Atheros
QCA9563+QCA9882+QCA8337N.

YunCore XD3200 (FCC ID: 2ADUG-XD3200) is a dual-band AC1200 ceiling mount
AP with PoE support, based on Qualcomm/Atheros QCA9563+QCA9882+QCA8334.

Common specification:

- 775/650/258 MHz (CPU/DDR/AHB)
- 128 MB or RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2T2R 2.4 GHz, with ext. PA (SKY65174-21), up to 30 dBm
- 2T2R 5 GHz, with ext. PA (SKY85405-11) and LNA (SKY85601-11), up to 30 dBm

SR3200 specification:

- 5x 10/100/1000 Mbps Ethernet
- 6x ext. RP-SMA antennas (actually, only 4 are connected with radio chips)
- 3x LED (+ 5x LED in RJ45 sockets), 1x button
- UART header on PCB

XD3200 specification:

- 2x 10/100/1000 Mbps Ethernet, with 802.3at PoE support (WAN port)
- 4x internal antennas
- 3 sets of LEDs on external PCB (+ 2x LED near RJ45 sockets), 1x button
- UART and JTAG (custom 6-pin, 2 mm pitch) headers on PCB

LED for 5 GHz WLAN is currently not supported on both devices as it is
connected directly to the QCA9882 radio chip.

Flash instruction under vendor firmware, using telnet/SSH:

1. If your firmware does not have root password, go to point 5
2. Connect PC with 192.168.1.x address to LAN or WAN port
3. Power up device, enter failsafe mode with button (no LED indicator!)
4. Change root password and reboot (mount_root, passwd ..., reboot -f)
5. Upload lede-ar71xx-...-sysupgrade.bin to /tmp using SCP
6. Connect PC with 192.168.188.x address to LAN port, SSH to 192.168.188.253
7. Invoke:
- cd /tmp
- fw_setenv bootcmd "bootm 0x9fe80000 || bootm 0x9f050000"
- mtd -e firmware -r write lede-ar71xx-...-sysupgrade.bin firmware

Flash instruction under U-Boot, using UART:

1. tftp 0x80060000 lede-ar71xx-...-sysupgrade.bin
2. erase 0x9f050000 +$filesize
3. cp.b $fileaddr 0x9f050000 $filesize
4. setenv bootcmd "bootm 0x9fe80000 || bootm 0x9f050000"
5. saveenv && reset

Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
2016-12-12 09:57:40 +01:00
Matthias Schiffer
9c5af2489a
ar71xx: fix LEDs and sysupgrade support for TL-WA801ND v3
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2016-12-06 19:08:35 +01:00