We completely overlooked whitespace errors when reviewing
796ad2f7ef ("ath79: add support for D-Link DIR-842 C3").
Fix them and and also fix Makefile indent for C1/C2.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This is a dual band 11a/11n router with 1x wan and 4x gig lan ports.
There are two versions of this router which can be identified through
the factory web interface, v1 has 128mb ram and a uboot size of 128k,
v2 has 256mb ram and a uboot size of 256k, the remaining hardware and
PCB markings are the same.
Short specification:
SoC: Qualcomm Atheros QCA9558 - 720 MHz
Switch: Atheros AR8327
Second radio : Qualcomm Atheros QCA9880 802.11ac
4 LAN/1 WAN 1000Mps Ethernet
256 MB of RAM (DDR2)
16 MB of FLASH
3x2.4 GHz, 3x5GHz antennas
Steps to install :
Option A : Use vendor UI
Option B (if A is not working) :
(a) Download 'backup' from vendor UI and rename it backup.tar.gz
(b) Open the archive, and update the root password in /etc/shadow by
'$1$9wX3HGfB$X5Sb3kqzzBLdKRUR2kfFd0'
(c) 'Restore' from the archive using the vendor UI. Root password is now
'aaa'
(d) Scp the firwmware to the device:
$ scp <openwrt-sysupgrade>.bin root@192.168.1.1:/
(d) ssh to the device and flash the firmware:
$ cd /
$ mtd -e firmware -r write <openwrt-sysupgrade>.bin firmware
Signed-off-by: Gareth Parker <gareth41@orcon.net.nz>
Signed-off-by: Ding Tengfei <dtf@comfast.cn>
Signed-off-by: Joan Moreau <jom@grosjo.net>
[reformatted commit message]
Signed-off-by: David Bauer <mail@david-bauer.net>
Taken code from https://patchwork.ozlabs.org/patch/884850/ that was never
pushed by the author, and adapted to ath79.
The Comfast E314N-V2 is a 2.4 GHz 2x2 radio with a built-in directional
antenna and a second Ethernet port - very similar to the Ubiquiti
NanoStation M2. The Ethernet port features a pass-through PoE capability,
enabled or disabled with a slide switch.
Specifications :
- System-On-Chip: Qualcomm/Atheros QCA9531
- CPU/Speed: 650 MHz
- Flash size: 8 MiB
- RAM: 64 MiB
- 2 Ethernet 1Gbp
- 1 reset button
- 1 switch to choose PoE from LAN or Wan. 48Vdc
- Wifi 2.4 Ghz (b/g/n)
- UART inside the box (3.3V, pins marked on the PCB)
Firmware can be flashed on these units by the following method:
1.) Apply power to the unit
2.) Immediately AFTER applying power, hold down the reset button
3.) The WAN, LAN, and wireless lights will flash - wait three seconds
(three flashes) and then release the button.
4.) After a second, the lights will flutter quickly and the unit will be
visible at 192.168.1.1. A web page will be available to enable quick
and simple uploading and flashing of firmware.
During the boot process, these units also look for a tftp server at
192.168.1.10. If one is present, the firmware can be uploaded as a file
called firmware-auto.bin
Signed-off-by: Joan Moreau <jom@grosjo.net>
[wrapped commit message - fix commit title capitalization]
Signed-off-by: David Bauer <mail@david-bauer.net>
HiWiFi HC5761A is an "MT7628AN variant" of HC5761
Specifications:
- MediaTek MT7628AN 580MHz
- 128 MB DDR2 RAM
- 16 MB SPI Flash
- 2.4G MT7628AN 802.11bgn 2T2R 300Mbps
- 5G MT7610EN 802.11ac 433Mbps
- 3x 10/100 Mbps Ethernet
Flash instruction:
1. Get SSH access to the router
2. SSH to router with `ssh -p 1022 root@192.168.199.1`, The SSH password is the same as the webconfig one
3. Upload OpenWrt sysupgrade firmware into the router's `/tmp` folder with SCP
4. Run `mtd write /tmp/<filename> firmware`
5. reboot
Known bug:
- SD slot does not work (See PR 1500)
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
HC5661A:
- Fix pinctrl
- Fix image size (15808k)
- Use switch trigger for WAN LED
Both:
- Use tpt LED trigger for wireless
- Explicitly disable USB nodes
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
HiWiFi has several MT7628AN routers which have similar specs
Add HC5X61A.dtsi to include them, like HC5X61.dtsi (for MT7620A)
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
Specifications:
- SoC: AR9341
- RAM: 64M
- Flash: 16M
- Ethernet: 1 * FE port
- WiFi: ar934x-wmac
- Sound: WM8918 DAC
1 * 3.5mm headphone jack
2 * RCA connectors for speakers
1 * SPDIF out
- USB: 1 * USB2.0 port
Flash instruction:
Upload generated factory image via vendor's web interface.
Notes:
A. Audio stuff:
1. Since AR934x, all pins for peripheral blocks can be mapped to
any available GPIOs. We currently don't have a PCM/I2S driver
for AR934x so pinmux for i2s and SPDIF are bound to i2c gpio
node. This should be moved into I2S node when a PCM/I2S driver
is available.
2. The i2c-gpio node is for WM8918. DT binding for it can't be added
currently due to a missing clock from I2S PLL.
B. Factory image:
Image contains a image header and a tar.gz archive.
1. Header: A 288 byte header that has nothing to do with appended
tarball. Format:
0x0-0x7 and 0x18-0x1F: magic values
0x20: Model number string
0xFC: Action string. It's either "update" or "backup"
0x11C: A 1 byte checksum. It's XOR result of 0x8-0x11B
Firmware doesn't care about the rest of the header as long as
checksum result is correct.
The same header is used for backup and update routines so the
magic values and model number can be obtained by generating a
backup bin and grab values from it.
2. Tarball: It contains two files named uImage and rootfs, which
will be flashed into corresponding mtd partition.
Writing a special utility that can only output a fixed binary
blob is overkill so factory image header is placed under
image/bin instead.
C. LED
The wifi led has "Wi-Fi" marked on the case but vendor's firmware
used it as system status indicator. I did the same in this device
support patch.
D. Firmware
Factory u-boot is built without 'savenv' support so it's impossible
to change kernel offset. A 2MB kernel partition won't be enough in
the future. OKLI loader is used here to migrate this problem:
1. add OKLI image magic support into uImage parser.
2. build an OKLI loader, compress it with lzma and add a normal
uImage header.
3. flash the loader to where the original kernel supposed to be.
4. create a uImage firmware using OKLI loader.
5. flash the created firmware to where rootfs supposed to be.
By doing so, u-boot will start OKLI loader, which will then load
the actual kernel at 0x20000.
The kernel partition is 2MB, which is too much for our loader.
To save this space, "mtd-concat" is used here:
1. create a 64K (1 erase block) partition for OKLI loader and
create another partition with the left space.
2. concatenate rootfs and this partition into a virtual flash.
3. use the virtual flash for firmware partition.
Currently OKLI loader is flashed with factory image only.
sysupgrade won't replace it. Since it only has one function
and it works for several years, its unlikely to have some bugs
that requires a replacement.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
This adds support for uImage used by OpenWrt kernel loader.
The parser searches for uImage header at flash eraseblock boundary
and it might attempt to split any firmware with loader, therefore
this entry doesn't have MTD_PARSER_TYPE_FIRMWARE so that this parser
is only used when explicitly defined in dts.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Hardware spec of DIR-842 C3:
SoC: QCA9563
DRAM: 128MB DDR2
Flash: 16MB SPI-NOR
Switch: QCA8337N
WiFi 5.8GHz: QCA9888
WiFi 2.4Ghz: QCA9563
USB: circuit onboard, but components are not soldered
Flash instructions:
1. Upgrade the factory.bin through the factory web interface or
the u-boot failsafe interface.
The firmware will boot up correctly for the first time.
Do not power off the device after OpenWrt has booted.
Otherwise the u-boot will enter failsafe mode as the checksum
of the firmware has been changed.
2. Upgrade the sysupgrade.bin in OpenWrt.
After upgrading completes the u-boot won't complain about the
firmware checksum and it's OK to use now.
3. If you powered off the device before upgrading the sysupgrade.bin,
just upgrade the factory.bin through the u-boot failsafe interface
and then goto step 2.
Signed-off-by: Perry Melange <isprotejesvalkata@gmail.com>
According to detective grep, with this patch all devices should
be labelled "TP-Link" consistently.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This seems to be identical to CPE210 v1 despite having removable
antennas.
Specifications:
* SoC: Qualcomm Atheros AR9344 (560 MHz)
* RAM: 64MB
* Storage: 8 MB
* Wireless: 2.4GHz N based built into SoC 2x2
* Ethernet: 2x 100/10 Mbps, integrated into SoC, 24V POE IN
Installation:
Flash factory image through stock firmware WEB UI
or through TFTP:
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP address:192.168.0.254
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
TP-Link CPE510-v1 is an outdoor wireless CPE for 5 GHz with
two Ethernet ports based on Atheros AR9334
Specifications:
- 560/450/225 MHz (CPU/DDR/AHB)
- 2x 10/100 Mbps Ethernet, 1x PoE-in, 1x PoE-out
- 64 MB of DDR2 RAM
- 8 MB of SPI-NOR Flash
- 2T2R 5 GHz
- 13 dBi built-in antenna
- Power, LAN0, LAN1 green LEDs
- 4x green RSSI LEDs
Flash factory image through stock firmware WEB UI
or through TFTP:
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP address:192.168.0.254
Based on the work of Paul Wassi <p.wassi@gmx.at>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Specifications:
* SoC: Qualcomm Atheros AR9344 (560 MHz)
* RAM: 64MB
* Storage: 8 MB
* Wireless: 2.4GHz N based built into SoC 2x2
* Ethernet: 2x 100/10 Mbps, integrated into SoC, 24V POE IN
Installation:
Flash factory image through stock firmware WEB UI
or through TFTP:
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP address:192.168.0.254
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
The loader-okli is shared by several TP-Link CPExxx devices, so
give it its own definition to prevent too much code duplication.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This puts some common code into a new shared DTSI. Common nodes
are chosen so that the new DTSI can be used for CPE210 v1, too.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This is a preparation for ath79 support of the CPE210/CPE510 v1.
Kernel size is chosen equal to the latest update for CPE610 v1.
This also updates the partition size in ar71xx target, so code
remains consistent if someone looks up the device. Since CPE210,
CPE510, WBS210 and WBS510 (all v1) share the same partition
layout definition, and are on deprecated target anyway, this
changes them all at once.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This parser's matching function appears to be too generic as it matches
e.g. Buffalo WZR-HP-G300NH. That results in incorrect parts parsing.
Luckily this parser is needed by Fon FON2601 only which uses DT-based
ramips target. It means we can depend on mtd subsystem matching of
"fonfxc,uimage" string.
That said triggering this parser based on the "firmware" (or whatever
MTD_SPLIT_FIRMWARE_NAME is) partiiton name is not needed. It can be
dropped which will automatically fix the Buffalo WZR-HP-G300NH case.
Fixes: a1c6a316d2 ("ramips: add support for Fon FON2601")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This reverts commit e92a14709d.
mtdsplit_uimage_parse_fonfxc() gets called in two situations:
1) It was /requested/ from DT using "fonfxc,uimage" compatible string
2) It was called by parsing code after finding "firmware"
(MTD_SPLIT_FIRMWARE_NAME) due to the parser's type
Code added in the /fix/ commit basically just disabled the second case.
If that's the real goal it could be achieved by simply dropping type
MTD_PARSER_TYPE_FIRMWARE. It may however require another solution as
it's possible that some non-DT target actually needs fonfxc uImage
parsing.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
These legacy bindings were removed long time ago from dts, so there's no
need to keep support for them.
Spotted-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
This commit fixes regression on Linksys WRT1900 (Mamba) where this device
doesn't have USB 3.0 controller integrated in SoC, instead it has Etron
EJ168 connected to PCIe lane. Previously enabled in kernel 4.4 and 4.9,
was lost in transition to 4.14.
Fixes: 4ccad92 ("mvebu: Add support for kernel 4.14")
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
This is already enabled as kernel built-in feature in mvebu target and
none other target will use it.
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
WLAN0 and the unused LED are currently swapped. Fix this, so the LED
behavior matches the other OCEDo devices.
Signed-off-by: David Bauer <mail@david-bauer.net>
This adds support for several TP-Link devices based on TP9343
("a QCA9561 without PCIe and USB"):
- TL-WR940N v3
- TL-WR940N v4
- TL-WR941ND v6
The devices are only different concerning LEDs and MAC address
assignment.
All TL-WR940 are with non-detachable antennas (N), all
TL-WR941 devices are with detachable antennas (ND).
Specification:
- 750 MHz CPU
- 32 MB of RAM
- 4 MB of FLASH
- 2.4 GHz WiFi
- 4x 10/100 Mbps Ethernet
Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.
Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to * (see below)
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.
* TFTP image names:
940 v3: wr941ndv6_tp_recovery.bin
940 v4: wr940nv4_tp_recovery.bin
941 v6: wr941ndv6_tp_recovery.bin
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Hardware spec of DIR-842 C1:
SoC: QCA9563
DRAM: 128MB DDR2
Flash: 16MB SPI-NOR
Switch: QCA8337N
WiFi 5.8GHz: QCA9888
WiFi 2.4Ghz: QCA9563
USB: circuit onboard, but components are not soldered
Flash instructions:
1. Upgrade the factory.bin through the factory web interface or
the u-boot failsafe interface.
The firmware will boot up correctly for the first time.
Do not power off the device after OpenWrt has booted.
Otherwise the u-boot will enter failsafe mode as the checksum
of the firmware has been changed.
2. Upgrade the sysupgrade.bin in OpenWrt.
After upgrading completes the u-boot won't complain about the
firmware checksum and it's OK to use now.
3. If you powered off the device before upgrading the sysupgrade.bin,
just upgrade the factory.bin through the u-boot failsafe interface
and then goto step 2.
Signed-off-by: Jackson Lim <jackcolentern@gmail.com>
[fix whitespace issues]
Signed-off-by: David Bauer <mail@david-bauer.net>
This router has the same hardware as TP-LINK TL-WR841N/ND v11 (same
FCC ID, same TFTP image name...).
Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.
Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to wr841nv11_tp_recovery.bin
(it's really v11, not v12)
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
The TL-WR841N/ND v10 is mostly identical to the v9. Apart from some minor
changes, it contains a newer revision of the QCA9533 SoC and the CPU clock
is significantly higher.
Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.
Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to wr841nv10_tp_recovery.bin
3. Start a tftp server with the image file in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
In commit 6c937df749 ("ar71xx: wpj531: fix GPIOs for LED") wrong GPIO
13 for SIG1/RSS1 LED was commited, the correct GPIO number for this LED
is 12.
It's listed in "Hardware Guide - wpj531 7A06 (02/07/2019)" as GPIO12/RSS1
on the LED header and same GPIO 12 is used in the vendor's SDK as well.
Fixes: 6c937df749 ("ar71xx: wpj531: fix GPIOs for LED")
Signed-off-by: Leon M. George <leon@georgemail.eu>
[commit subject/message facelift]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
We cannot distinguish between fonfxc uImage and generic uImage because
fonfxc uImage header is almost same as generic uImage, except padding
length after image name.
The fonfxc uImage parser is available when specifying directly with DT
compatible property. So this patch adds check if the partition DT node
is compatible with the parser.
Ref: https://bugs.openwrt.org/index.php?do=details&task_id=2413
Fixes: a1c6a316d2 ("ramips: add support for Fon FON2601")
Signed-off-by: NOGUCHI Hiroshi <drvlabo@gmail.com>
[commit light touches and removed C code comment]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
When CONFIG_ARM64_MODULE_PLTS=y, arch/arm64/kernel/module.lds is
required to build cryptodev-linux. This updates the sdk to include this
file.
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
Splits up DEVICE_TITLE into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT.
Fixes https://github.com/openwrt/openwrt/pull/2245
Signed-off-by: Moritz Warning <moritzwarning@web.de>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
The DEVICE_TITLE introduced in 66458c49aa ("mediatek: add
v4.19 support") is mistyped. Fix it.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
The [devm_]mdiobus_alloc[_size()] functions are creating
the array of interrupt numbers as well as initializing
them to POLLING.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
The MDIO node will become more important in the future.
Hence, this patch adds DT labels to make the properties
inside the various subnodes more accessible.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Bump the target to v4.19. Add a patch with additional eth driver
fixes/features that MTK provided aswell as the driver for the new mt7530
switch.
Signed-off-by: John Crispin <john@phrozen.org>
The Aerohive HiveAP 121 has the wrong PLL value set for Gigabit speeds,
leading to packet-loss. 10M and 100M work fine.
This commit sets the Gigabit Ethernet PLL value to the correct value,
fixing packet loss.
Confirmed with iperf and floodping.
Signed-off-by: David Bauer <mail@david-bauer.net>
commit e09da0169a ("ar71xx: fix Mikrotik board detection")
was generated based on testing a rb-912 board, on which detection failed.
Testing on more hardware shows something fun:
machine : MikroTik RouterBOARD 922UAGS-5HPacD
machine : Mikrotik RouterBOARD 912UAG-5HPnD
Both lowercase and uppercase are used.
So ensure we support both now ..
Fixes: e09da0169a ("ar71xx: fix Mikrotik board detection")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
While flashing lots of RB2011 devices, I noticed that
some of them refused to boot properly, failing over the NAND parameters.
Checking in detail shows that some device seem to use another NAND flash
which only support standard 2048-byte pages, without 512-byte subpage support.
This commit disables usage of these small subpage completely.
Advantages:
- Both NAND's with(out) subpage support are working now
- The nand speed increases a bit (measured roughly 1%) in typical usecases
Disadvantages:
- The maximum storage capacity decreases by ~0.2%
as small changes can consume a full page (2048 bytes) now.
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
- add uart rom script address in header of sdma firmware to support
the uart driver of latest kernel working well while old firmware
assume ram script used for uart driver as NXP internal legacy
kernel.
- add multi-fifo SAI/PDM scripts.
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
This commit ports support for the ALFA Network AP121F, a pocket-size
router with 1 Ethernet and 2.4 GHz WiFi based on the AR9331 SoC, to the
ath79 target (it was already supported in ar71xx; see commit 0c6165d2
for more details).
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
[pepe2k@gmail.com: fixed GPIO polarity, included USB support, changed
DTS nodes order, moved WLAN LED trigger define to DTS, made U-Boot env
partition writable]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
This commit selects wpad-basic for the FRITZ!Box 7312 and 7412 as
wpad-mini is only selected on boards with small flash.
Signed-off-by: Johann Neuhauser <johann@it-neuhauser.de>
[add short description]
Signed-off-by: David Bauer <mail@david-bauer.net>
Fix a typo in the machine type being extracted from /proc/cpuinfo
which causes all Mikrotik board to be undetected properly.
This lead to sysupgrade issues and probably some others too.
Fixes: acf2b6c888 ("ar71xx: base-files: fix board detect on new MikroTik devices")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
The lines-initial-states property was an early attempt to set the latch
bit of the shift register on driver probe. It is not implemented in the
driver and was rejected upstream. The latch bit was always set by a GPIO
hog, so this property is safe to drop.
Signed-off-by: David Bauer <mail@david-bauer.net>
There's an empty case in 02_network introduced by last commit. Drop it.
Fixes: ee650ba46c ("ramips: remove needless setting of lan_mac to eth0 in 02_network")
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
This removes superfluous lines like
lan_mac=$(cat /sys/class/net/eth0/address)
Since lan_mac only sets the MAC address for eth0.1, these lines
can be safely removed as the address will be inherited from eth0
anyway.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
The vast majority of devices labels "factory" partition with lower
case. Convert the small fraction with capital letter to that and
merge another case in 02_network.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This just merges some duplicate definitions and consolidates lines.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Chuanhong Guo <gch981213@gmail.com> [merge duplicated
cases for phicomm k2p]
This cosmetical patch is just meant to make comparing/checking
IMAGE_SIZE values easier.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
There are frequent examples of the ralink_default_fw_size_xxx
variables being used to "roughly" set flash size without caring
about the actual size of the firmware partition.
To discourage this behavior, this patch removes the variables and
just sets IMAGE_SIZE by its numeric value for each target.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Currently, ramips target defines 0x7b0000 as default IMAGE_SIZE
for all devices in ramips target, i.e. this will be set if a
device does not specify IMAGE_SIZE itself.
From 92 devices using that default due to a "missing" IMAGE_SIZE,
14 were incorrect by a small amount (i.e. still "8M" flash) and
12 were completely off ("16M", "4M", ...).
This patch thus removes the _default_ IMAGE_SIZE and defines
IMAGE_SIZE for each device individually. This should indicate to
people supporting new devices that this parameter has to be cared
about.
For the present code, this patch is cosmetical.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This fixes IMAGE_SIZE for all devices based on the partition size
given in DTS:
DEVICE *.MK *.DTS VERDICT
airlink101_ar670w (4M) 0x3c0000 wrong
airlink101_ar725w - 0x3B0000 wrong
asus_rt-n15 (4M) 0x3b0000
belkin_f5d8235-v1 7744k 0x7b0000 wrong
buffalo_wli-tx4-ag300n (4M) 0x3b0000
buffalo_wzr-agl300nh (4M) 0x3b0000
dlink_dap-1522-a1 3801088 0x3a0000
ralink_v11st-fe (4M) 0x003b0000
asus_rt-n56u - 0x007b0000 default
belkin_f9k1109v1 7224k 0x7a0000 wrong
dlink_dir-645 - 0x7b0000 default
edimax_br-6475nd 7744k 0x00790000
loewe_wmdr-143n - 0x7b0000 default
omnima_hpm 16064k 0x00fb0000
samsung_cy-swr1100 - 0x7b0000 default
sitecom_wlr-6000 7244k 0x713000
trendnet_tew-691gr - 0x007b0000 default
trendnet_tew-692gr - 0x007b0000 default
No verdict means that the device is correctly set.
Legend:
( ): Value is set via ralink_default_fw_size_xxM
[ ]: Value is derived from parent definition
- : Value is not set and derived from default definition
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
In ramips, there are the following predefined values for IMAGE_SIZE
ralink_default_fw_size_4M 3866624 3776k 0x3B0000
ralink_default_fw_size_8M 8060928 7872k 0x7B0000
ralink_default_fw_size_16M 16121856 15744k 0xF60000
ralink_default_fw_size_32M 33226752 32448k 0x1FB0000
Out of those, the "16M" value is obviously odd, as it provides more
room for the remaining partitions than the tree others.
Of the devices in all subtargets, there are actually > 50 that have
a firmware partition with 0xFB0000 size, while only 5 (!) have
0xF60000. From the former, many are set to
ralink_default_fw_size_16M anyway, although it is wrong at the
present point.
Consequently, it makes sense to change ralink_default_fw_size_16M
to 0xFB0000, and to update IMAGE_SIZE for the 5 devices with
0xF60000.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
allnet_all0256n-4m, tenda_w150m and unbranded_wr512-3gn-4m have
their firmware partition set to reg = <0x50000 0x3c8000>.
However, based on the 4MB flash, the size should be 0x3b0000.
After some research in the target's history, it looks like the
changed size has been a mistake when transferring device
partitions from Makefile to DTS in 770b28f146.
This patch changes the named three devices back to 0x3b0000.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Like most mt7621 boards, Phicomm K2P stores LAN/WAN mac addresses
at 0xe000/0xe006 of factory partition.
Phicomm uses lan_mac-1 as wan_mac, while our default case in 02_network
uses lan_mac+1.
Add a special case reading lan/wan mac address for Phicomm K2P.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Now that the mt76 driver supports the MT7615D chip found on these
devices, use it.
Also add the wpad-basic package.
Note: the driver supports operation on both the 2.4 GHz and the
5 GHz bands, but not yet concurrently.
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
savedscp is a method of storing the DSCP of an ip packet into conntrack
mark. In combination with a suitable tc filter action (conndscp but may
end up being integrated into connmark) DSCP values are able to be stored
on egress and restored on ingress across links that otherwise alter or
bleach DSCP.
This is useful for qdiscs such as CAKE which are able to shape according
to policies based on DSCP.
Ingress classification is traditionally a challenging task since
iptables rules haven't yet run and tc filter/eBPF programs are pre-NAT
lookups, hence are unable to see internal IPv4 addresses as used on the
typical home masquerading gateway.
The ingress problem is solved by the tc filter, but the tc people didn't
like the idea of tc setting conntrack mark values, though they are ok
with reading conntrack values and hence restoring DSCP from conntrack
marks.
x_tables CONNMARK with the new savedscp action solves the problem of
storing the DSCP to the conntrack mark.
It accepts 2 parameters. The mark is a 32bit value with usually one 1
bit set. This bit is set when savedscp saves the DSCP to the mark.
This is useful to implement a 'one shot'
iptables based classification where the 'complicated' iptables rules are
only run once to classify the connection on initial (egress) packet and
subsequent packets are all marked/restored with the same DSCP. A mark
of zero disables the setting of a status bit/s.
The mask is a 32bit value of at least 6 contiguous bits and represents
the area where the DSCP will be stored.
e.g.
iptables -A QOS_MARK_eth0 -t mangle -j CONNMARK --savedscp-mark 0xfc000000/0x01000000
Would store the DSCP in the top 6 bits of the 32bit mark field, and use
the LSB of the top byte as the 'DSCP has been stored' marker.
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
All leds on these boards are green. v1 has RFKILL GPIO 23 for production
units (it had GPIO 13 only for test phase units, and these are rather
very rare to find). As for the previous attempt to fix this and revert
due to WDR boards have blue leds, it was wrong: WDR board does not use
common setup (false).
Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Base address for USB0 has changed from 0x18116c94 on AR934X
to 0x18116d94 on QCA9558. CP Typo remained for years here...
Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
Change capitalization from spaces to tabs in order to match
the style of the file.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[fix capitalization in commit title, add short description]
Signed-off-by: David Bauer <mail@david-bauer.net>
Hardware spec of DIR-842 C2:
SoC: QCA9563
DRAM: 128MB DDR2
Flash: 16MB SPI-NOR
Switch: QCA8337N
WiFi 5.8GHz: QCA9888
WiFi 2.4Ghz: QCA9563
USB: 2.0
Flash instructions:
1. Upgrade the factory.bin through the factory web interface or
the u-boot failsafe interface.
The firmware will boot up correctly for the first time.
Do not power off the device after OpenWrt has booted.
Otherwise the u-boot will enter failsafe mode as the checksum
of the firmware has been changed.
2. Upgrade the sysupgrade.bin in OpenWrt.
After upgrading completes the u-boot won't complain about the
firmware checksum and it's OK to use now.
3. If you powered off the device before upgrading the sysupgrade.bin,
just upgrade the factory.bin through the u-boot failsafe interface
and then goto step 2.
Signed-off-by: Jackson Lim <jackcolentern@gmail.com>
[Reword reset-hog comment, fix formatting]
Signed-off-by: David Bauer <mail@david-bauer.net>
Newifi D1 is shipped with an 8GB microSD card in its SD slot
Without SD driver users would not be able to use it unless manually installed
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
1) nand_do_upgrade() is always called by a target code
2) nand_do_upgrade() starts with calling platform_nand_pre_upgrade()
It means there is no need for the platform_nand_pre_upgrade() callback
at all. All code that was present there could bo moved & simplly called
by a target right before the nand_do_upgrade().
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
1) RAMFS_COPY_BIN and RAMFS_COPY_DATA can be defined at top of the file
like it's done for all other targets.
2) fw_printenv.lock can be created one step later in the
platform_do_upgrade(). It seems to be working well on many other
targets.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This updates mac80211 to version 5.2-rc7, this contains all the changes
to the wireless subsystem up to Linux 5.2-rc7.
* The removed patches are applied upstream
* b43 now uses kmod-lib-cordic
* Update the nl80211.h file in iw to match backports version.
* Remove the two backports from kernel 4.9, they were needed for mt76,
but that can use the version from backports now, otherwise they
collide and cause compile errors.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
TP-Link Archer C60 v2 is a dual-band AC1350 router,
based on Qualcomm/Atheros QCA9561 + QCA9886.
Specification:
- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB
Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.
Flash instruction (TFTP):
1. Set PC to fixed IP address 192.168.0.66
2. Download *-factory.bin image and rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root
directory
4. Turn off the router
5. Press and hold reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time the firmware should
be transferred from the tftp server
8. Wait ~30 second to complete recovery
Flash instruction (under U-Boot, using UART):
tftp 0x81000000 ...-sysupgrade.bin
erase 0x9f030000 +$filesize
cp.b $fileaddr 0x9f030000 $filesize
reset
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
TP-Link Archer C60v1 is a dual-band AC1350 router,
based on Qualcomm/Atheros QCA9561+QCA9886.
Specification:
- 775/650/258 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 8 MB of FLASH (SPI NOR)
- 3T3R 2.4 GHz
- 2T2R 5 GHz
- 5x 10/100 Mbps Ethernet
- 7x LED, 2x button
- UART header on PCB
Flash instruction (WebUI):
Download *-factory.bin image and upload it via the firmwary upgrade
function of the stock firmware WebUI.
Flash instruction (TFTP):
1. Set PC to fixed ip address 192.168.0.66
2. Download *-factory.bin image and rename it to tp_recovery.bin
3. Start a tftp server with the file tp_recovery.bin in its root directory
4. Turn off the router
5. Press and hold Reset button
6. Turn on router with the reset button pressed and wait ~15 seconds
7. Release the reset button and after a short time
the firmware should be transferred from the tftp server
8. Wait ~30 second to complete recovery.
Flash instruction under U-Boot, using UART:
1. tftp 0x81000000 ...-sysupgrade.bin
2. erase 0x9f020000 +$filesize
3. cp.b $fileaddr 0x9f020000 $filesize
4. reset
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
TP-Link CPE510-v2/v3 is an outdoor wireless CPE for 5 GHz with
one Ethernet port based on Atheros AR9344
Specifications:
- Based on the same underlying hardware as the TP-Link CPE510
- Power, LAN, and 4 green LEDs
- 1 10/100Mbps Shielded Ethernet Port (Passive PoE in)
- Built-in 13dBi 2x2 dual-polarized directional MIMO antenna
- Adjustable transmission power from 0 to 23dBm/200mw
Flashing instructions:
Flash factory image through stock firmware WEB UI
or through TFTP
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP adress:192.168.0.254
Signed-off-by: Andrew Cameron <apcameron@softhome.net>
[whitespace fixes]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Trendnet TEW-823DRU is a dual-band AC1750 router.
The router is based on Qualcomm/Atheros QCA9558 + QCA9880.
Specification:
720 MHz CPU
256 MB of RAM
16 MB of FLASH
3T3R 2.4 GHz
3T3R 5 GHz
5x 10/100/1000 Mbps Ethernet
Firmware can be flashed from the web interface. Tested on 3 routers
with no issues.
Signed-off-by: Pramod Pancha <pancha@vill.com>
[whitespace fixes]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
TP-Link RE650 v1 is a dual-band AC2600 range extender,
based on MediaTek MT7621A and MT7615E. According to the
wikidevi entry for RE650 this device is identical with
TP-Link RE500 as hardware. This patch supports only RE650.
Hardware specification:
- SoC 880 MHz - MediaTek MT7621AT
- 128 MB of DDR3 RAM
- 16 MB - Winbond 25Q128FVSG
- 4T4R 2.4 GHz - MediaTek MT7615E
- 4T4R 5 GHz - MediaTek MT7615E
- 1x 1 Gbps Ethernet - MT7621AT integrated
- 7x LEDs (Power, 2G, 5G, WPS(x2), Lan(x2))
- 4x buttons (Reset, Power, WPS, LED)
- UART header (J1) - 2:GND, 3:RX, 4:TX
Serial console @ 57600,8n1
Flash instructions:
Upload
openwrt-ramips-mt7621-tplink_re650-v1-squashfs-factory.bin
from the RE650 web interface.
TFTP recovery to stock firmware:
Unfortunately, I can't find an easy way to recover the RE
without opening the device and using modified binaries. The
TFTP upload will only work if selected from u-boot, which
means you have to open the device and attach to the serial
console. The TFTP update procedure does *not* accept the
published vendor firmware binaries. However, it allows to
flash kernel + rootfs binaries, and this works if you have
a backup of the original contents of the flash. It's probably
possible to create special image out of the vendor binaries
and use that as recovery image.
Signed-off-by: Georgi Vlaev <georgi.vlaev@gmail.com>
[re-added variables for kernel header]
Signed-off-by: David Bauer <mail@david-bauer.net>
This board was used in dual-band 802.11n enterprise access points, models
BSAP-1800v2 and BSAP-1840, introduced in 2010 by Bluesocket, which was
acquired by Adtran in 2011, who has now EOL'ed them. They differed only in
that the BSAP-1840's antennae were detachable, while the BSAP-1800v2's were
inside the case. They have an external RJ-45 console port, which works with
standard Cisco 72-3383-01 console cables.
Specification:
- System-On-Chip: AR7161
- CPU/Speed: 600 MHz
- Flash-Chip: Macronix MX25L12845E
- Flash size: 16 MiB
- RAM: 64 MiB
- Wireless No1: Lite-On WN2601A card: AR9160/AR9103 2.4GHz 802.11bgn
- Wireless No2: Lite-On WN2502A card: AR9160/AR9106 5GHz 802.11an
- PHY: Vitesse VSC8601, Rev. B
Installation:
1. Connect to the serial console using a terminal that supports YMODEM at
115200 bps, 8 data bits, no parity, 1 stop bit
2. Interrupt the bootloader using its password, which is: r00t
3. Issue the "fis init" command, confirming if prompted
4. Look at the length of the openwrt-ath79-generic-*-squashfs-kernel.bin
file, and substitute it below, instead of where I have "LeNgTh"
5. Issue the following command, and upload this file using YMODEM protocol
load -r -v -b 0x80060000 -m ymodem
6. Issue the following commands, substituting as mentioned above:
fis create -b 0x80060000 -l LeNgTh vmlinux_2
load -r -v -b 0x80100000 -m ymodem
7. Using YMODEM, upload openwrt-ath79-generic-*-squashfs-rootfs.bin
8. Issue the "fis free" command, and for the first range in its response,
use a hexadecimal calculator to subtract the start from the end in order
to substitute it below, with the leading "0x" to specify it in
hexadecimal, instead of where I have "LeNgTh"
9. Issue the following commands, substituting as mentioned above:
fis create -b 0x80100000 -l LeNgTh -e 0 -r 0 rootfs
reset
10.Wait for the status LED to go solid green
Tested-by: Brian Gonyer <bgonyer@gmail.com>
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[fixed obsolete $ARGV in platform_do_upgrade]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
The Bluesocket BSAP1880 board has a Vitesse PHY, for which the driver was
not being included, and its RedBoot directory block is earlier in the
flash than the search was allowing. This commit prepares for supporting it.
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
The ag71xx code did not include a case for the "rgmii-id" PHY mode in the
code. There are devices that need this mode, so I'm adding it.
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
Fix the following compilation error when using linux 4.19 on brcm47xx:
drivers/watchdog/old_gpio_wdt.c:236:2: error: implicit declaration of function 'setup_timer'
setup_timer was removed and replaced by timer_setup in linux >=4.15:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=513ae785
Update the patch to use the timer_setup interface
Signed-off-by: Zachary Cook <zachcook1991@gmail.com>
It was reported in FS#2385, that Carambola2 doesn't currently have
working watchdog so fix it by adding watchdog node.
Ref: FS#2385
Signed-off-by: Petr Štetiar <ynezz@true.cz>
ELECOM WRC-1167GHBK2-S has a MediaTek MT7615D chip for 2.4/5 GHz
wireless.
A driver package for MT7615 chip is added to OpenWrt in
a0e5ca4f35,
so add preliminary MT7615 chip support for WRC-1167GHBK2-S.
Note: Currently, DBDC mode for MT7615 is not supported in mt76 driver.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Drop 211-host_tools_portability.patch which is breaking perf build on
4.19 kernels by removing the include directory from the host's CFLAGS
leading to the following build breakage:
pmu-events/jevents.c:48:10: fatal error: linux/list.h: No such file or directory
#include <linux/list.h>
^~~~~~~~~~~~~~
Signed-off-by: Petr Štetiar <ynezz@true.cz>
jffs2reset is used to cleanup the rootfs_data overlay, but it's
currently missing in the ramfs during sysupgrade leading to the
following error:
Switching to ramdisk...
Performing system upgrade...
/lib/upgrade/do_stage2: line 27: jffs2reset: not found
Fixes: 2f1a11d008 ("imx6: apalis: fix config survival after sysupgrade -n")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
We can't use $board_name in sysupgrade paths for kernel and rootfs as we
currently generate one image which could be used on two different base
boards.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Many Atom-based embedded/industrial x86 boards can't run 64bit operating
systems due to either processor or board firmware limitations, but they
have modern interfaces (PCIe) or have modern Intel gigabit controllers
onboard. With the current default package selection for x86 Generic
target their network won't work.
Add the modern gigabit network modules needed or most likely going to be
used as add-in cards, similar to what is the list on x86_64 target.
Signed-off-by: Alberto Bursi <alberto.bursi@outlook.it>
[fixed whitespace issue]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
sysupgrade passes image path to platform_check_image() as an argument so
it can be simply accessed using $1
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
The only step between platform_pre_upgrade() and platform_do_upgrade()
is switching to ramdisk. It should be fine to "mtd erase firmware" from
the later callback and get rid of the first one.
This change wasn't tested on affected target but identical code logic
was verified to work as expected on brcm47xx with initramfs firmware.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
The only step between platform_pre_upgrade() and platform_do_upgrade()
is switching to ramdisk. It should be fine to "mtd erase firmware" from
the later callback and get rid of the first one.
This change wasn't tested on affected target but identical code logic
was verified to work as expected on brcm47xx with initramfs firmware.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
fixes intermittent loss of connectivity on 1Gbit port, with log message:
> 803x_aneg_done: SGMII link is not ok
Thanks to David Bauer for pointing me in the right direction.
I just had to figure out the right bus_id, which you find in this log:
> ag71xx ag71xx.1: connected to PHY at gpio-1:00 [uid=004dd074,
driver=Atheros 8031 ethernet]
Fixes FS#2236
Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
[Wrapped commit message - Fixed whitespace erors]
Signed-off-by: David Bauer <mail@david-bauer.net>
This script is copied from ar71xx. Without a header fixup, u-boot
checksum for kernel will fail after the first boot.
Fixes: a9360452f0 ("ath79: add support for Qihoo C301")
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
sysupgrade passes image to check as argument so use $# instead of $ARGC.
It also fits this function better as it checks $1 and not $ARGV.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
In 2011 (!), network setup for nexaira,bc2 was moved to network
defaults script with a typo so it became b2c:
295e04084c ("ramips: setup bc2 mac addresses from the generic network script")
This patch just removes the useless entry without replacement,
since it seems to have worked for 8 years anyway.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
according to functional block diagram in datasheet, these devices
don't belong to apb bus.
Move these nodes out to match datasheet description.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Specifications:
- SoC: AR9344
- RAM: 128MB
- Flash: 2 * 16MB (MX25L12845)
- Ethernet: 2 * FE LAN & 1 * FE WAN
- WiFi: 2.4G: AR9344 5G: QCA9882
Flash instruction:
1. Hold reset and power up the router
2. Set your IP to 192.168.1.x
3. Open 192.168.1.1 and upload the generated *factory* firmware
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Since mt76x8an ver1 eco2, SDXC pins can be switched to the
following pinmap:
sd_d1 -> PAD_I2S_SDI
sd_d0 -> PAD_I2S_WS
sd_cmd -> PAD_I2S_CLK
sd_d3 -> PAD_I2C_SCLK
sd_d2 -> PAD_I2C_SD
sd_clk -> PAD_GPIO0
sd_wp -> PAD_TXD1
sd_cd -> PAD_RXD1
To use this pinmap, one would need to set ESD_MODE bit (bit 15)
to 1 in GPIO1_MODE and switch other used pads into GPIO mode.
In this mode, we don't need to switch ethernet pins to digital
pad.
Check ESD_MODE bit before applying AGPIO_CFG and use rt_sysc_m32
to set it.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Removed an eglibc remnant, and while at it, grouped all of the
TOOLCHAIN_PLATFORMs using the same FLAGS together.
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Hardware
--------
CPU: Qualcomm Atheros QCA9558
RAM: 128M DDR2
FLASH: 16MiB
ETH: 1x Atheros AR8035 (PoE in)
WiFi2: QCA9558 3T3R
WiFi5: QCA9880 3T3R
BTN: 1x Reset
LED: 1x LED Power (non-controllable)
1x LED Status (internal)
1x LED LAN (controlled by PHY)
1x LED WLAN
BEEP: 1x GPIO attached piezo beeper
UART: 3.3V GND TX RX (115200-N-8) (3.3V is square pad)
Header is located next to external-LED header.
Installation
------------
Make sure you set a password for the root user as prompted on first
setup!
1. Upload OpenWRT sysupgrade image via SSH to the device.
Use /tmp as the destination folder on the device.
User is root, password the one set in the web interface.
2. Install OpenWRT with
> sysupgrade -n -F /tmp/<openwrt-image-name>
Signed-off-by: David Bauer <mail@david-bauer.net>
The command line enforced by the kernel is harmful, we want to
use the command line passed from the device tree. This is
especially important for the SQ201, Teltonika RUT and WBD111
which has a console set to 115200n8 and not 19200n8 like all
the others, so their consoles will be confusingly changing
baudrate between boot loader and kernel. The setting in the
device tree corresponds to what the boot loader is using.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
- Support added to bcm2709 subtarget (32 bit).
- 64 bit kernel still requires many hacks on RPi 4B.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SoC: MediaTek MT7621AT
RAM: 128M (Winbond W631GG6KB-15)
FLASH: 16MB (Spansion S25FL128SA)
WiFi: MediaTek MT7603EN bgn 2SS
WiFi: MediaTek MT7612EN nac 2SS
BTN: Reset - WPS
LED: - Power
- LAN {1-4}
- WAN
- WiFi 2.4 GHz
- WiFi 5 GHz
- USB
UART: UART is present next to the Power LED.
TX - RX - GND - 3V3 / 57600-8N1
3V3 is the nearest one to the Power LED.
Installation
------------
Via TFTP:
1. Set your computers IP-Address to 192.168.1.75.
2. Power up the Router with the Reset button pressed.
3. Release the Reset button after 5 seconds.
4. Upload OpenWRT sysupgrade image via TFTP:
> tftp -4 -v -m binary 192.168.1.1 -c put <IMAGE>
Via SSH:
Note: User/password for SSH is identical with the one used in the
Web-interface.
1. Complete the initial setup wizard.
2. Activate SSH under "Administration" -> "System".
3. Transfer the OpenWrt sysupgrade image via scp:
> scp owrt.bin admin@192.168.1.1:/tmp
4. Connect via SSH to the router.
> ssh admin@192.168.1.1
5. Write the OpenWrt image to flash.
> mtd-write -i /tmp/owrt.bin -d linux
6. Reboot the router
> reboot
Signed-off-by: David Bauer <mail@david-bauer.net>
This commit fixes a forgotten case in previous commit.
Fixes: 087e14ab59 ("ramips: mt7621: merge two variants of MQmaker WiTi together")
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
mt7621 and mt7628 now have the ability to detect memory size
automatically.
Drop memory nodes and let kernel determine memory size.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
mt7621 has the following memory map:
0x0-0x1c000000: lower 448m memory
0x1c000000-0x2000000: peripheral registers
0x20000000-0x2400000: higher 64m memory
detect_memory_region in arch/mips/kernel/setup.c only add the first
memory region and isn't suitable for 512m memory detection because
it may accidentally read the memory area for peripheral registers.
This commit adds memory detection capability for mt7621:
1. add the highmem area when 512m is detected.
2. guard memcmp from accessing peripheral registers:
This only happens when some weird user decided to change
kernel load address to 256m or higher address. Since this
is a quite unusual case, we just skip 512m testing and return
256m as memory size.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Belkin F7C027 is clearly Rt5350 SoC, as shown on internal
photographs filed for FCC approval[1].
[1]: https://fcc.io/K7S/F7C027
Fixes commit 3b0264eddb
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
This patch applies sorting to the definitions as whole blocks.
Sorting has been performed fully automatic, line count differences
originate from double empty lines removed.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This patch is cosmetical:
It only applies sorting based on device names, whereas renames
already took place in earlier patches.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Having converted the target to use device compatible, ramips.sh
is obsolete now.
The only remaining entry for the mt7688 evaluation board seems to
be orphaned.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
As introduced with ath79, DTS files for ramips will now be labelled
soc_vendor_device.dts(i). With this change, DTS files can be
selected automatically without further manual links.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
As introduced with ath79, DTS files for ramips will now be labelled
soc_vendor_device.dts(i). With this change, DTS files can be
selected automatically without further manual links.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This will automatically derive the DTS name as in ath79 and thus
makes specifying DTS for every device obsolete.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
---
This patch only introduces the mechanism and is then followed by
commits with renames and Makefile adjustments per subtarget.
Eventually, those can be all squashed into a single commit or left
as they are to enhance overview.
This will "rename" devices in Makefiles to the pattern used in
DTS compatible. This will systematize naming of devices
enormously.
As device names are used to for default SUPPORTED_DEVICES entries,
we need to adjust the source for /tmp/sysinfo/board_name, too.
So remove relevant entries from base-files/lib/ramips.sh and
use device compatible for that.
Despite that, base-files are updated, too.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Include "Archer" in compatible as it is part of the device name.
Update Makefile device names where necessary to match compatible.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This is already included in newer upstream. Needed to build BPF programs
using the MIPS kernel include files.
Without this patch, clang fails with "#error Use a Linux compiler or
give up." in sgidefs.h when building BPF programs.
Signed-off-by: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com>
This fixes the collection of target info during build, where the
device title for rb532/nand is just empty:
tmp/.config-target.in:44925:warning: leading whitespace ignored
tmp/.config-target.in:123738:warning: leading whitespace ignored
tmp/.config-target.in:123786:warning: leading whitespace ignored
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Newer motherboards support NVMe U.2 connectors but also NVMe storage can
be used on add-on pcie adapters.
Enable kernel driver on x86 for now so the NVMe flash storage can be used
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
Upstream kernel added support for RAW_APPENDED_DTB on ralink arch
in the following commit:
02564fc89d3d ("ralink: Introduce fw_passed_dtb to arch/mips/ralink")
Use upstream solution and get rid of our OWRTDTB hack.
This commit set DEVICE_DTS to $$(DTS) instead of replacing DTS with
DEVICE_DTS in device profile because DTS variable will be dropped
in later commits.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
[Tested on mt7621/mt76x8]
Tested-by: Chuanhong Guo <gch981213@gmail.com>
[Tested on rt305x/mt7620]
Tested-by: INAGAKI Hiroshi <musashino.open@gmail.com>
The Etactica EG200 is the only device in ath79 despite nand
target that lacks IMAGE_SIZE.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
CAKE made it to kernel 4.19 and since OpenWrt now at kernel 4.19 we can
drop the out of tree cake package in base repository.
Add kmod-sched-cake to netsupport so package dependencies are still met.
Similarly CAKE is retained as an optional qdisc module to avoid base
scheduler package size implications.
Backport upstream patches from k5.1 to address some small bugs and
support fwmark usage.
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Calling nand_do_upgrade() from platform_pre_upgrade() was obsoleted in
the commit 30f61a34b4 ("base-files: always use staged sysupgrade").
This change brings bcm53xx in sync with other targets and allows
dropping backward compatibility code. It shouldn't change any user
visible behavior.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This fixes the following compile problem with kernel 4.9 on lantiq:
drivers/mtd/mtdsplit/mtdsplit_uimage.c:244:34: error: array type has incomplete element type 'struct of_device_id'
static const struct of_device_id mtdsplit_uimage_of_match_table[] = {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/mtd/mtdsplit/mtdsplit_uimage.c:245:4: error: field name not in record or union initializer
{ .compatible = "denx,uimage" },
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This is pending to get into the upstream kernel.
This fixes a bug in the upstream kernel which was added to stable some
time ago.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Increase the Kernel partition to address the issue discussed here
https://forum.openwrt.org/t/cpe610-v1-sysupgrade-bin-missing-too-big/39637/5
Switch Back to the okli Loader to support increased partition size
Signed-off-by: Andrew Cameron <apcameron@softhome.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [add <> for e-mail]
Somehow I missed to add the magical image cooking file
for the SL93512r. Fix it.
Fixes: 18e2053bec ("gemini: Add StorLink SL93512r images")
Reported-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [added Fixes,
changed subject]
This has been reported by Chen Minqiang (@ptpt52).
Reported-by: Chen Minqiang <ptpt52@gmail.com>
Fixes: 18e2053bec ("gemini: Add StorLink SL93512r images")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [Added tags]
After commit 1e41de2f48 ("mpc85xx: convert TL-WDR4900 v1 to simpleImage")
XZ compression of zImage was enabled. This change exposed a problem with
the HiveAP-330 images, which was fixed by foregoing the compression on
the kernel altogether with commit 98089bb8ba
("mpc85xx: Use uncompressed kernel on the HiveAP-330").
This patch adds back the gzip compression of the kernel image by
utilizing the generic OpenWRT uImage method instead of relying on
the PowerPC bootwrapper script that did it previously.
Compile-tested: p1020/hiveap-330
Tested-by: Chris Blake <chrisrblake93@gmail.com> [run-tested]
Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[filled in even more text]
This patch backports verbatim the commit from Linux 5.2-rc7 that fixes
the warnings about invalid lpm related parameters on hardware which
don't that.
This is the case for e.g. lantiq xrx200 targets.
Supported only in Linux 4.17 an later.
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
[refresh patches, fix commit title]
Signed-off-by: Mathias Kresin <dev@kresin.me>
The following warnings are introduced by our own patches:
lantiq_etop.c:173:1: warning: no semicolon at end of struct or union
};
^
lantiq_etop.c: In function 'ltq_etop_change_mtu':
lantiq_etop.c:725:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
int max = ETH_HLEN + VLAN_HLEN + new_mtu + ETH_FCS_LEN;
^~~
Signed-off-by: Mathias Kresin <dev@kresin.me>
In DTS Checklist[1] we're now demanding proper generic node names, as
the name of a node should reflect the function of the device and use
generic name for that[2]. Everybody seems to be copy&pasting from DTS
files available in the repository today, so let's unify that naming
there as well and provide proper examples.
1. https://openwrt.org/submitting-patches#dts_checklist
2. https://github.com/devicetree-org/devicetree-specification/blob/master/source/devicetree-basics.rst#generic-names-recommendation
Signed-off-by: Petr Štetiar <ynezz@true.cz>
[split out treewide patch, integrated P2812HNUF1 rename patch]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[merged key and led changes, use generic node name for flash, wifi and
gpio]
Signed-off-by: Mathias Kresin <dev@kresin.me>
It is pretty ovbious a misuse of the simple-bus binding as no child has
a address.
Luckly the clock node isn't used at all so it is safe to get rid of it.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Set a unit address matching the reg property for the EASY98000 ethernet
node.
Fixes a unit mismatch devicetree compiler warning.
Signed-off-by: Mathias Kresin <dev@kresin.me>
The localbus childs are highly board specific and need to be part of the
board dts. Otherwise we run into duplicate unit address issues if a
board has something else (NAND) connected to the bus id.
Signed-off-by: Mathias Kresin <dev@kresin.me>
The register address is the same for danube und vr9. The register size
is 0x400 byte for danube and 0x300 byte for vr9.
The change doesn't have an impact as the vmmc driver doesn't use the
devicetree and has hardcoded register offsets.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Fixes the following devicetree compiler warning:
unnecessary #address-cells/#size-cells without "ranges" or child "reg" property
Signed-off-by: Mathias Kresin <dev@kresin.me>
Add size and address cells where missing to fix the following devicetree
compiler warning:
Warning (avoid_default_addr_size): Relying on default #address-cells value
Warning (avoid_default_addr_size): Relying on default #size-cells value
Signed-off-by: Mathias Kresin <dev@kresin.me>
The cpu temperature driver has the register offset hardcode and doesn't
need a reg.
The mdio bus node is only used as a well known name and doesn't need a
reg or unit address.
syscon-reboot doesn't have a unit address or a reg either. The unit name
collides with reset-controller@10 anyway.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Add the reg property if the node has an unit address. Fixes the
following device tree compiler warning:
Warning (unit_address_vs_reg): node has a unit name, but no reg property
Signed-off-by: Mathias Kresin <dev@kresin.me>
This allows the definition of DEVICE_VENDOR, DEVICE_MODEL and
DEVICE_VARIANT. All three are merged together to look the same as the
current DEVICE_TITLE. Also, if DEVICE_TITLE is set it's directly used as
a *fallback* for devices which weren't upgraded yet.
This is based on the work of @sudhanshu16.
The motivation is to create JSON files based on provided metadata,
needing clear differentiation between vendor, model and revision.
Signed-off-by: Paul Spooren <mail@aparcar.org>
The current state of the kernel 4.14 support is in the openwrt-19.07
branch. No need to keep a not default used kernel in this branch.
Signed-off-by: Mathias Kresin <dev@kresin.me>
With kernel 4.19 the DMA API relies on a struct device to work properly.
Backport upstream patches which passed a struct device instead of NULL
to the DMA API.
Fixes kernel panics during boot.
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
In case a PCI device is physical present, the Lantiq PCI driver need to
be loaded prior to the Lantiq PCIe driver. Otherwise none of them will
work because updating the BAR 0 of a device attached to the PCIe Bus
will fail.
Till kernel commit 9667bb039bf6 ("MIPS: lantiq: remove unnecessary
of_platform_default_populate call"), the Lantiq PCI driver was probed
early in the boot process via plat_of_setup().
Since the mentioned commit, both drivers are probed via
of_platform_default_populate_init() and they are probed according to
their order in the devicetree source file.
If the Lantiq PCI driver is enabled in the devicetree, defer the probing
og the Lantiq PCIe driver till the Lantiq PCI driver is probed. Use the
presence of a PCU bus as indicater for a loaded Lantiq PCI driver.
This way we don't need to shuffle the PCI/PCIe nodes in the devicetree
source file, as they are already (correctly) ordered based on the unit
address.
Signed-off-by: Mathias Kresin <dev@kresin.me>
With kernel 4.19 dwc2 would not want to initialize due to reset
timeouts, while it worked fine with 4.14.
Increase the reset timeouts to 1 second, as it was used by the old
lantiq ifxhcd usb driver.
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
The following patches are dropped because they are now upstreamed:
- 0002-gpio-stp-xway-Implement-get-callback.patch
upstreamed with commit 5b9b2b5284f819 ("gpio: stp-xway: Implement get
callback")
- 0027-01-net-phy-intel-xway-add-VR9-version-number.patch
upstreamed with commit 5b73d9955fb4b0 ("net: phy: intel-xway: add VR9
version number")
- 0027-02-net-phy-intel-xway-add-VR9-v1.1-phy-ids.patch
upstreamed with commit f452518c982e57 ("net: phy: intel-xway: add VR9
v1.1 phy ids")
The following patches were updated:
- 0018-MTD-nand-lots-of-xrx200-fixes.patch
the mainline driver now resides in drivers/mtd/nand/raw/xway_nand.c
(instead of drivers/mtd/nand/xway_nand.c)
- 0025-NET-MIPS-lantiq-adds-xrx200-net.patch
the DMA API now requires a valid device to be passed to all operations
- 0028-NET-lantiq-various-etop-fixes.patch
the DMA API now requires a valid device to be passed to all operations
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
This just copies the files from the kernel 4.14 specific folders into
the kernel 4.19 specific folder, no changes are done to the files in
this commit.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
While moving common used parts to dtsi files, the was disabled by
default but not enabled for all boards using the STP.
Fixes: f519fea4c6 ("lantiq: kernel 4.14: cleanup dts files")
Reported-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Apply the same approach as in commit 3b53d6fdbc ("ar71xx: fix pci irq
init on kernel 4.14") to fix IRQ initialization for ath79-based chipsets
on rb4xx.
Ref: PR#2182
Acked-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: W. Michael Petullo <mike@flyn.org>
[commit ref fix]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
In ath79, identifiers tplink_tl-wdr3600 and tplink_tl-wdr4300 have
been used while most other TP-Link devices include the revision.
Although there actually is only one major revision of these
devices, they bear the revision on their bottom (v1.x). TP-Link
also refers to the devices as V1 on its web page.
This patch thus adds -v1 to both so it is more consistent
with other devices and with what you would expect from reading
the on-device sticker and the support pages.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
TP-Link TL-WR841n v14 is a router based on MediaTek MT7628N.
- MediaTek MT7628NN
- 32 MB of RAM
- 4 MB of FLASH
- 2T2R 2.4 GHz
- 5x 10/100 Mbps Ethernet
Installation:
- copy the
'openwrt-ramips-mt76x8-tl-wr841n-v14-squashfs-tftp-recovery.bin'
file to your tftp server root and rename it to 'tp_recovery.bin'.
- configure your PC running the TFTP server with the static IP address
192.168.0.66/24
- push the reset button and plug in the power connector. Wait until
the orange led starts blinking (~6sec)
Signed-off-by: Alexander Müller <donothingloop@gmail.com>
Signed-off-by: Alexander Couzens <lynxis@fe80.eu> [small modifications gpio-hog]
Similiar to the lantiq target use a dts alias to define the wlan led
instead of static mapping in /etc/board.d/01_leds. Reduce code
duplication.
A device tree must define the alias "led-wlan" similiar to "led-boot".
/ {
aliases {
led-wlan = &led_wlan;
};
[..]
led_wlan: wlan {
label = "tl-wr841n-v14:green:wlan";
gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
};
};
Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
This adds image generation for the StorLink reference design
SL93512r. This board is now supported upstream in kernel
v4.19.
As this image structure is identical to SQ201 and Raidsonic,
we simply refer to this as "storlink-reference" from now on.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
The DIR-685 needs this module compiled in for safety
(it is facing the LAN ports) and it is now (as of
kernel v4.19) using the DSA switch architecture so
swconfig is not needed.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This adds initial support for micro-DPU (uDPU) board which is based on
Armada-3720 SoC. micro-DPU is the single-port FTTdp distribution point
unit made by Methode Electronics which offers complete modularity with
replaceable SFP modules both for uplink and downlink (G.hn over
twisted-pair, G.hn over coax, 1G and 2.5G Ethernet over Cat-5e cable).
On-board features:
- 512 MiB DDR3
- 2 x 2.5G SFP via HSGMII SERDES interface to the A3720 SoC
- USB 2.0 Type-C connector
- 4GB eMMC
- ETSI TS 101548 reverse powering via twisted pair (RJ45) or coax (F Type)
uDPU is intented to run on kernel 4.19 on newer due to the SFP and hardware support.
Signed-off-by: Vladimir Vid <vladimir.vid@sartura.hr>
When the non-generic espressobin targets were added these board checks
were not updated. One side effect of this is that config is not saved
during an upgrade of -emmc,-v7, or -v7-emmc devices.
Signed-off-by: Brett Mastbergen <bmastbergen@untangle.com>
Fixes following kernel build issue on ath79 with CONFIG_KERNEL_FTRACE=y
enabled:
Tracers (FTRACE) [Y/n/?] y
Kernel Function Tracer (FUNCTION_TRACER) [Y/n/?] y
Kernel Function Graph Tracer (FUNCTION_GRAPH_TRACER) [Y/n/?] y
Enable trace events for preempt and irq disable/enable (PREEMPTIRQ_EVENTS) [N/y/?] (NEW)
...
Preempt / IRQ disable delay thread to test latency tracers (PREEMPTIRQ_DELAY_TEST) [N/m/?] (NEW)
Signed-off-by: Petr Štetiar <ynezz@true.cz>
An aquantia phy patch which dropped pause frame support was
missing when integrated LSDK-19.03 kernel patches into OpenWrt.
Without this patch, LS1043A 10G port would not work. So apply it.
Patch link
https://source.codeaurora.org/external/qoriq/qoriq-components/
linux/commit/?h=linux-4.14&id=66346b115818365cfaf99d292871b19f0a1d2850
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Current snapshot images doesn't provide images with usable overlay
filesystems:
mount_root: no usable overlay filesystem found, using tmpfs overlay
So this patch fixes this by updating support to current f2fs/ext4 based
overlays and providing squashfs with proper rootfs
TARGET_ROOTFS_PARTSIZE size.
While at it, I've also added support for optional gzipping of the
images, and renamed the output rootfs image filenames to match the more
common naming pattern $(IMG_PREFIX)-rootfs-$(FS-TYPE).img.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
jffs2/mtdblock overlays are long time gone, and as we switch to the new
f2fs/ext4 based overlays, we need to add missing support for loop block
device and f2fs to kernel.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Current snapshot images doesn't provide images with usable overlay
filesystems:
mount_root: no usable overlay filesystem found, using tmpfs overlay
So this patch fixes this by updating support to current f2fs/ext4 based
overlays and providing squashfs with proper rootfs
TARGET_ROOTFS_PARTSIZE size.
While at it, I've also added support for optional gzipping of the
images, and renamed the output rootfs image filenames to match the more
common naming pattern $(IMG_PREFIX)-rootfs-$(FS-TYPE).img.
Cc: Yousong Zhou <yszhou4tech@gmail.com>
Signed-off-by: Petr Štetiar <ynezz@true.cz>
jffs2/mtdblock overlays are long time gone, and as we switch to the new
f2fs/ext4 based overlays, we need to add missing support for loop block
device and f2fs to kernel.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Current squashfs snapshot images are improperly padded by just 128k,
which doesn't correspond with TARGET_ROOTFS_PARTSIZE=128 default config
option, leading to following:
Filesystem Size Used Available Use% Mounted on
/dev/root 2.5M 2.5M 0 100% /rom
/dev/loop0 85.0K 9.0K 71.0K 11% /overlay
overlayfs:/overlay 85.0K 9.0K 71.0K 11% /
Signed-off-by: Petr Štetiar <ynezz@true.cz>
In `build: image: Add IMG_ROOTFS and IMG_COMBINED variables` we've added
this new variables so switch to them now.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Commit "build: Remove TARGET_IMAGES_PAD option" has removed this config
option so remove it from this target as well.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Currently we're producing unusable x86 combined squashfs images
(18.06.1, 18.06.2 and snapshots) as we don't enable TARGET_IMAGES_PAD,
thus providing very small space for the overlay filesystem, leading to
the following with OpenWrt 18.06.1 r7258-5eb055306f images on x86 QEMU:
root@(none):/# mount | egrep 'root|overlay'
/dev/root on /rom type squashfs
/dev/loop0 on /overlay type ext4
overlayfs:/overlay on / type overlay
root@(none):/# df -h | egrep 'root|overlay|Size'
Filesystem Size Used Available Use% Mounted on
/dev/root 2.5M 2.5M 0 100% /rom
/dev/loop0 113.0K 8.0K 97.0K 8% /overlay
overlayfs:/overlay 113.0K 8.0K 97.0K 8% /
We should rather ensure proper image padding in image generation code
and we shouldn't rely on config options in order to generate usable
images.
So this patch removes TARGET_IMAGES_PAD config option and enforces
padding on combined images.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Hardware specs:
SoC: Mediatek MT7621A
CPU: 4x 880Mhz
Cache: 32 KB I-Cache and 32 KB D-Cach
256 KB L2 Cache (shared by Dual-Core)
RAM: DDR3 512MB 16bits BUS
FLASH: 16MB
Switch: Mediatek Gigabit Switch (1 x LAN, 1 x WAN)
USB: 1x 3.0
PCI: 3x Mini PCIe
GPS: Quectel L70B
BTN: Reset
LED: - Power
- Ethernet
- Wifi
- USB
UART: UART is present as Pads with throughholes on the PCB.
They are located on left side.
3.3V - RX - GND - TX / 57600-8N1
3.3V is the square pad
Installation:
The stock image is a modified openwrt and can be overflashed via
# sysupgrade -F image.bin
Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[removed unused label, formatting]
This patch fixes the previous commit that rendered the
devices (mostly leds) useless.
Fixes: 1fa24de8c2 ("ath79: spi-gpio: convert deprecated binding")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
It seems that newer builds of OpenWRT have a gzip kernel
larger than 2MB~, which for some reason fails to boot on this board.
However, we have 8MB of kernel space and currently the uncompressed
kernel is 6.5MB~, so we have some space to grow until a better
solution is worked out.
Before:
## Booting kernel from Legacy Image at ee840000 ...
Image Name: Linux-4.19.53
Created: 2019-06-22 11:17:48 UTC
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 2315724 Bytes = 2.2 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 02000000 ...
Image Name: OpenWrt fake ramdisk
Created: 2019-06-22 11:17:48 UTC
Image Type: PowerPC Linux RAMDisk Image (uncompressed)
Data Size: 0 Bytes = 0 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at ec000000
Booting using the fdt blob at 0xec000000
Uncompressing Kernel Image ... Error: Bad gzipped data
GUNZIP: uncompress, out-of-mem or overwrite error -
must RESET board to recover
Loading Ramdisk to 10000000, end 10000000 ... OK
Loading Device Tree to 00ffa000, end 00fffc78 ... OK
ft_fixup_l2cache: FDT_ERR_NOTFOUND
After:
## Booting kernel from Legacy Image at ee840000 ...
Image Name: POWERPC OpenWrt Linux-4.19.53
Created: 2019-06-22 11:17:48 UTC
Image Type: PowerPC Linux Kernel Image (uncompressed)
Data Size: 6724584 Bytes = 6.4 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 02000000 ...
Image Name: OpenWrt fake ramdisk
Created: 2019-06-22 11:17:48 UTC
Image Type: PowerPC Linux RAMDisk Image (uncompressed)
Data Size: 0 Bytes = 0 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at ec000000
Booting using the fdt blob at 0xec000000
Loading Kernel Image ... OK
OK
Loading Ramdisk to 10000000, end 10000000 ... OK
Loading Device Tree to 00ffa000, end 00fffc78 ... OK
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [75 cpl limit]
The 4.19 code has been available for some time now.
Since the f2fs / loop issue has been under control
I think it's time the target gets to move to it.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This patch replaces the OpenWrt' favoured
CRC32 Sarwate algorithm with the kernel
recommended SLICE8 CRC32 version.
This change alone lifted btrfs writes from 40 MiB/s
to 54 MiB/s on my My Book Live (SLICE4 managed 48 MiB/s).
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
TP-Link CPE610-v1 is an outdoor wireless CPE for 5 GHz with
one Ethernet port based on Atheros AR9344
Specifications:
- Based on the same underlying hardware as the TP-Link CPE510
- Power, LAN, WLAN5G green LEDs
- 23dBi high-gain directional 2×2 MIMO antenna and a dedicated metal reflector
Flashing instructions:
Flash factory image through stock firmware WEB UI
or through TFTP
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP adress:192.168.0.254
Signed-off-by: Andrew Cameron <apcameron@softhome.net>
Commit fcb41decf6 ("config: enable some useful features on
!SMALL_FLASH devices") enabled netns, which in turn lead to the crash in
the flow offload target.
When the flow offloading framework intends to delete a flow from the
hardware table, it is necessary to retrieve the namespace from
nf_flowtable->ft_net. However, no one ever wrote the namespace into
nf_flowtable->ft_net in advance. So the framework will mistakenly use a
NULL namespace to execute dev_get_by_index_rcu(net, ifindex), leading to
the kernel panic.
Ref: FS#2321
Fixes: fcb41decf6 ("config: enable some useful features on !SMALL_FLASH devices")
Tested-by: Simon Tretter <simon@mediaarchitectu.re>
Signed-off-by: HsiuWen Yen <y.hsiuwen@gmail.com>
[merged patch into offload patch, fix for 4.19, SOB fix, commit subj/msg touches]
Signed-off-by: Petr Štetiar <ynezz@true.cz>