For EWS511AP, have default behavior as static ip
to match the behavior of all other APs in ath79
These boards are sold as
Client Bridge or Point to Point or Access Point
so there is probably no benefit to have WAN by default
for one of the ports, to prevent user confusion.
Daniel Golle [Fri, 1 Jan 2021 12:47:11 +0000 (12:47 +0000)]
dnsmasq: switch to ubus-based hotplug call
Use new ubus-based hotplug call in dhcp-script.sh
As sysntpd now makes use of the new ubus-based hotplug calls, dnsmasq
no longer needs to ship ACL to cover ntpd-hotplug.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Ilya Lipnitskiy [Sat, 6 Feb 2021 05:11:20 +0000 (21:11 -0800)]
acx-mac80211: replace dead URLs with OpenWrt CDN
erley.org no longer exists; attempting to connect to it during package
download results in lengthy timeouts. Use the new OpenWrt CDN alias to
download from reliable OpenWrt mirrors.
Szabolcs Hubai [Tue, 15 Dec 2020 00:46:54 +0000 (01:46 +0100)]
ramips: disable default build for HooToo HT-TM02
While the latest version of 19.07 release is usable,
the current master is unbootable on the device in a normal way.
"Normal way" installations includes:
- sysupgrade (e.g. from 19.07)
- RESET button recovery with Ron Curry's (Wingspinner) UBoot image
(10.10.10.3 + "Kernal.bin")
- RESET button recovery with original U-Boot
(10.10.10.254 + "kernel")
One could flash and boot the latest master sysupgrade image successfully
with serial access to the device. But a sysupgrade from this state still
breaks the U-Boot and soft-bricks the device.
1. Boot WN-DX1200GR normally
2. Access to "http://192.168.0.1/" and open firmware update page
("ファームウェア")
3. Select the OpenWrt initramfs image and click update ("更新") button
to perform firmware update
4. On the initramfs image, perform sysupgrade with the
squashfs-sysupgrade image
5. Wait ~120 seconds to complete flashing
Notes:
- currently, mt7615e driver in mt76 doesn't fully support MT7613
(MT7663) wifi chip
- the eeprom data in flash is not used by mt7615e driver and the
driver reports the tx-power up to 3dBm
- the correct MAC address for MT7613BE in eeprom data cannot be
assigned to the phy
- last 0x80000 (512 KiB) in NAND flash is not used on stock firmware
- stock firmware requires "customized uImage header" (called as "combo
image") by MSTC (MitraStar Technology Corp.), but U-Boot doesn't
- uImage magic ( 0x0 - 0x3 ) : 0x434F4D43 ("COMC")
- header crc32 ( 0x4 - 0x7 ) : with "data length" and "data crc32"
- image name (0x20 - 0x37) : model ID and firmware versions
- data length (0x38 - 0x3b) : kernel + rootfs
- data crc32 (0x3c - 0x3f) : kernel + rootfs
Thomas Beckler [Sat, 30 May 2020 21:40:03 +0000 (23:40 +0200)]
kirkwood: use 3 temperature sensors for Zyxel NSA310B
Instead of taking the input of one temperature sensor (temp1), the
script takes into account three temperature sensors to control the
PWM of the cooling fan.
temp1 -> placed on main board
temp2 -> placed on main board
temp3 -> placed on or close to chipset
All three temperatures give valid input for the PWM of the fan on
NSA310 and are actually changing.
Tested on two NSA310.
Signed-off-by: Thomas Beckler <thomas.beckler@hotmail.com> Reviewed-by: Alberto Bursi <bobafetthotmail@gmail.com>
[commit title/message facelift, code cleanup] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Alexey Kunitskiy [Sun, 13 Dec 2020 16:48:58 +0000 (18:48 +0200)]
tplink-safeloader: add support for TP-Link Archer A7 v5 (RU)
Although provided in separate zip archives, the firmwares for EU
and RU version are byte-identical. This adds the missing ID compared
to the support-list in the vendor firmware.
Note (since I checked it anyway):
Partitions and support list are unchanged for all three existing
firmware versions:
David Bentham [Sat, 21 Nov 2020 14:04:49 +0000 (14:04 +0000)]
ramips: add support for UniElec U7621-01
UniElec U7621-01 is a router platform board, the smaller model of
the U7621-06.
The device has the following specifications:
- MT7621AT (880 MHz)
- 256 of RAM (DDR3)
- 16 MB of FLASH (SPI NOR)
- 5x 1 Gbps Ethernet (MT7621 built-in switch)
- 1x 2.4Ghz MT7603E
- 1x 5Ghz MT7612
- 1x miniPCIe slots (PCIe bus only)
- 1x miniSIM slot
- 1x USB 2.0 (uses the usb 3.0 driver)
- 8x LEDs (1x GPIO-controlled)
- 1x reset button
- 1x UART header (4-pins)
- 1x GPIO header (30-pins)
- 1x DC jack for main power (12 V)
The following has been tested and is working:
- Ethernet switch
- 1x 2.4Ghz MT7603E (wifi)
- 1x 5Ghz MT7612 (wifi)
- miniPCIe slots (tested with Wi-Fi cards and LTE modem cards)
- miniSIM slot (works with normal size simcard)
- sysupgrade
- reset button
Installation:
This board has no locked down bootloader. The seller can be asked to
install openwrt v18.06, so upgrades are standard sysupgrade method.
Recovery:
This board contains a Chinese, closed-source bootloader called Breed
(Boot and Recovery Environment for Embedded Devices). Breed supports web
recovery and to enter it, you keep the reset button pressed for around
5 seconds during boot. Your machine will be assigned an IP through DHCP
and the router will use IP address 192.168.1.1. The recovery website is
in Chinese, but is easy to use. Click on the second item in the list to
access the recovery page, then the second item on the next page is where
you select the firmware. In order to start the recovery, you click the
button at the bottom.
LEDs list (left to right):
- ESW_P0_LED_0
- ESW_P1_LED_0
- ESW_P2_LED_0
- ESW_P3_LED_0
- ESW_P4_LED_0
- CTS2_N (GPIO10, configured as "status" LED)
- LED_WLAN# (connected with pin 44 in wifi1 slot)
Signed-off-by: David Bentham <db260179@gmail.com>
[add DEVICE_VARIANT, fix DEVICE_PACKAGES, remove &gpio] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Martin Kennedy [Sat, 28 Nov 2020 02:03:32 +0000 (02:03 +0000)]
ath79: add support for Meraki MR12
Port device support for Meraki MR12 from the ar71xx target to ath79.
Specifications:
- SoC: AR7242-AH1A CPU
- RAM: 64MiB (NANYA NT5DS32M16DS-5T)
- NOR Flash: 16MiB (MXIC MX25L12845EMI-10G)
- Ethernet: 1 x PoE Gigabit Ethernet Port (SoC MAC + AR8021-BL1E PHY)
- Ethernet: 1 x 100Mbit port (SoC MAC+PHY)
- Wi-Fi: Atheros AR9283-AL1A (2T2R, 11n)
Installation:
1. Requires TFTP server at 192.168.1.101, w/ initramfs & sysupgrade .bins
2. Open shell case
3. Connect a USB->TTL cable to headers furthest from the RF shield
4. Power on the router; connect to U-boot over 115200-baud connection
5. Interrupt U-boot process to boot Openwrt by running:
setenv bootcmd bootm 0xbf0a0000; saveenv;
tftpboot 0c00000 <filename-of-initramfs-kernel>.bin;
bootm 0c00000;
6. Copy sysupgrade image to /tmp on MR12
7. sysupgrade /tmp/<filename-of-sysupgrade>.bin
Notes:
- kmod-owl-loader is still required to load the ART partition into the
driver.
- The manner of storing MAC addresses is updated from ar71xx; it is
at 0x66 of the 'config' partition, where it was discovered that the
OEM firmware stores it. This is set as read-only. If you are
migrating from ar71xx and used the method mentioned above to
upgrade, use kmod-mtd-rw or UCI to add the MAC back in. One more
method for doing this is described below.
- Migrating directly from ar71xx has not been thoroughly tested, but
one method has been used a couple of times with good success,
migrating 18.06.2 to a full image produced as of this commit. Please
note that these instructions are only for experienced users, and/or
those still able to open their device up to flash it via the serial
headers should anything go wrong.
1) Install kmod-mtd-rw and uboot-envtools
2) Run `insmod mtd-rw.ko i_want_a_brick=1`
3) Modify /etc/fw_env.config to point to the u-boot-env partition.
The file /etc/fw_env.config should contain:
See https://openwrt.org/docs/techref/bootloader/uboot.config
for more details.
4) Run `fw_printenv` to verify everything is correct, as per the
link above.
5) Run `fw_setenv bootcmd bootm 0xbf0a0000` to set a new boot address.
6) Manually modify /lib/upgrade/common.sh's get_image function:
Change ...
cat "$from" 2>/dev/null | $cmd
... into ...
(
dd if=/dev/zero bs=1 count=$((0x66)) ; # Pad the first 102 bytes
echo -ne '\x00\x18\x0a\x12\x34\x56' ; # Add in MAC address
dd if=/dev/zero bs=1 count=$((0x20000-0x66-0x6)) ; # Pad the rest
cat "$from" 2>/dev/null
) | $cmd
... which, during the upgrade process, will pad the image by
128K of zeroes-plus-MAC-address, in order for the ar71xx's
firmware partition -- which starts at 0xbf080000 -- to be
instead aligned with the ath79 firmware partition, which
starts 128K later at 0xbf0a0000.
7) Copy the sysupgrade image into /tmp, as above
8) Run `sysupgrade -F /tmp/<sysupgrade>.bin`, then wait
Again, this may BRICK YOUR DEVICE, so make *sure* to have your
serial cable handy.
Signed-off-by: Martin Kennedy <hurricos@gmail.com>
[add LED migration and extend compat message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Ewan Parker [Sat, 31 Oct 2020 09:29:54 +0000 (09:29 +0000)]
ramips: add support for Hi-Link HLK-7688A
Specifications:
- SoC: MediaTek MT7688AN
- RAM: 128 MB
- Flash: 32 MB
- Ethernet: 5x 10/100 (1x WAN, 4x LAN)
- Wireless: built in 2.4GHz (bgn)
- USB: 1x USB 2.0 port
- Buttons: 1x Reset
- LEDs: 1x (WiFi)
Flash instructions:
- Configure TFTP server with IP address 10.10.10.3
- Name the firmware file as firmware.bin
- Connect any Ethernet port to the TFTP server's LAN
- Choose option 2 in U-Boot
- Alternatively choose option 7 to upload firmware to the built-in
web server
MAC addresses as verified by OEM firmware:
use address source
2g *:XX factory 0x4
LAN *:XX+1 factory 0x28
WAN *:XX+1 factory 0x2e
Notes:
This board is ostensibly a module containing the MediaTek MT7688AN SoC,
128 MB DDR2 SDRAM and 32 MB flash storage. The SoC can be operated in
IoT Gateway Mode or IoT Device Mode.
From some vendors the U-Boot that comes installed operates on UART 2
which is inaccessible in gateway mode and operates unreliably in the
Linux kernel when using more than 64 MB of RAM. For those, updating
U-Boot is recommended.
Signed-off-by: Ewan Parker <ewan@ewan.cc>
[add WLAN to 01_leds] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Daniel Golle [Thu, 4 Feb 2021 01:01:36 +0000 (01:01 +0000)]
hostapd: fix P2P group information processing vulnerability
A vulnerability was discovered in how wpa_supplicant processing P2P
(Wi-Fi Direct) group information from active group owners.
This issue was discovered by fuzz testing of wpa_supplicant by Google's
OSS-Fuzz.
The PCI device ID detected by the wifi drivers on devices using a fallback
SPROM is wrong. Currently the chipnum is used for this parameter.
Most SSB based Broadcom wifi chips are 2.4 and 5GHz capable. But on
devices without a physical SPROM, the only one way to detect if the device
suports both bands or only the 5GHz band, is by reading the device ID from
the fallback SPROM.
In some devices, this may lead to a non working wifi on a 5GHz-only card,
or in the best case a working 2.4GHz-only in a dual band wifi card.
The offset for the deviceid in SSB SPROMs is 0x0008, whereas in BCMA is
0x0060. This is true for any SPROM version.
Override the PCI device ID with the one defined at the fallback SPROM, to
detect the correct wifi card model and allow using the 5GHz band if
supported.
The patch has been tested with the following wifi radios:
BCM43222: b43: both 2.4/5GHz working
brcm-wl: both 2.4/5GHz working
BCM43225: b43: 2.4GHz, working
brcmsmac: working
brcm-wl: it lacks support
BCM43217: b43: 2.4GHz, working
brcmsmac: it lacks support
brcm-wl: it lacks support
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
[amend commit description, rework patch to avoid using a new global variable
and keep ssb sprom extraction code as close to ssb/pci.c as possible] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Daniel Golle [Tue, 2 Feb 2021 18:04:33 +0000 (18:04 +0000)]
arm-trusted-firmware-mediatek: add ATF builds for MT7622
ATF bl2 comes in 4 variants for MT7622 depending on the boot media:
* nor
* snand
* emmc
* sdmmc
Additional binary headers needed for emmc and sdmmc are downloaded as
well and provided along with bl2*.bin and bl31.bin to allow building
images including ATF for MT7622.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Felix Fietkau [Mon, 1 Feb 2021 08:59:49 +0000 (09:59 +0100)]
mac80211: fix station rate table updates on assoc
If the driver uses .sta_add, station entries are only uploaded after the sta
is in assoc state. Fix early station rate table updates by deferring them
until the sta has been uploaded
Marty Jones [Sat, 23 Jan 2021 16:10:36 +0000 (11:10 -0500)]
uboot-rockchip: fix RockPro64 boot from eMMC
With upstream commit f81f9f0ebac5 ("rockchip: rockpro64: initialize USB in
preboot") CONFIG_USE_PREBOOT was enabled on the RockPro64, which is causing
boot issues when a eMMC is used, as a workaround will temporarily disable
this option.
Signed-off-by: Marty Jones <mj8263788@gmail.com>
[Improve patch description] Signed-off-by: David Bauer <mail@david-bauer.net>
David Bauer [Thu, 7 Jan 2021 00:03:05 +0000 (01:03 +0100)]
mac80211: convert UniFi Outdoor+ HSR support to OF
Enable support for the Ubiquiti UniFi Outdoor+ RF filter via
device-tree. The old way of using platform data is not required anymore,
as it was only used on the now removed ar71xx target.
Petr Štetiar [Sat, 30 Jan 2021 12:32:43 +0000 (13:32 +0100)]
mvebu: omnia: make initramfs image usable out of the box
Currently it's not possible to boot the device with just initramfs image
without additional effort as the initramfs image doesn't contain device
tree. Fix it by producing FIT based image which could be booted with
following commands:
Paul Spooren [Fri, 29 Jan 2021 09:17:10 +0000 (23:17 -1000)]
rules: fix empty COMMITCOUNT/AUTORELEASE
Packages that are in-tree only often lack a PKG_VERSION and only use the
PKG_RELEASE to mark changes. Using COMMITCOUNT/AUTORELEASE variables
causes an issue as both variables are empty during the metadata DUMP
phase.
Instead of leaving these variables empty and causing an error message
like below, set the variables to 0 during dumping. On actual building
the variable is evaluated causing in a value above 0.
ERROR: please fix package/utils/px5g-wolfssl/Makefile - \
see logs/package/utils/px5g-wolfssl/dump.txt for details
Makefile:48: *** Package/px5g-wolfssl is missing the VERSION field. Stop.
Reported-by: Daniel Golle <daniel@makrotopia.org> Reported-by: Stijn Segers <foss@volatilesystems.org> Reported-by: Stijn Tintel <stijn@linux-ipv6.be> Signed-off-by: Paul Spooren <mail@aparcar.org>
Andre Heider [Sun, 17 Jan 2021 07:38:53 +0000 (08:38 +0100)]
arm-trusted-firmware-mvebu: bump espressobin boards to CPU_1000_DDR_800
The cpufreq issue has been identified and a fix is in the process of beeing
upstreamed [0].
Bump the boards to the default 1000MHz so they can run at that frequency
once the fix is merged. Until then the boards are stuck at 800MHz (just
claiming to run 1000Hz, which is a lie).
The thermal zones kernel documentation is misleading, we cannot use more
than one sensor in a thermal zone node.
Furthermore the drivetemp driver for some reason it only catches one
sensor from the hard drives array (the first available).
In the Buffalo Linkstation LS421DE board there is also a sensor at the
ethernet phy chip that can also be monitored. Very useful to stop the fan
when there are no hard drives in the bays.
(It might be also possible to add the CPU sensor, but it requires kernel
patching for registering the sensor via device tree, using the function:
devm_thermal_zone_of_sensor_register)
Fix the thermal zones to use only one sensor per node and add the ethernet
phy sensor. Also adjust the hdd temperatures to be more conservative for
a mechanical hard drive.
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
Brian Norris [Sat, 23 Jan 2021 23:08:00 +0000 (15:08 -0800)]
base-files: mount pstore if present
Pstore (persistent store) can be used to stash debug information (kernel
console, panics, ftrace) across reboots or crashes. If the filesystem is
present, mount it.
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
INAGAKI Hiroshi [Fri, 11 Dec 2020 14:14:03 +0000 (23:14 +0900)]
build: add elecom-product-header for ELECOM devices
A header used in ELECOM WRC-300GHBK2-I and WRC-1750GHBK2-I/C is also
used in ELECOM WRC-2533GHBK-I, so split the code to generate the header
and move it to image-commands.mk to use from ramips target.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com> Reviewed-by: Sungbo Eo <mans0n@gorani.run>
Calling netdev_reset_queue() from _stop() functions is causing sporadic kernel
panics on bcm63xx, which happen mainly on BCM6318 and BCM6328.
This reverts to the previous behaviour, which called netdev_reset_queue() from
_open() functions.
Marty Jones [Mon, 25 Jan 2021 17:37:56 +0000 (12:37 -0500)]
rockchip: fix SUPPORTED_DEVICES for Radxa ROCK Pi 4
This sets SUPPORTED_DEVICES to match the compatible in the DTS.
While at it, synchronize the capitalization in DEVICE_MODEL and
DTS model.
Signed-off-by: Marty Jones <mj8263788@gmail.com>
[commit title/message facelift, move variable in armv8.mk] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
On a platform with many very different devices, like found on kirkwood,
the generic profile seems like a remnant of the past that does not
have a real use anymore.
Remove it to have one thing less to maintain.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Paul Spooren <mail@aparcar.org>
On a platform with many very different devices, like found on ipq806x,
the generic profile seems like a remnant of the past that does not
have a real use anymore.
Remove it to have one thing less to maintain.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Paul Spooren <mail@aparcar.org>
On a platform with many very different devices, like found on ipq40xx,
the generic profile seems like a remnant of the past that does not
have a real use anymore.
Remove it to have one thing less to maintain.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Paul Spooren <mail@aparcar.org>
On a platform with many very different devices, like found on ramips,
the generic profiles seem like remnants of the past that do not
have a real use anymore.
Remove them to have one thing less to maintain.
Actually, rt288x didn't have a default profile in the first place.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Paul Spooren <mail@aparcar.org>
On a platform with many very different devices, like found on ath79,
the generic profiles seem like remnants of the past that do not
have a real use anymore.
Remove them to have one thing less to maintain.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Paul Spooren <mail@aparcar.org>
Felix Fietkau [Wed, 27 Jan 2021 19:54:34 +0000 (20:54 +0100)]
mt76: update to the latest version
65abbcd9f6fb mt76: usb: process URBs with status EPROTO properly 3199ef5fa35e mt76: mt7615: set mcu country code in mt7615_mcu_set_channel_domain() 5c86d5bb079b mt76: mt7915: Remove unneeded semicolon 3f546330b59d mt76: mt7915: support TxBF for DBDC 032ad7e02545 mt76: mt7615: unify init work cc3f23d1e654 mt76: mt7915: bring up the WA event rx queue for band1 fa3d334a0e22 mt76: fix crash on tearing down ext phy c4c9c402d14a mt76: mt7915: fix vif sta index for DBDC eca2f0ec0d4c mt76: mt7915: fix command id for txbf action c828124ef9a5 mt76: mt7915: add support for using a secondary PCIe link for gen1 dbaf0f4679f3 mt76: mt7915: make vif index per adapter instead of per band fb3e5ce1eb00 mt76: move vif_mask back from mt76_phy to mt76_dev be2bea66d6e3 mt76: mt7915: detect wrong nss eeprom parameter on dbdc cards 8dc5d4a0da7c Revert "mt76: mt7915: fix vif sta index for DBDC" 8c796a33781c mt76: mt7915: only set int1 when using the second hif 4eb5caaf6cc1 mt76: reduce q->lock hold time 0714890bf0fd mt76: mt7615: reduce VHT maximum MPDU length 2f85aa5cbc62 mt76: mt7915: avoid writes to MT_PCIE_RECOG_ID when not using gen1 devices 8696919d9aae mt76: dma: fix a possible memory leak in mt76_add_fragment()
Paul Spooren [Wed, 27 Jan 2021 03:16:36 +0000 (17:16 -1000)]
rules: fix COMMITCOUNT logic
The newly added $(COMMITCOUNT) variable was wrongly increased by plus
one. The addition should have been only added to $(AUTORELEASE) as
OpenWrt traditionally starts counting at one rather than zero.
$(AUTORELEASE) counts the commits since the last bump, which is zero on
the version bump commit itself.
This commit increases $(AUTORELEASE) by one while leaving $(COMMITCOUNT)
as is.
The base-files package is the only package using $(COMMITCOUNT) so far
and requires a pseudo commit to keep the PKG_RELEASE correct. A non
functional change (Copyright bump) is done in the next commit.
Jeffrey Elms [Wed, 27 Jan 2021 02:28:14 +0000 (18:28 -0800)]
px5g-wolfssl: Fix certificate signature
Certificate signature algorithm was being set after call to
`wc_MakeCert`, resulting in a mismatch between specified signature in
certificate and the actual signature type.
Signed-off-by: Jeffrey Elms <jeff@wolfssl.com>
[fix commit subject, use COMMITCOUNT] Signed-off-by: Paul Spooren <mail@aparcar.org>
Rosen Penev [Thu, 21 Jan 2021 04:51:45 +0000 (20:51 -0800)]
toolchain/libstdcpp: disable dual ABI and default to new
GCC 5.1 changed the std::string ABI in order to properly support C++11.
For compatibility with libraries compiled with the older ABI, that is,
linking between old-abi.so and new-abi.bin, both ABIs are enabled. In
terms of OpenWrt, all packages are compiled with the same toolchain,
which means these issues do not need to be handled.
Most importantly, this results in a significant size reduction of
libstdpp:
Birger Koblitz [Thu, 21 Jan 2021 14:16:24 +0000 (15:16 +0100)]
realtek: add API for the hw tables of RTL83XX/93XX SoCs
Add a table API that has per accss register locking and uses
register description information to handle all table access
through a single set of api calls.