Adrian Schmutzler [Mon, 20 Jul 2020 13:34:18 +0000 (15:34 +0200)]
layerscape: fix indent
Fix indent to be consistent with the rest of the file.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Nelson Cai [Mon, 20 Jul 2020 05:02:27 +0000 (13:02 +0800)]
ramips: fix network setup for Ubiquiti ER-X/ER-X-SFP
The function name ucidef_set_interface_lan_wan does not exist,
use the proper name by adding an "s" and thereby fix network
setup on these devices.
Fixes: 22468cc40c8b (ramips: erx and erx-sfp: fix missing WAN interface)
Signed-off-by: Nelson Cai <niphor@gmail.com>
[commit message/title facelift]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
David Bauer [Mon, 20 Jul 2020 13:08:19 +0000 (15:08 +0200)]
hostapd: enter DFS state if no available channel is found
Previously hostapd would not stop transmitting when a DFS event was
detected and no available channel to switch to was available.
Disable and re-enable the interface to enter DFS state. This way, TX
does not happen until the kernel notifies hostapd about the NOP
expiring.
Signed-off-by: David Bauer <mail@david-bauer.net>
David Bauer [Mon, 20 Jul 2020 13:07:47 +0000 (15:07 +0200)]
mac80211: create channel list for fixed channel operation
Currently a device which has a DFS channel selected using the UCI
channel setting might switch to a non-DFS channel in case no chanlist is
provided (UCI setting "channels") when the radio detects a DFS event.
Automatically add a chanlist consisting of the configured channel when
the device does not operate in auto-channel mode and no chanlist set to
circumvent this issue.
Signed-off-by: David Bauer <mail@david-bauer.net>
Johannes Kimmel [Mon, 20 Jul 2020 06:05:10 +0000 (08:05 +0200)]
vxlan: add capability for multiple fdb entries
Similar to wireguard, vxlan can configure multiple peers or add specific
entries to the fdb for a single mac address.
While you can still use peeraddr/peer6addr option within the proto
vxlan/vxlan6 section to not break existing configurations, this patch
allows to add multiple sections that conigure fdb entries via the bridge
command. As such, the bridge command is now a dependency of the vxlan
package. (To be honest without the bridge command available, vxlan isn't
very much fun to use or debug at all)
Field names are taken direclty from the bridge command.
Example with all supported parameters, since this hasn't been documented so
far:
config interface 'vx0'
option proto 'vxlan6' # use vxlan over ipv6
# main options
option ip6addr '2001:db8::1' # listen address
option tunlink 'wan6' # optional if listen address given
option peer6addr '2001:db8::2' # now optional
option port '8472' # this is the standard port under linux
option vid '42' # VXLAN Network Identifier to use
option mtu '1430' # vxlan6 has 70 bytes overhead
# extra options
option rxcsum '0' # allow receiving packets without checksum
option txcsum '0' # send packets without checksum
option ttl '16' # specifies the TTL value for outgoing packets
option tos '0' # specifies the TOS value for outgoing packets
option macaddr '11:22:33:44:55:66' # optional, manually specify mac
# default is a random address
Single peer with head-end replication. Corresponds to the following call
to bridge:
$ bridge fdb append 00:00:00:00:00:00 dev vx0 dst 2001:db8::3
config vxlan_peer
option vxlan 'vx0'
option dst '2001:db8::3' # always required
For multiple peers, this section can be repeated for each dst address.
It's possible to specify a multicast address as destination. Useful when
multicast routing is available or within one lan segment:
config vxlan_peer
option vxlan 'vx0'
option dst 'ff02::1337' # multicast group to join.
# all bum traffic will be send there
option via 'eth1' # for multicast, an outgoing interface needs
# to be specified
All available peer options for completeness:
config vxlan_peer
option vxlan 'vx0' # the interface to configure
option lladdr 'aa:bb:cc:dd:ee:ff' # specific mac,
option dst '2001:db8::4' # connected to this peer
option via 'eth0.1' # use this interface only
option port '4789' # use different port for this peer
option vni '23' # override vni for this peer
option src_vni '123' # see man 3 bridge
Signed-off-by: Johannes Kimmel <fff@bareminimum.eu>
Johannes Kimmel [Mon, 20 Jul 2020 06:05:09 +0000 (08:05 +0200)]
vxlan: remove mandatory peeraddr
vxlan can be configured without a peer address. This is used to prepare
an interface and add peers later.
Fixes: FS#2743
Signed-off-by: Johannes Kimmel <fff@bareminimum.eu>
Acked-by: Matthias Schiffer <mschiffer@universe-factory.net>
Adrian Schmutzler [Wed, 8 Jul 2020 09:08:17 +0000 (11:08 +0200)]
tplink-safeloader: expand support list for TP-Link CPE210 v3
This adds new strings to the support list for the TP-Link CPE210 v3
that are supposed to work with the existing setup.
Without it, the factory image won't be accepted by the vendor UI on
these newer revisions.
Tested on a CPE210 v3.20 (EU).
Ref: https://forum.openwrt.org/t/build-for-cpe210-v3-20/68000
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Kevin Darbyshire-Bryant [Mon, 29 Jun 2020 15:26:42 +0000 (16:26 +0100)]
dnsmasq: bump to 2.82
This fixes a nasty problem introduced in 2.81 which causes random
crashes on systems where there's significant DNS activity over TCP. It
also fixes DNSSEC validation problems with zero-TTL DNSKEY and DS
records.
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Daniel Golle [Mon, 20 Jul 2020 03:36:58 +0000 (04:36 +0100)]
procd: bump to git HEAD once again
Further complete OCI container support in ujail:
f5f305e jail: move /tmp/resolv.conf.d to /dev/resolv.conf.d
6f078ae jail: add support for defining devices
686cf7a jail: actually apply filesystem-specific mount options
f91009a jail: refactor default mounts into new structure
66ae2d9 jail: re-implement /proc/sys/net read-write in netns hack
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Dustin Gathmann [Sun, 19 Jul 2020 22:07:44 +0000 (00:07 +0200)]
lantiq/xrx200: make WLAN button responsive on Fritzbox 7360 & 7362
Pressing the 'WLAN' button should enable/disable wireless activity.
Currently, the button is mapped to the KEY_WLAN, which will not
have this effect.
This patch changes the mapping of the WLAN button, so a button
press will emit an action for the 'rfkill' key instead of 'wlan'.
Apparently, this is what stock OpenWRT expects.
This fix is analogous to the preceding patch for Fritzbox 3370.
Signed-off-by: Dustin Gathmann <dzsoftware@posteo.org>
Dustin Gathmann [Wed, 20 May 2020 23:22:53 +0000 (01:22 +0200)]
lantiq/xrx200: fix WLAN button actions for Fritzbox 3370
The WLAN button actions are reversed, i.e. pressing the button emits a
'released' action, and vice versa.
This can easily be checked by adding
logger -t button_action "$BUTTON $ACTION"
as the second line of /etc/rc.button/rfkill, and using logread to read
the events (assuming the preceding patch has been applied).
Defining the GPIO as ACTIVE_LOW corrects this behavior.
Signed-off-by: Dustin Gathmann <dzsoftware@posteo.org>
Dustin Gathmann [Wed, 20 May 2020 22:13:43 +0000 (00:13 +0200)]
lantiq/xrx200: make WLAN button responsive on Fritzbox 3370
Pressing the 'WLAN' button should enable/disable wireless activity.
However, on the Fritzbox 3370 this doesn't have an effect.
This patch changes the mapping of the physical WLAN button, so a button
press will emit an action for the 'rfkill' key instead of 'wlan'.
Apparently, this is what stock OpenWRT expects, and also what is
implemented for most other devices.
Signed-off-by: Dustin Gathmann <dzsoftware@posteo.org>
Daniel Golle [Sun, 19 Jul 2020 18:34:46 +0000 (19:34 +0100)]
procd: update to git HEAD
9eddf0f jail: fix hooks
1b1286b jail: parse and apply OCI sysctl values
c049047 jail: implement OCI user additionalGIDs
0e1920c jail: read and apply umask from OCI if defined
1c46cc3 jail: parse and apply POSIX rlimits
76adac5 jail: /proc/$pid/oom_score_adj to OCI defined oomScoreAdj
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Alexander Müller [Fri, 17 Jul 2020 16:46:19 +0000 (18:46 +0200)]
ramips: fix flash layout for TP-Link TL-WR841N v14
The config partition was missing from the flash layout of the device.
Although the stock firmware resets a corrupted config partition to the
default values, the TFTP flash with an image bigger than 0x3d0000 will
truncate the image as the bootloader only copies 0x3d0000 bytes to flash
during TFTP flashing.
Fixed by adding the config partition and shrinking the firmware
partition.
Fixes: 3fd97c522bb7 ("ramips: add support for TP-Link TL-WR841n v14")
Signed-off-by: Alexander Müller <donothingloop@gmail.com>
Adrian Schmutzler [Fri, 17 Jul 2020 09:23:16 +0000 (11:23 +0200)]
ramips: remove incorrect mtd-eeprom for TP-Link TL-WR841N v14
The factory partition on this device is only 64k in size, so having
mediatek,mtd-eeprom = <&factory 0x10000> would place the EEPROM data
after the end of the flash. As can be verified against the TP-Link
GPL sources, which contain the EEPROM data as binary blob, the actual
address for the EEPROM data is 0x0.
Since 0x0 is default for MT7628, the incorrect line is just removed.
This error is the reason for the abysmal Wifi performance that people
are complaining about for the WR841Nv14.
Fixes: 3fd97c522bb7 ("ramips: add support for TP-Link TL-WR841n v14")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
David Bauer [Sat, 18 Jul 2020 20:12:19 +0000 (22:12 +0200)]
ramips: don't create switch config for VIXMINI
Don't create UCI switch config for the GL.iNet microuter-N300 and
VIXMINI. These devices only have a single LAN port.
Creating the switch config makes usage of VLANs more complicated,
as they would have to be configured on the MAC as well as the "switch".
Signed-off-by: David Bauer <mail@david-bauer.net>
Daniel Golle [Fri, 17 Jul 2020 10:59:16 +0000 (11:59 +0100)]
procd: bump to git HEAD
8d5208f jail: fix false return in case of nofail mount
b41f76b procd: fix compile if procd-ujail is not selected
86a5105 jail: fs: fix build on uClibc-ng
bfce7d1 jail: fix some more mount options
268126a jail: add support for maskedPaths and readonlyPaths
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Adrian Schmutzler [Fri, 17 Jul 2020 10:09:57 +0000 (12:09 +0200)]
lantiq: move 01_led_migration script to subtargets
Split the /etc/uci-defaults/01_led_migration scripts into subtargets
as already done for most of the other base-files.
While this introduces a minor amount of code duplication, it still
is considered an improvement, as device-specific settings are kept
together in the subtargets' base-files and the script at hand can be
removed entirely for two of the subtargets not needing it.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Martin Schiller [Fri, 17 Jul 2020 03:58:19 +0000 (05:58 +0200)]
ltq-*dsl-app: dsl_control: remove unneeded check for lantiq_dsl.sh
This file is always present because it is part of the ltq-dsl-base
package on which these packages depend.
This check would not have been necessary in the past, because the script
was part of the TARGET_LANTIQ on which these packages also depend.
Signed-off-by: Martin Schiller <ms@dev.tdt.de>
Martin Schiller [Wed, 21 Aug 2019 07:06:54 +0000 (09:06 +0200)]
lantiq: move dsl related base-files into own package
It does not make sense to install this components on lantiq systems
where the dsl subsystem is not needed/used.
This also makes it possible to use the files also on other targets.
(hopefully ipq401x / FritzBox 7530 in the near future)
Signed-off-by: Martin Schiller <ms.3headeddevs@gmail.com>
Adrian Schmutzler [Tue, 14 Jul 2020 10:01:51 +0000 (12:01 +0200)]
ramips: move redundant console setup to mt7621 SoC DTSI
For mt7621, console is set up via DTS bootargs individually in
device DTS/DTSI files. However, 44 of 74 statements use the
following setting:
chosen {
bootargs = "console=ttyS0,57600";
};
Therefore, don't repeat ourselves and move that definition to the SoC
DTSI file to serve as a default value.
This patch is cosmetic.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
John Audia [Thu, 16 Jul 2020 11:03:17 +0000 (07:03 -0400)]
kernel: bump 5.4 to 5.4.52
update_kernel.sh refreshed all patches, no human interaction was needed
Build system: x86_64
Run-tested: Netgear R7800 (ipq806x)
Signed-off-by: John Audia <graysky@archlinux.us>
Salvatore Mesoraca [Wed, 17 Jun 2020 13:07:58 +0000 (14:07 +0100)]
ramips: add arl_table support for MT7530
Use switch.h API to expose MT7530's ARL table to
user space.
Signed-off-by: Salvatore Mesoraca <salvatore@samknows.com>
Rosen Penev [Tue, 14 Jul 2020 05:12:52 +0000 (22:12 -0700)]
lzo: fix pkgconfig paths
The last commit to this package that added the pkgconfig file did not
fix the paths to point to the prefix.
This allows packages to find lzo properly.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Alberto Bursi [Sun, 12 Jul 2020 13:35:54 +0000 (15:35 +0200)]
mvebu: add Kobol Helios 4 device
The Helios 4 is a NAS from Kobol
that is powered by an Armada 38x
MicroSOM from Solidrun, similarly
to Clearfog.
This device has:
-Armada 38x CPU
(dual core ARMv7 1.6 Ghz)
-2 GB of ECC RAM
-Gigabit ethernet (Marvell)
-2x USB 3.0 ports
-4x Sata 3.0 ports
-i2c header (J9 |>GND|SDA|SCL|VCC)
-2x 3-pin fan headers with PWM
-micro-usb port is a TTL/UART to
USB converter connected to TTL
-MicroSD card slot
-System, 4xSata and 1xUSB LEDs
NOT WORKING: fan control
Fan Control requires a kernel patch
that is available in the Armbian
project (the "default firmware"
of this device) and named
mvebu-gpio-remove-hardcoded
-timer-assignment
This patch isn't acceptable
by OpenWrt, it should be upstreamed.
I also have that patch in my own
local OpenWrt builds,
in case you want a more
clean and less confusing patch
for upstreaming.
To install, write the disk image
on a micro SD card with dd or
win32 disk imager, insert the
card in the slot.
Check that the dip switch battery
for boot selection is as follows
Switch 1 and 2 down/off, switches
3, 4, 5 up/on.
Signed-off-by: Alberto Bursi <bobafetthotmail@gmail.com>
Alberto Bursi [Wed, 3 Jun 2020 06:19:51 +0000 (08:19 +0200)]
uboot-mvebu: add uboot for helios 4
add u-boot for Helios 4 NAS
Signed-off-by: Alberto Bursi <bobafetthotmail@gmail.com>
Hans Dedecker [Thu, 16 Jul 2020 20:14:30 +0000 (22:14 +0200)]
nat46: update to latest git HEAD
ac712ad nat46-netdev: Add support for removing a rule
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Mateus B. Cassiano [Wed, 15 Jul 2020 21:45:39 +0000 (17:45 -0400)]
ramips: add support for D-Link DIR-867/DIR-882 A1
This patch adds support for D-Link DIR-867 A1 and D-Link DIR-882 A1. Given
the similarity of these devices, this patch also introduces a common DTS
shared between DIR-867 A1, DIR-878 A1 and DIR-882 A1.
Specifications:
* Board: AP-MTKH7-0002
* SoC: MediaTek MT7621AT
* RAM: 128 MB (DDR3)
* Flash: 16 MB (SPI NOR)
* WiFi: MediaTek MT7615N (x2)
* Switch: 1 WAN, 4 LAN (Gigabit)
* Ports: 1 USB 2.0, 1 USB 3.0
* Buttons: Reset, WiFi Toggle, WPS
* LEDs: Power (green/orange), Internet (green/orange), WiFi 2.4G (green),
WiFi 5G (green), USB 2.0 (green), USB 3.0 (green)
Notes:
* WiFi 2.4G and WiFi 5G LEDs are wired directly to the wireless chips
* DIR-867 wireless chips are limited to 3x3 streams at hardware level
* USB ports and related LEDs available only on DIR-882
Serial port:
* Parameters: 57600, 8N1
* Location: J1 header (close to the Reset, WiFi and WPS buttons)
* Pinout: 1 - VCC
2 - RXD
3 - TXD
4 - GND
Installation:
* D-Link Recovery GUI: power down the router, press and hold the reset
button, then re-plug it. Keep the reset button pressed until the power
LED starts flashing orange, manually assign a static IP address under
the 192.168.0.xxx subnet (e.g. 192.168.0.2) and go to http://192.168.0.1
* Some modern browsers may have problems flashing via the Recovery GUI,
if that occurs consider uploading the firmware through cURL:
curl -v -i -F "firmware=@file.bin" 192.168.0.1
Signed-off-by: Mateus B. Cassiano <mbc07@live.com>
[move DEVICE_VARIANT to individual definitions]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Santiago Rodriguez-Papa [Thu, 16 Jul 2020 00:24:43 +0000 (20:24 -0400)]
ramips: add support for Linksys EA7300 v1
Specifications:
* SoC: MediaTek MT7621A (880 MHz 2c/4t)
* RAM: Nanya NT5CC128M16IP-DIT (256M DDR3-1600)
* Flash: Macronix MX30LF1G18AC-TI (128M NAND)
* Eth: MediaTek MT7621A (10/100/1000 Mbps x5)
* Radio: MT7615N (2.4 GHz & 5 GHz)
4 antennae: 1 internal and 3 non-deatachable
* USB: 3.0 (x1)
* LEDs:
White (x1 logo)
Green (x6 eth + wps)
Orange (x5, hardware-bound)
* Buttons:
Reset (x1)
WPS (x1)
Everything works! Been running it for a couple weeks now and haven't had
any problems. Please let me know if you run into any.
Installation:
Flash factory image through GUI.
This might fail due to the A/B nature of this device. When flashing, OEM
firmware writes over the non-booted partition. If booted from 'A',
flashing over 'B' won't work. To get around this, you should flash the
OEM image over itself. This will then boot the router from 'B' and
allow you to flash OpenWRT without problems.
Reverting to factory firmware:
Hard-reset the router three times to force it to boot from 'B.' This is
where the stock firmware resides. To remove any traces of OpenWRT from
your router simply flash the OEM image at this point.
Signed-off-by: Santiago Rodriguez-Papa <contact@rodsan.dev>
[use v1 only, minor DTS adjustments, use LINKSYS_HWNAME and add it to
DEVICE_VARS, wrap DEVICE_PACKAGES, adjust commit message/title]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Wed, 15 Jul 2020 18:08:22 +0000 (20:08 +0200)]
ramips: provide common definition for ELECOM WRC GS devices
Add a common definition for ELECOM WRC "GS" devices to mt7621.mk
to not repeat the same assignments five times.
To keep the naming consistent, slightly rename the DTSI and the
factory image recipe as well.
Note that elecom_wrc-1167ghbk2-s uses a slightly different build
recipe for the factory image, so we keep it separate.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: INAGAKI Hiroshi <musashino.open@gmail.com> [WRC-1750GSV]
INAGAKI Hiroshi [Wed, 15 Jul 2020 04:13:01 +0000 (13:13 +0900)]
ramips: add support for ELECOM WRC-1750GS/GSV
ELECOM WRC-1750GS is a 2.4/5 GHz band 11ac (Wi-Fi 5) router, based on
MT7621A.
WRC-1750GSV has the same hardware with WRC-1750GS.
Specification:
- SoC : MediaTek MT7621A
- RAM : DDR3 128 MiB
- Flash : SPI-NOR 16 MiB
- WLAN : 2.4/5 GHz 3T3R (2x MediaTek MT7615)
- Ethernet : 10/100/1000 Mbps x5
- Switch : MediaTek MT7530 (SoC)
- LED/keys : 4x/6x (2x buttons, 1x slide-switch)
- UART : through-hole on PCB
- J4: 3.3V, GND, TX, RX from ethernet port side
- 57600n8
- Power : 12VDC, 1.5A
Flash instruction using factory image:
1. Boot WRC-1750GS (or WRC-1750GSV) normally
2. Access to "http://192.168.2.1/" and open firmware update page
("ファームウェア更新")
3. Select the OpenWrt factory image and click apply ("適用") button
for WRC-1750GS : wrc-1750gs-squashfs-factory.bin
for WRC-1750GSV: wrc-1750gsv-squashfs-factory.bin
4. Wait ~120 seconds to complete flashing
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
John Crispin [Thu, 16 Jul 2020 07:18:28 +0000 (09:18 +0200)]
mediatek: backport latest pci/e driver from upstream
Signed-off-by: John Crispin <john@phrozen.org>
John Crispin [Thu, 16 Jul 2020 07:16:34 +0000 (09:16 +0200)]
mediatek: generate UBI images for the rev board
Signed-off-by: John Crispin <john@phrozen.org>
John Crispin [Thu, 16 Jul 2020 07:14:49 +0000 (09:14 +0200)]
mediatek: minor fix to eip97 driver
This patch makes the driver work on the newer v2.3 core.
Signed-off-by: John Crispin <john@phrozen.org>
Adrian Schmutzler [Wed, 15 Jul 2020 16:41:57 +0000 (18:41 +0200)]
ath79: harmonize model names for Ubiquiti devices
This harmonizes the model names for the ath79 Ubiquiti devices by
applying a few minor cosmetic adjustments:
- Removes hyphens where they are not found in the product names
(Ubiquiti uses hyphens only for the abbreviated version names
like UAP-AC-PRO which we don't use anyway.)
- Add (XM) suffix for DTS model strings to help with distinguishing
them from their XW counterparts.
- Remove DEVICE_VARIANT for LAP-120 which actually was an alternate
device name.
- Generally make DTS model names and those from generic-ubnt.mk
more consistent.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Sun, 10 May 2020 14:20:55 +0000 (16:20 +0200)]
base-files: replace backticks in lib/upgrade/nand.sh
This replaces deprecated backticks by more versatile $(...) syntax.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Mon, 24 Feb 2020 15:57:38 +0000 (16:57 +0100)]
package: drop PKG_VERSION for purely local packages
In the package guidelines, PKG_VERSION is supposed to be used as
"The upstream version number that we're downloading", while
PKG_RELEASE is referred to as "The version of this package Makefile".
Thus, the variables in a strict interpretation provide a clear
distinction between "their" (upstream) version in PKG_VERSION and
"our" (local OpenWrt trunk) version in PKG_RELEASE.
For local (OpenWrt-only) packages, this implies that those will only
need PKG_RELEASE defined, while PKG_VERSION does not apply following
a strict interpretation. While the majority of "our" packages actually
follow that scheme, there are also some that mix both variables or
have one of them defined but keep them at "1".
This is misleading and confusing, which can be observed by the fact
that there typically either one of the variables is never bumped or
the choice of the variable to increase depends on the person doing the
change.
Consequently, this patch aims at clarifying the situation by
consistently using only PKG_RELEASE for "our" packages. To achieve
that, PKG_VERSION is removed there, bumping PKG_RELEASE where
necessary to ensure the resulting package version string is bigger
than before.
During adjustment, one has to make sure that the new resulting composite
package version will not be considered "older" than the previous one.
A useful tool for evaluating that is 'opkg compare-versions'. In
principle, there are the following cases:
1. Sole PKG_VERSION replaced by sole PKG_RELEASE:
In this case, the resulting version string does not change, it's
just the value of the variable put in the file. Consequently, we
do not bump the number in these cases so nobody is tempted to
install the same package again.
2. PKG_VERSION and PKG_RELEASE replaced by sole PKG_RELEASE:
In this case, the resulting version string has been "version-release",
e.g. 1-3 or 1.0-3. For this case, the new PKG_RELEASE will just
need to be higher than the previous PKG_VERSION.
For the cases where PKG_VERSION has always sticked to "1", and
PKG_RELEASE has been incremented, we take the most recent value of
PKG_RELEASE.
Apart from that, a few packages appear to have developed their own
complex versioning scheme, e.g. using x.y.z number for PKG_VERSION
_and_ a PKG_RELEASE (qos-scripts) or using dates for PKG_VERSION
(adb-enablemodem, wwan). I didn't touch these few in this patch.
Cc: Hans Dedecker <dedeckeh@gmail.com>
Cc: Felix Fietkau <nbd@nbd.name>
Cc: Andre Valentin <avalentin@marcant.net>
Cc: Matthias Schiffer <mschiffer@universe-factory.net>
Cc: Jo-Philipp Wich <jo@mein.io>
Cc: Steven Barth <steven@midlink.org>
Cc: Daniel Golle <dgolle@allnet.de>
Cc: John Crispin <john@phrozen.org>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Wed, 15 Jul 2020 14:49:36 +0000 (16:49 +0200)]
vxlan: bump and change to PKG_RELEASE
Bumping package version has been overlooked in a previous commit.
While at it, use PKG_RELEASE instead of PKG_VERSION, as the latter
is meant for upstream version number only.
(The effective version string for the package would be "3" in both
cases, so there is no harm done for version comparison.)
Fixes: 0453c3866feb ("vxlan: fix udp checksum control")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Vieno Hakkerinen [Fri, 10 Jul 2020 21:23:01 +0000 (23:23 +0200)]
ath79: add support for Ubiquiti PowerBridge M
This adds support for the Ubiquiti PowerBridge M, which has the same
board/LEDs as the Bullet M XM, but different case and antennas.
Specifications:
- AR7241 SoC @ 400 MHz
- 64 MB RAM
- 8 MB SPI flash
- 1x 10/100 Mbps Ethernet, 24 Vdc PoE-in
- Internal antenna: 25 dBi
- POWER/LAN green LEDs
- 4x RSSI LEDs (red, orange, green, green)
- UART (115200 8N1) on PCB
Flashing via WebUI:
Upload the factory image via the stock firmware web UI.
Attention: airOS firmware versions >= 5.6 have a new bootloader with
an incompatible partition table!
Please downgrade to <= 5.5 _before_ flashing OpenWrt!
Refer to the device's Wiki page for further information.
Flashing via TFTP:
Same procedure as other Bullet M (XM) boards.
- Use a pointy tool (e.g., pen cap, paper clip) and keep the reset
button on the device or on the PoE supply pressed
- Power on the device via PoE (keep reset button pressed)
- Keep pressing until LEDs flash alternatively LED1+LED3 =>
LED2+LED4 => LED1+LED3, etc.
- Release reset button
- The device starts a TFTP server at 192.168.1.20
- Set a static IP on the computer (e.g., 192.168.1.21/24)
- Upload via tftp the factory image:
$ tftp 192.168.1.20
tftp> bin
tftp> trace
tftp> put openwrt-ath79-generic-xxxxx-ubnt_powerbridge-m-squashfs-factory.bin
Signed-off-by: Vieno Hakkerinen <vieno@hakkerinen.eu>
David Bauer [Wed, 15 Jul 2020 07:56:05 +0000 (09:56 +0200)]
ravpower-mcu: bump PKG_RELEASE
Fixes commit
b94d1a2d2786 ("ravpower-mcu: remove target dependency")
Signed-off-by: David Bauer <mail@david-bauer.net>
Johannes Kimmel [Mon, 8 Jun 2020 14:14:43 +0000 (16:14 +0200)]
vxlan: fix udp checksum control
So far, passing "rxcsum" and "txcsum" had no effect.
Fixes: 95ab18e0124e ("vxlan: add options to enable and disable UDP
checksums")
Signed-off-by: Johannes Kimmel <fff@bareminimum.eu>
[add Fixes:]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
David Bauer [Tue, 14 Jul 2020 22:01:36 +0000 (00:01 +0200)]
ravpower-mcu: remove target dependency
Remove the target dependency as the tool is also usable with other
battery-powered routers.
Signed-off-by: David Bauer <mail@david-bauer.net>
Tony Ambardar [Tue, 30 Jun 2020 05:07:19 +0000 (22:07 -0700)]
iproute2: tc: fix missing em_ipset module
Feature detection doesn't recognize ipset v7 use on kernel v5.x systems
and thus disables the tc ematch function em_ipset.
- backport patch:
* 002-configure-support-ipset-v7.patch:
650591a7a70c configure: support ipset version 7 with kernel version 5
Fixes: 4e0c54bc5bc8 ("kernel: add support for kernel 5.4")
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
Tony Ambardar [Tue, 30 Jun 2020 05:04:54 +0000 (22:04 -0700)]
iproute2: tc: fix dynamic symbol table size optimization
Recent iproute2 5.x versions modified the symbols resolved for plugins,
causing "tc .. action xt .." to fail. Update the list of symbols to fix.
Fixes: b61495409bb3 ("iproute2: tc: reduce size of dynamic symbol table")
Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
John Crispin [Tue, 14 Jul 2020 08:07:32 +0000 (10:07 +0200)]
ipq40xx: fix ethernet vlan double tagging
As the the SoC uses implicit vlan tagging for dual MAC support, the
offload feature breaks when using double tagging.
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: John Crispin <john@phrozen.org>
John Crispin [Tue, 14 Jul 2020 07:50:31 +0000 (09:50 +0200)]
ipq40xx: merge all ar40xx patches into one single patch
Signed-off-by: John Crispin <john@phrozen.org>
Adrian Schmutzler [Tue, 14 Jul 2020 14:59:44 +0000 (16:59 +0200)]
ipq806x: really fix aliases node for Qualcomm IPQ8064/DB149
Having looked at this again, it appears that only gsbi2_serial
is actually enabled for this device, so the entry in the broken
aliases node was correct.
Therefore, this needs to set its own serial0 instead of inheriting
"serial0 = &gsbi4_serial;" from DTSI. Do this with the correctly
named aliases node now.
Fixes: c83f7b6d217f ("ipq806x: fix aliases node name for Qualcomm
IPQ8064/DB149")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Tue, 14 Jul 2020 10:23:53 +0000 (12:23 +0200)]
ipq806x: use consistent DT labels for gsbiX_serial
Kernel uses the label gsbiX_serial, so let's adjust our labels to
this naming scheme.
This is cosmetic, and actually only already existing gsbi4_serial
has been used at all.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Fri, 3 Jul 2020 13:50:42 +0000 (15:50 +0200)]
ipq806x: fix aliases node name for Qualcomm IPQ8064/DB149
This device uses a node incorrectly named "alias" instead of
"aliases" since it was introduced.
Remove it without replacement, as the definitions in it don't
seem to be required anyway:
The serial0 definition has never been effective anyway and this
would be the only device deviating from the common setting
"serial0 = &gsbi4_serial;" for ipq8064. (So, maybe the wrong
node prevented us from finding out about the wrong serial
definition?)
The mdio-gpio0 alias was supposed to be removed in
d2a2eb7e48f6
anyway, the redundant definition in the alias node was just
overlooked back then.
Fixes: 0fd202f3e563 ("ipq806x: add db149 dts files")
Fixes: d2a2eb7e48f6 ("ipq806x: replace caf nss-gmac driver by upstream stmmac")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Daniel Bailey [Mon, 13 Jul 2020 22:21:50 +0000 (15:21 -0700)]
procd: allow optional watchdog instance parameter
Optional instance watchdog timeout and watchdog mode can be set by
adding: procd_set_param $mode $timeout
$mode is an integer [0-1] representing instance watchdog mode of
operation:
0 = disabled
1 = passive mode, client must periodically poke watchdog via ubus
$timeout is an integer representing how often, in seconds, the watchdog must be poked.
Signed-off-by: Daniel Bailey <danielb@meshplusplus.com>
Daniel Golle [Mon, 13 Jul 2020 23:23:11 +0000 (00:23 +0100)]
procd: update to git HEAD
639df57 uxc: fix build with uClibc-ng
b2230e4 procd: add service instance watchdog
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Roger Pueyo Centelles [Tue, 10 Mar 2020 18:31:20 +0000 (19:31 +0100)]
ath79: use rgmii-id instead of rgmii in ubnt,lap-120
Since commit
6f2e1b7485 (ath79: disable delays on AT803X config init)
the incoming incoming traffic on the ubnt,lap-120 devices Ethernet
port was not making it through. Using rgmii-id instead of rgmii (same
configuration as ubnt,litebeam-ac-gen2) fixes it.
Fixes FS#2893.
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Paul Spooren [Sun, 12 Jul 2020 04:44:55 +0000 (18:44 -1000)]
build,json: fix compatibility with Python 3.5
The f-string feature was introduced in Python 3.6. As Buildbots may run
on Debian 9, which comes per default with Python 3.5, this would cause
an issue. Instead of f-strings use the *legacy* `.format()` function.
Signed-off-by: Paul Spooren <mail@aparcar.org>
Mathieu Martin-Borret [Fri, 10 Jul 2020 03:49:20 +0000 (13:49 +1000)]
ramips: add support for D-Link DIR-878 A1
Specifications:
SoC: MT7621AT
RAM: 128MB
Flash: 16MB NOR SPI flash
WiFi: MT7615N (2.4GHz) and MT7615N (5Ghz)
LAN: 5x1000M
Firmware layout is Uboot with extra 96 bytes in header
Base PCB is AP-MTKH7-0002
LEDs Power Green,Power Orange,Internet Green,Internet Orange
LEDs "2.4G" Green & "5G" Green connected directly to wifi module
Buttons Reset,WPS,WIFI
Flashing instructions:
Upload image via emergency recovery mode
Push and hold reset button (on the back of the device) until power led
starts flashing (about 10 secs or so) while powering the device on.
Give it ~30 seconds, to boot the recovery mode GUI
Connect your client computer to LAN1 of the device
Set your client IP address manually to 192.168.0.2 / 255.255.255.0.
Call the recovery page for the device at http://192.168.0.1
Use the provided emergency web GUI to upload and flash a new firmware to
the device. Some browsers/OS combinations are known not to work, so if
you don't see the percentage complete displayed and moving within a few
seconds, restart the procedure from scratch and try anoher one,
or try the command line way.
Alternative method using command line on Linux:
curl -v -i -F "firmware=@openwrt-xxxx-squashfs-factory.bin" 192.168.0.1
Signed-off-by: Mathieu Martin-Borret <mathieu.mb@protonmail.com>
[use of generic uimage-padhdr in image generation code]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Mathieu Martin-Borret [Fri, 10 Jul 2020 03:40:58 +0000 (13:40 +1000)]
kernel: mtdsplit_uimage: add SGE parser
Adding SGE parser for SGE (T&W) Shenzhen Gongjin Electronics
to add 96 bytes padding the the firmware image
Signed-off-by: Mathieu Martin-Borret <mathieu.mb@protonmail.com>
Hans Dedecker [Mon, 13 Jul 2020 20:36:47 +0000 (22:36 +0200)]
glibc: fix avx2 strncmp offset compare condition check [BZ #25933]
4e8a33a959 NEWS: Mention BZ 25933 fix
fd15ba932d Fix avx2 strncmp offset compare condition check [BZ #25933
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
David Bauer [Mon, 13 Jul 2020 15:44:22 +0000 (17:44 +0200)]
rockchip: don't disable timer LED trigger
The timer LED trigger is enabled in all targets (except for lantiq
xway-legacy). It's necessary for the OpenWrt preinit LED pattern to
work.
Signed-off-by: David Bauer <mail@david-bauer.net>
David Bauer [Mon, 13 Jul 2020 15:44:07 +0000 (17:44 +0200)]
rockchip: use downstream GPIO button implementation
Use the OpenWrt netlink GPIO button implementation to forward button
presses to procd. This is necessary to make failsafe-mode access
using a button possible.
Signed-off-by: David Bauer <mail@david-bauer.net>
Daniel Golle [Mon, 13 Jul 2020 11:19:08 +0000 (12:19 +0100)]
procd: update to git HEAD
aed7fb3 procd: fix compilation with uClibc-ng
9d0f831 jail: fix segfault with len(uidmap/gidmap) > 1
42a6217 jail: consider PATH for argv in OCI container
83f4b72 jail: actually chdir into OCI defined CWD
fc9f614 jail: parse and run OCI hooks
02eec92 jail: memory allocation fixes
71e75f4 jail: refactor mount support to cover OCI spec
b586e7d jail: don't make mount source read-only
dacab12 uxc: fix 'stop' command
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Adrian Schmutzler [Wed, 8 Jul 2020 12:32:31 +0000 (14:32 +0200)]
bcm47xx: disable image for Linksys WRT160n v3
The device can only hold 3.6 MB, but newer images (since 18.06)
are bigger, so flashing a new version fails.
This disables default build for this device based on the bug report
referenced below.
Fixes: FS#1963
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Fri, 10 Jul 2020 10:00:08 +0000 (12:00 +0200)]
ramips: consolidate Netgear devices for mt7628
This creates a common DTSI and shared image definition for the
relatively similar Netgear devices for mt7628 platform.
As a side effect, this raises SPI flash frequency for the R6120,
as it's expected to work there as well if it works for R6080 and
R6020.
Based on the data from the other devices, it also seems probable
the 5g MAC address for R6120 could be extracted from the caldata,
and the mtd-mac-address there could be dropped.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Jason A. Donenfeld [Mon, 13 Jul 2020 03:37:11 +0000 (21:37 -0600)]
wireguard: bump to 1.0.
20200712
This release brings parity with the commits Linus released a few hours
ago into 5.8-rc5.
* receive: account for napi_gro_receive never returning GRO_DROP
The napi_gro_receive function no longer returns GRO_DROP ever, making
handling GRO_DROP dead code. This commit removes that dead code.
Further, it's not even clear that device drivers have any business in
taking action after passing off received packets; that's arguably out of
their hands.
* device: implement header_ops->parse_protocol for AF_PACKET
WireGuard uses skb->protocol to determine packet type, and bails out if
it's not set or set to something it's not expecting. For AF_PACKET
injection, we need to support its call chain of:
packet_sendmsg -> packet_snd -> packet_parse_headers ->
dev_parse_header_protocol -> parse_protocol
Without a valid parse_protocol, this returns zero, and wireguard then
rejects the skb. So, this wires up the ip_tunnel handler for layer 3
packets for that case.
* queueing: make use of ip_tunnel_parse_protocol
Now that wg_examine_packet_protocol has been added for general
consumption as ip_tunnel_parse_protocol, it's possible to remove
wg_examine_packet_protocol and simply use the new
ip_tunnel_parse_protocol function directly.
* compat: backport ip_tunnel_parse_protocol and ip_tunnel_header_ops
These are required for moving wg_examine_packet_protocol out of
wireguard and into upstream.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Kevin Darbyshire-Bryant [Sun, 12 Jul 2020 12:25:39 +0000 (13:25 +0100)]
scripts/env: Fix
56f813674a scripts/env: use command -v instead of which
We don't need to see how git will be executed and it produces non silent
output on 'scripts/env diff' commands when there are no differences
unlike before.
Re-introduce original silent behaviour.
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Chuanhong Guo [Sun, 12 Jul 2020 08:14:45 +0000 (16:14 +0800)]
ath79: fix dsa binding for TP-Link TL-WR941ND v2
upstream changed dt-bindings for marvell
88e6060 to use mdio-device
and dropped support for legacy bindings.
fix it in our local dts.
Fixes: FS#2524
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Chuanhong Guo [Sun, 12 Jul 2020 07:39:18 +0000 (15:39 +0800)]
ath79: qihoo,c301: use phy-supply for usb vbus
Linux phy subsystem provides support for a phy regulator defined via
phy-supply property. Use it to turn on usb power only when usb is
probed.
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
Tomasz Maciej Nowak [Fri, 10 Jul 2020 17:35:22 +0000 (19:35 +0200)]
mvebu: add support for MACCHIATObin Single Shot
Add support for Marvell MACCHIATObin Single Shot, cortex-a72 based
Marvell ARMADA 8040 Community board. Single Shot was broken as the
device tree is different on the Double Shot Board.
Specifications:
- Quad core Cortex-A72 (up to 2GHz)
- DDR4 DIMM slot with optional ECC and single/dual chip select support
- Dual 10GbE (1/2.5/10GbE) SFP+
2.5GbE (1/2.5GbE) via SFP
1GbE via copper
- SPI Flash
- 3 X SATA 3.0 connectors
- MicroSD connector
- eMMC
- PCI x4 3.0 slot
- USB 2.0 Headers (Internal)
- USB 3.0 connector
- Console port (UART) over microUSB connector
- 20-pin Connector for CPU JTAG debugger
- 2 X UART Headers
- 12V input via DC Jack
- ATX type power connector
- Form Factor: Mini-ITX (170 mm x 170 mm)
More details at http://macchiatobin.net
Installation:
Write the Image to your Micro SD Card and insert it in the
MACCHIATObin Single Shot SD Card Slot.
In the U-Boot Environment:
1. reset U-Boot environment:
env default -a
saveenv
2. prepare U-Boot with boot script:
setenv bootcmd "load mmc 1:1 0x4d00000 boot.scr; source 0x4d00000"
saveenv
or manually (hanging lines indicate wrapped one-line command):
setenv fdt_name armada-8040-mcbin-singleshot.dtb
setenv image_name Image
setenv bootcmd 'mmc dev 1; ext4load mmc 1:1 $kernel_addr
$image_name;ext4load mmc 1:1 $fdt_addr $fdt_name;setenv
bootargs $console root=/dev/mmcblk1p2 rw rootwait; booti
$kernel_addr - $fdt_addr'
saveenv
On newer Bootloaders (18.12) the Variables have been changed, use:
setenv fdt_name armada-8040-mcbin-singleshot.dtb
setenv image_name Image
setenv bootcmd 'mmc dev 1; ext4load mmc 1:1 $kernel_addr_r
$image_name;ext4load mmc 1:1 $fdt_addr_r $fdt_name;setenv
bootargs $console root=/dev/mmcblk1p2 rw rootwait; booti
$kernel_addr_r - $fdt_addr_r'
Reported-by: Alexandra Alth <alexandra@alth.de>
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Tested-by: Alexandra Alth <alexandra@alth.de>
[add specs and installation as provided by Alexandra Alth]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Sat, 11 Jul 2020 16:46:53 +0000 (18:46 +0200)]
scripts/mkits.sh: fix use of printf
Due to a line break, printf was accidentally called with three
arguments instead of two, causing a different output than before.
Fix it by splitting the printf command into two lines.
Fixes: 907053193a1c ("scripts/mkits.sh: replace echo -e with printf")
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Adrian Schmutzler [Fri, 10 Jul 2020 12:16:23 +0000 (14:16 +0200)]
ramips: consolidate recipes with uimage_padhdr
There are already two very similar recipes using uimage_padhdr
in ramips target, and a third one is about to be added.
Make the recipe more generic, so redefinitions are not necessary
anymore.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Bjørn Mork <bjorn@mork.no> [Zyxel WAP6805]
Adrian Schmutzler [Fri, 10 Jul 2020 08:28:13 +0000 (10:28 +0200)]
mvebu: fix support for Marvell 8040 MACCHIATOBin
Between kernels 4.20 and 5.0, a new variant of this board has been
introduced ("Single Shot"), and the existing one has been renamed
with the appendix "Double Shot". [1]
This also adjusted the first compatible in the list:
marvell,armada8040-mcbin -> marvell,armada8040-mcbin-doubleshot
This patch updates the OpenWrt implementation of this device by
adjusting the relevant references to that compatible (i.e., our
board name).
To still provide support for 4.19 with our setup, this adds a
small patch to change the compatible there as well.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=
b1f0bbe2700051886b954192b6c1751233fe0f52
Cc: Tomasz Maciej Nowak <tomek_n@o2.pl>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Reviewed-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
Daniel González Cabanelas [Mon, 22 Jun 2020 19:44:44 +0000 (21:44 +0200)]
bcm63xx: R5010UNv2: fix flash partitions for 16MB flash
The router Nucom R5010UN v2 has the partitions defined for a 8MB flash,
but the flash chip is 16MB size. We are wasting half of the flash.
Fix it and use generic names for partitions.
Fixes: 474cde61234c ("brcm63xx: probe SPI flash through DT")
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
Roman Yeryomin [Fri, 12 Jun 2020 18:43:46 +0000 (21:43 +0300)]
build: improve ccache support
Set CCACHE_DIR to $(TOPDIR)/.ccache and CCACHE_BASEDIR to $(TOPDIR).
This allows to do clean and dirclean. Cache hit rate for test build
after dirclean is ~65%.
If CCACHE is enabled stats are printed out at the end of building process.
CCACHE_DIR config variable allows to override default, which could be useful
when sharing cache with many builds.
cacheclean make target allows to clean the cache.
Changes from v1:
- remove ccache directory using CCACHE_DIR variable
- remove ccache leftovers from sdk and toolchain make files
- introduce CONFIG_CCACHE_DIR variable
- introduce cacheclean make target
Signed-off-by: Roman Yeryomin <roman@advem.lv>
DENG Qingfang [Thu, 4 Jun 2020 04:00:44 +0000 (12:00 +0800)]
ramips: mt7621: refactor set affinity script
The current one only looks for mt76x2e and mt7603e, and
does not work for 2 or more same Wi-Fi chips.
Refactor the script to cover those cases.
Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
Sebastian Kemper [Tue, 9 Jun 2020 17:18:55 +0000 (19:18 +0200)]
ltq-vmmc: update permission handling
The firmware is currently just copied. It can end up with o= on the
device (this is the case for voice_ar9_firmware.bin for instance).
Instead of copying it the Makefile is changed to use the macro
"$(INSTALL_DATA)" in order for the file to be world-readable.
While at it refactor the device node creation in the init script with
loop.
Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
[removed 2nd part with custom group handling for device nodes]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Yangbo Lu [Mon, 29 Jun 2020 08:18:57 +0000 (16:18 +0800)]
layerscape: define IMAGE_SIZE and LS_SYSUPGRADE_IMAGE_SIZE
Define 64m IMAGE_SIZE for flash firmware.bin since the flash size
is 64MB. Define 48m LS_SYSUPGRADE_IMAGE_SIZE for flash sysupgrade.bin
which contains maximum 16MB kernel and 32MB rootfs according to
memory map.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Yangbo Lu [Thu, 28 May 2020 08:02:28 +0000 (16:02 +0800)]
layerscape: support sysupgrade for SD card ext4 rootfs
Support sysupgrade for SD card ext4 rootfs.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Yangbo Lu [Thu, 28 May 2020 04:48:29 +0000 (12:48 +0800)]
layerscape: support sysupgrade for squashfs rootfs
Support sysupgrade for all Layerscape boards with squashfs
rootfs.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Yangbo Lu [Thu, 28 May 2020 05:50:42 +0000 (13:50 +0800)]
layerscape: fix board name for SD card boot
Many Layerscape boards support both flash boot and SD card boot.
And different firmware and sysupgrade.bin are built for the two
boot methods. To identify them, a fix could be done on board name
by adding a postfix "-sdboot" for SD card boot.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Yangbo Lu [Thu, 28 May 2020 04:06:20 +0000 (12:06 +0800)]
layerscape: add compatible for board ls1043ardb
Backport a dts patch which added compatible for ls1043ardb.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Yangbo Lu [Wed, 27 May 2020 03:10:19 +0000 (11:10 +0800)]
layerscape: convert to squashfs rootfs for QSPI NOR boot
There had been an issue in Layerscape QSPI driver for very long
time, which made squashfs,jffs2 rootfs not work on QSPI NOR.
And the ubifs had been used as a workaround.
Now the issue has been fixed. So convert to use squashfs,jffs2
rootfs on QSPI NOR for Layerscape boards (LS1012ARDB/LS1046ARDB/
LS1088ARDB), and update u-boot bootargs for booting.
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Rui Salvaterra [Tue, 7 Jul 2020 13:16:47 +0000 (14:16 +0100)]
busybox: store applet usage messages uncompressed
The rootfs squashfs is already highly (XZ) compressed. Storing the applet
messages in compressed form will increase the entropy and reduce the overall
image compression ratio.
Size diffs (compressed vs uncompressed):
busybox (the executable): 364596 vs 384804 bytes.
OpenWrt target images (the kernel image is unchanged, obviously):
omnia-medkit-openwrt-mvebu-cortexa9-cznic_turris-omnia-initramfs.tar.gz:
9163597 vs
9162531 bytes (1066 bytes difference).
openwrt-mvebu-cortexa9-cznic_turris-omnia-initramfs-kernel.bin:
9161688 vs
9160600 bytes (1088 bytes difference).
openwrt-mvebu-cortexa9-cznic_turris-omnia-sysupgrade.img.gz:
9729550 vs
9729230 bytes (320 bytes difference).
All in all, we save just a little bit over 1 kiB. As an added bonus, we
also don't have to decompress the messages twice, (first from squashfs,
then from the bzip2 message storage).
Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
[added additional size comparision diff detaisl]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Rosen Penev [Fri, 17 Jan 2020 22:38:19 +0000 (14:38 -0800)]
base-files/functions.sh: use command -v instead of which
which must be executed. command -v is a shell builtin.
https://github.com/koalaman/shellcheck/wiki/SC2230
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Petr Štetiar [Sat, 11 Jul 2020 11:31:35 +0000 (13:31 +0200)]
scripts/mkits.sh: fix remaining shellcheck warning
Fixes following shellcheck warning:
In scripts/mkits.sh line 19:
"-k kernel [-D name -d dtb] -o its_file" "$(basename $0)"
^-- SC2086: Double quote to prevent globbing and word splitting.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Rosen Penev [Mon, 6 Jan 2020 02:31:20 +0000 (18:31 -0800)]
scripts/mkits.sh: switch from bash to sh
This no longer needs bash.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 6 Jan 2020 02:31:19 +0000 (18:31 -0800)]
scripts/mkits.sh: fix improper string and array concatenation
Found with shellcheck.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 6 Jan 2020 02:31:18 +0000 (18:31 -0800)]
scripts/mkits.sh: add missing quotes
Found with shellcheck.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 6 Jan 2020 02:31:17 +0000 (18:31 -0800)]
scripts/mkits.sh: replace echo -e with printf
echo flags are not POSIX. printf does the same with added \n.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Petr Štetiar [Sat, 11 Jul 2020 11:24:17 +0000 (13:24 +0200)]
scripts/gen_image_generic.sh: fix more shellcheck warnings
Fixes following shellcheck warnings:
In scripts/gen_image_generic.sh line 20:
cyl=$(( (KERNELSIZE + ROOTFSSIZE) * 1024 * 1024 / (head * sect * 512)))
^-^ SC2034: cyl appears unused. Verify use (or export if used externally).
--
In scripts/gen_image_generic.sh line 34:
[ -n "$PADDING" ] && dd if=/dev/zero of="$OUTPUT" bs=512 seek="$(($ROOTFSOFFSET + $ROOTFSSIZE))" conv=notrunc count="$sect"
^-----------^ SC2004: $/${} is unnecessary on arithmetic variables.
--
In scripts/gen_image_generic.sh line 35:
mkfs.fat -n kernel -C "$OUTPUT.kernel" -S 512 "$(($KERNELSIZE / 1024))"
^---------^ SC2004: $/${} is unnecessary on arithmetic variables.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Rosen Penev [Mon, 6 Jan 2020 02:22:55 +0000 (18:22 -0800)]
scripts/gen_image_generic.sh: use /bin/sh
This has nothing bash specific.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 6 Jan 2020 02:22:54 +0000 (18:22 -0800)]
scripts/gen_image_generic.sh: replace -o with if/&&
-o is not well defined.
Found with shellcheck.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Petr Štetiar [Sat, 11 Jul 2020 11:20:34 +0000 (13:20 +0200)]
scripts/env: fix remaining shellcheck warning
Fixes following shellcheck warning:
In scripts/env line 25:
exit ${1:-1}
^-----^ SC2086: Double quote to prevent globbing and word splitting.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Rosen Penev [Mon, 6 Jan 2020 02:32:38 +0000 (18:32 -0800)]
scripts/env: use read -r instead of read
read mangles backslashes.
Found with shellcheck.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 6 Jan 2020 02:32:37 +0000 (18:32 -0800)]
scripts/env: exit in case of failure to cd
Found with shellcheck.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 6 Jan 2020 02:32:36 +0000 (18:32 -0800)]
scripts/env: replace \! with !
The latter is more standard. The former throws an error under
shellcheck.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Mon, 6 Jan 2020 02:32:35 +0000 (18:32 -0800)]
scripts/env: use command -v instead of which
Simpler and built in to the shell.
Found with shellcheck.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Eneas U de Queiroz [Thu, 20 Feb 2020 21:29:04 +0000 (18:29 -0300)]
build: reduce number of files passed to ipk-remove
Instead of using xargs to pass a huge number of files to
script/ipkg-remove, which will usually pick only one, use a more
restrictive wildcard so that, currently, at the most 325 files are
examined, instead of up to over 2,300. The 325-file package is python,
which is picking up python3* ipks. It is about to be removed.
Runner-up is ddns-scripts with 7 files.
This makes a second run of make package/luci/compile go from
real 16.40s; user 17.42s; sys 2.73s
to
real 10.71s; user 9.51s; sys 1.27s
There is a caveat though: if one were to remove the ABI_VERSION of a
package that ends in a digit [0-9], then the old package ipk will not be
removed from the bin directory by make package/abc2/clean.
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Eneas U de Queiroz [Thu, 20 Feb 2020 21:29:03 +0000 (18:29 -0300)]
build: call ipkg-remove using xargs if #args>=512
The wildcard call to clean up luci package (luci*) can pick up over
2,300 files when the full tree is built. Running make package/luci/clean
or a second run of make package/luci/compile would fail with an
'Argument list too long' error.
To avoid that, a maybe_use_xargs function was created that runs the
command straight as usual if the number of arguments is < 512, or saves
the list in a temporary file and feeds it to xargs otherwise.
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Eneas U de Queiroz [Thu, 20 Feb 2020 21:29:02 +0000 (18:29 -0300)]
build: package-ipkg: avoid calling wildcard twice
Instead of calling $(wildcard) to check if the removal list is empty,
then calling it again to actually remove the files, define a function so
that the arguments are expanded only once when it gets called.
Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
Petr Štetiar [Sat, 11 Jul 2020 11:06:36 +0000 (13:06 +0200)]
toolchain/wrapper.sh: fix remaining shellcheck warnings
Fixes following warnings:
In target/toolchain/files/wrapper.sh line 18:
REALNAME=$(readlink -f $0)
^-- SC2086: Double quote to prevent globbing and word splitting.
--
In target/toolchain/files/wrapper.sh line 20:
REALNAME_BASE=$(basename $REALNAME)
^-------^ SC2086: Double quote to prevent globbing and word splitting.
--
In target/toolchain/files/wrapper.sh line 21:
REALNAME_DIR=$(dirname $REALNAME)
^-------^ SC2086: Double quote to prevent globbing and word splitting.
--
In target/toolchain/files/wrapper.sh line 74:
exec $TARGET_TOOLCHAIN_TRIPLET-$BINARY.bin $GCC_SYSROOT_FLAGS $TARGET_FUNDAMENTAL_CFLAGS $TARGET_ROOTFS_CFLAGS "$@"
^-----------------------^ SC2086: Double quote to prevent globbing and word splitting.
--
In target/toolchain/files/wrapper.sh line 77:
exec $TARGET_TOOLCHAIN_TRIPLET-$BINARY.bin $LD_SYSROOT_FLAGS $TARGET_FUNDAMENTAL_LDFLAGS "$@"
^-----------------------^ SC2086: Double quote to prevent globbing and word splitting.
--
In target/toolchain/files/wrapper.sh line 80:
exec $TARGET_TOOLCHAIN_TRIPLET-$BINARY.bin $TARGET_FUNDAMENTAL_ASFLAGS "$@"
^-----------------------^ SC2086: Double quote to prevent globbing and word splitting.
--
In target/toolchain/files/wrapper.sh line 83:
exec $TARGET_TOOLCHAIN_TRIPLET-$BINARY.bin "$@"
^-----------------------^ SC2086: Double quote to prevent globbing and word splitting.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Rosen Penev [Mon, 30 Dec 2019 03:41:17 +0000 (19:41 -0800)]
toolchain/wrapper.sh: Replace read with read -r
Without -r, backslashes would get mangled.
Found with shellcheck.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Rosen Penev [Fri, 22 Nov 2019 23:09:01 +0000 (15:09 -0800)]
toolchain/gdb: Don't use gdb-arc
GDB got support for ARC with version 8.2. No need for this fork.
Signed-off-by: Rosen Penev <rosenp@gmail.com>