Koen Vandeputte [Thu, 11 Jan 2018 15:04:37 +0000 (16:04 +0100)]
cns3xxx: fix ethernet IRQ imbalance in 4.14
Kernel 4.14 contains more warnings regarding NAPI usage, which showed
following warning:
[ 4016.420000] ------------[ cut here ]------------
[ 4016.430000] WARNING: CPU: 1 PID: 14 at kernel/irq/manage.c:525
__enable_irq+0x3c/0x78
[ 4016.440000] Unbalanced enable for IRQ 51
[ 4016.440000] Modules linked in: ath9k ath9k_common pppoe ppp_async
ath9k_hw ath pppox ppp_generic nf_conntrack_ipv6 mac80211 iptable_nat
ipt_REJECT ipt_MASQUERADE cfg80211 xt_time xt_tcpudp xt_state xt_nat
xt_multiport xt_mark xt_mac xt_limit xt_conntrack xt_comment xt_TCPMSS
xt_REDIRECT xt_LOG slhc nf_reject_ipv4 nf_nat_redirs
[ 4016.500000] CPU: 1 PID: 14 Comm: ksoftirqd/1 Tainted: G W
4.14.11 #0
[ 4016.500000] Hardware name: Gateworks Corporation Laguna Platform
[ 4016.510000] Backtrace:
[ 4016.510000] [<
c010a28c>] (dump_backtrace) from [<
c010a56c>]
(show_stack+0x18/0x1c)
[ 4016.520000] r7:
c059df4b r6:
00000000 r5:
60000093 r4:
00000000
[ 4016.530000] [<
c010a554>] (show_stack) from [<
c048b04c>]
(dump_stack+0x94/0xb4)
[ 4016.530000] [<
c048afb8>] (dump_stack) from [<
c011760c>]
(__warn+0xc8/0xf8)
[ 4016.540000] r7:
c059df4b r6:
c015144c r5:
00000000 r4:
cf863e08
[ 4016.550000] [<
c0117544>] (__warn) from [<
c011767c>]
(warn_slowpath_fmt+0x40/0x48)
[ 4016.550000] r9:
cf863eb0 r8:
00000036 r7:
00000000 r6:
c0636360
r5:
00000033 r4:
cf80a500
[ 4016.560000] [<
c0117640>] (warn_slowpath_fmt) from [<
c015144c>]
(__enable_irq+0x3c/0x78)
[ 4016.570000] r3:
00000033 r2:
c059e0c5
[ 4016.570000] [<
c0151410>] (__enable_irq) from [<
c01514ec>]
(enable_irq+0x64/0x7c)
[ 4016.580000] [<
c0151488>] (enable_irq) from [<
c0335c14>]
(eth_poll+0x28c/0x558)
[ 4016.590000] r5:
d08926c0 r4:
cf894488
[ 4016.590000] [<
c0335988>] (eth_poll) from [<
c03b1718>]
(net_rx_action+0xfc/0x2e8)
[ 4016.600000] r10:
cf863eb8 r9:
cf863eb0 r8:
00000001 r7:
0f7b5000
r6:
c0636360 r5:
cfdeb360
[ 4016.610000] r4:
cf894488
[ 4016.610000] [<
c03b161c>] (net_rx_action) from [<
c0101510>]
(__do_softirq+0xe0/0x228)
[ 4016.620000] r10:
00000100 r9:
c070204c r8:
c0702040 r7:
00000003
r6:
00000008 r5:
40000003
[ 4016.620000] r4:
cf862000
[ 4016.630000] [<
c0101430>] (__do_softirq) from [<
c011ae28>]
(run_ksoftirqd+0x34/0x58)
[ 4016.630000] r10:
c0133964 r9:
00000000 r8:
00000001 r7:
00000000
r6:
c070b44c r5:
cf862000
[ 4016.640000] r4:
cf8037e0
[ 4016.640000] [<
c011adf4>] (run_ksoftirqd) from [<
c0133adc>]
(smpboot_thread_fn+0x178/0x190)
[ 4016.650000] [<
c0133964>] (smpboot_thread_fn) from [<
c013099c>]
(kthread+0x11c/0x138)
[ 4016.660000] r9:
cf8037e0 r8:
cf802cdc r7:
cf839df8 r6:
cf803800
r5:
00000000 r4:
cf802cc0
[ 4016.670000] [<
c0130880>] (kthread) from [<
c0107218>]
(ret_from_fork+0x14/0x3c)
[ 4016.680000] r10:
00000000 r9:
00000000 r8:
00000000 r7:
00000000
r6:
00000000 r5:
c0130880
[ 4016.680000] r4:
cf803800 r3:
cf862000
[ 4016.690000] ---[ end trace
51114df08f429115 ]---
This is triggered by calling eth_schedule_poll(sw) after the IRQ has
been re-enabled.
Rework the network code to only enable IRQ's again if NAPI agrees it's
safe to do so.
Also only re-enable IRQ *after* cleaning up the RX ring and re-enabling
DMA, which otherwise resulted in ugly warnings regarding dirty page
fragments.
These popped up nearly immediately when building the kernel with O2 iso
Os.
--> Note that this change fixes stability issues, at the cost of ~8%
throughput performance.
While at it, also change the iface name being used in warning prints,
making it more obvious: "switch%d" --> "cns3xxx_eth"
The changes have been tested on 4 boards, each moving ~30TB of data
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Koen Vandeputte [Thu, 11 Jan 2018 15:04:36 +0000 (16:04 +0100)]
cns3xxx: update patches for 4.14
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Koen Vandeputte [Thu, 11 Jan 2018 15:04:35 +0000 (16:04 +0100)]
cns3xxx: refresh kernel 4.14 config
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Koen Vandeputte [Thu, 11 Jan 2018 15:04:34 +0000 (16:04 +0100)]
cns3xxx: copy patches for kernel 4.14
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Koen Vandeputte [Thu, 11 Jan 2018 15:04:33 +0000 (16:04 +0100)]
cns3xxx: copy config for kernel 4.14
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Koen Vandeputte [Sat, 13 Jan 2018 20:35:48 +0000 (21:35 +0100)]
config: don't define the same symbol twice
In commit
fce35bce0f6e ("config: support new symbol intro'd in kernel
4.12")
I forgot to remove the initial debug test line.
This clearly is wrong as the same symbol is defined conditionally in the
line below as it should be.
I looked over it as I just checked if the symbol was present now upon
testing it.
Fixes:
fce35bce0f6e ("config: support new symbol intro'd in kernel
4.12")
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Gabor Juhos [Mon, 15 Jan 2018 22:04:53 +0000 (23:04 +0100)]
ar71xx: fix format of the 701-MIPS-ath79-add-routerboard-detection patches
Commit
e15c63a37574 ("ar71xx: add support for MikroTik RouterBOARD wAP
G-5HacT2HnD (wAP AC") broke the format of the patches. In unified diff
format, the unchanged, contextual lines must be preceded by a space
character.
Refresh the patches with quilt to fix them.
Fixes:
e15c63a37574 ("ar71xx: add support for MikroTik RouterBOARD wAPG-5HacT2HnD (wAP AC")
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
Gabor Juhos [Mon, 15 Jan 2018 22:04:37 +0000 (23:04 +0100)]
ar71xx: fix format of the 741-MIPS-ath79-add-PCI-for-QCA9556-SoC patches
The patches introduced in commit
20e68f6d395d ("ar71xx: kernel: enable
PCI on QCA9556 SoC") have non standard format. In unified diff format,
the unchanged, contextual lines must be preceded by a space character.
Refresh the patches with quilt to fix them.
Fixes:
20e68f6d395d ("ar71xx: kernel: enable PCI on QCA9556 SoC")
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
Gabor Juhos [Mon, 15 Jan 2018 19:50:43 +0000 (20:50 +0100)]
ar71xx: mach-rbspi: simplify reset button registration
The setup code defines four individual structures for the
Reset buttons of the supported boards. The only difference
between the definitions is the GPIO number used for the
button.
Replace the different structures with one generic variant,
and add a helper function to simplify the button registration.
Signed-off-by: Gabor Juhos <juhosg@freemail.hu>
Koen Vandeputte [Sat, 13 Jan 2018 20:41:59 +0000 (21:41 +0100)]
imx6: add support for the intel gbit driver on GW5520
The Gateworks GW5520 board uses 2x intel gigabit mac's, instead of the
internal i.MX6 FEC.
Add support for these.
Signed-off-by: Scott V. Kamp <outbackdingo@gmail.com>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Felix Fietkau [Fri, 15 Dec 2017 13:46:42 +0000 (14:46 +0100)]
mac80211: remove support code for authsae
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Felix Fietkau [Fri, 15 Dec 2017 13:45:44 +0000 (14:45 +0100)]
authsae: remove package
It is no longer actively maintained and does not work well in many
configurations. Fully replaced by wpad-mesh
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Pavel Kubelun [Wed, 5 Jul 2017 16:23:23 +0000 (19:23 +0300)]
ipq8065: adjust SS USB PHY power settings
According to QSDK ipq8065 has different SS USB PHY power settings.
Adjust it according to QSDK settings.
It also corresponds to oem Netgear R7800 tarball for soc ver >= 2.
https://github.com/paul-chambers/netgear-r7800/blob/
eeac2e10190f6f45e32e4c7012c4babc351898d8/git_home/linux.git/sourcecode/arch/arm/mach-msm/board-ipq806x.c#L2494
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Pavel Kubelun [Thu, 15 Jun 2017 10:58:34 +0000 (13:58 +0300)]
ipq806x: usb: add phy 1 master reset control
In current state only phy 0 master reset is controlled.
Add the phy 1 reset.
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Pavel Kubelun [Thu, 15 Jun 2017 10:00:18 +0000 (13:00 +0300)]
ipq806x: usb: Control USB master reset
Picking commit from QSDK
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=eggplant&id=
a86bda9f8a7965f0cedd347a9c04800eb9f41ea3
Commit message:
"During removal of the glue layer(dwc3-of-simple), USB master reset is set to active and during insertion it is de-activated."
Change-Id: I537dc810f6cb2a46664ee674840145066432b957
Signed-off-by: Vasudevan Murugesan <vmuruges@codeaurora.org>
(cherry picked from commit
4611e13580a216812f85f0801b95442d02eeb836)"
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Pavel Kubelun [Thu, 15 Jun 2017 08:48:17 +0000 (11:48 +0300)]
ipq806x: dwc3: Fix power_on and power_off sequence
Picking commit from QSDK
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/drivers/phy/phy-qcom-dwc3.c?h=eggplant&id=
d316437c9cdb70023a760342678f32e27241725a
The commit fixes:
- dwc3 phy module unloading
- possibly fixes FS#177 when some devices were improperly enumerated as HS while being SS thus stucking the driver during boot.
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Pavel Kubelun [Thu, 15 Jun 2017 08:35:26 +0000 (11:35 +0300)]
ipq806x: Update HSIO recommended usb phy settings
Picking commit from QSDK
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/drivers/phy/phy-qcom-dwc3.c?h=eggplant&id=
cf82fdf4bdd081cd81bb081f7815b915bc8bb851
The comit adjusts USB dwc3 phy default values as per QSDK recomendation and allows to set it through DT.
Commit message:
"SoC version based values will be recovered from the device node.
If device node does not have such values, defaults are applied.
Change-Id: Ia77b5b7fe95ce1a433885df1761091bced98d989
Signed-off-by: Gokul Sriram Palanisamy <gpalan@codeaurora.org>"
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Pavel Kubelun [Thu, 15 Jun 2017 07:45:17 +0000 (03:45 -0400)]
Revert "ipq8064: Fix dwc3 module unloading"
Preparing for proper fixes thus reverting commits:
-
8db079a9ff1756059250b801617a20baba214684 "ipq8064: Fix dwc3 module unloading"
-
c75f059b0c4d09dd0da60e14c4933a9f645266d1 "ipq8064: Fix dwc3 module unloading"
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Pavel Kubelun [Sat, 9 Dec 2017 17:15:05 +0000 (20:15 +0300)]
ipq806x: update clk and cpufreq drivers
A newer clk and cpufreq drivers for ipq806x platform had been sent upstream.
A change that i have noticed is that now it's possible to set min, cur and max frequencies from sysfs (previously it was bugged and caused nothing).
Following patches are removed:
- 0036-clk-Avoid-sending-high-rates-to-downstream-clocks-du.patch - seems it was dropped from the patchset by current committer.
- 0044-clk-qcom-krait-Remove-CLK_IS_ROOT.patch - already applied to the driver itself in the corresponding patch.
- 0057-clk-qcom-Add-regmap-mux-div-clocks-support.patch - seem to be irrelevant to ipq806x.
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Pavel Kubelun [Thu, 6 Jul 2017 14:20:18 +0000 (17:20 +0300)]
ipq806x: force 2nd pci slot into gen1 mode
According to QSDK and OEM tarballs (checked c2600, r7500v2, r7800) 2nd pci slot (pci1, 2,4 GHz card)) on ap148 based boards should operate in gen1 mode.
EA8500 is an exception and according to GPL pcie0 should operate in gen1 mode.
In previous commit we've added the support for this option, so enable it in DT for affected devices.
QSDK ref:
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/commit/?h=release/endive_preview_cc&id=
f3b07fe309027c52fc163149500cedddd707c506
While at it move the phy transmit termination offset value into dtsi file as it's platform specific.
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Pavel Kubelun [Fri, 1 Dec 2017 23:26:11 +0000 (02:26 +0300)]
ipq806x: fix wireless regression
In current state there's huge regression on ipq806x target that causes the device to transmit broken/malformed frames that are not corrected/detected by error control mechanisms and other less severe issues.
https://bugs.lede-project.org/index.php?do=details&task_id=1197
This finally had been narrowed down to patch 0071-pcie-qcom-fixes.patch
Meanwhile QSDK contains a handful of commits that add support for ipq806x to upstream qcom pcie driver
https://source.codeaurora.org/quic/qsdk/oss/kernel/linux-msm/log/drivers/pci/host/pcie-qcom.c?h=eggplant
Unfortunately qca developers do not bother to push it upstream.
Using those commits instead of lede 0071 patch fixes mentioned issue and probably many others as it seems that corrupted data has been originating within pcie misconfiguration.
Fixes: FS#1197 and probably others
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
Hannu Nyman [Fri, 5 Jan 2018 21:30:02 +0000 (23:30 +0200)]
tools/cmake: update to 3.10.1
Update cmake to 3.10.1
Refresh patches
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Hannu Nyman [Fri, 5 Jan 2018 21:27:17 +0000 (23:27 +0200)]
tools/scons: update to 3.0.1
Update scons to 3.0.1
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Hannu Nyman [Fri, 5 Jan 2018 21:22:44 +0000 (23:22 +0200)]
tools/libressl: update to 2.6.4
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
Jo-Philipp Wich [Sun, 14 Jan 2018 19:09:15 +0000 (20:09 +0100)]
xtables-addons: remove from base
The package has been moved to the package feed repository to allow for
non-base dependencies such as Perl.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Jo-Philipp Wich [Sun, 14 Jan 2018 19:06:07 +0000 (20:06 +0100)]
netfilter: enable CONFIG_NF_CONNTRACK_MARK from kmod-nf-conntrack
Unconditionally enable connmark support and tie it to the conntrack core
module to allow removing this kernel configuration dependency from the
xtables-addons package.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Jo-Philipp Wich [Tue, 16 Jan 2018 15:59:22 +0000 (16:59 +0100)]
feeds: switch git.lede-project.org URLs to git.openwrt.org
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Jo-Philipp Wich [Tue, 16 Jan 2018 13:07:59 +0000 (14:07 +0100)]
iwinfo: update to latest git HEAD
5a5e21b nl80211: skip event notifications in wpa_supplicant scan result reply
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Kevin Darbyshire-Bryant [Mon, 15 Jan 2018 12:45:21 +0000 (12:45 +0000)]
dnsmasq: use SIGINT for dnssec time valid
Dnsmasq used SIGHUP to do too many things: 1) set dnssec time validation
enabled, 2) bump SOA zone serial, 3) clear dns cache, 4) reload hosts
files, 5) reload resolvers/servers files.
Many subsystems within LEDE can send SIGHUP to dnsmasq: 1) ntpd hotplug
(to indicate time is valid for dnssec) 2) odhcpd (to indicate a
new/removed host - typically DHCPv6 leases) 3) procd on interface state
changes 4) procd on system config state changes, 5) service reload.
If dnssec time validation is enabled before the system clock has been
set to a sensible time, name resolution will fail. Because name
resolution fails, ntpd is unable to resolve time server names to
addresses, so is unable to set time. Classic chicken/egg.
Since commits
23bba9cb330cd298739a16e350b0029ed9429eef (service reload) &
4f02285d8b4a66359a8fa46f22a3efde391b5419 (system config) make it more
likely a SIGHUP will be sent for events other than 'ntpd has set time'
it is more likely that an errant 'name resolution is failing for
everything' situation will be encountered.
Fortunately the upstream dnsmasq people agree and have moved 'check
dnssec timestamp enable' from SIGHUP handler to SIGINT.
Backport the upstream patch to use SIGINT.
ntpd hotplug script updated to use SIGINT.
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
Daniel Gimpelevich [Mon, 15 Jan 2018 16:11:54 +0000 (08:11 -0800)]
ramips: use blue status LED for Xiaomi Router 3G
The blue LED is what other firmwares use for this device, and it's a lot
easier on the eyes than its shade of yellow, which implies an error
condition.
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[merge into existing $boardname:blue:status block]
Signed-off-by: Mathias Kresin <dev@kresin.me>
Acked-by: Piotr Dymacz <pepe2k@gmail.com>
Acked-by: Cezary Jackiewicz <cezary@eko.one.pl>
Maxim Anisimov [Tue, 9 Jan 2018 11:25:53 +0000 (14:25 +0300)]
ramips: add support for TP-Link Archer C20 v4
TP-Link Archer C20 v4 is a router with 5-port FE switch and
non-detachable antennas. It's based on MediaTek MT7628N+MT7610EN.
Specification:
- MediaTek MT7628N/N (580 Mhz)
- 64 MB of RAM
- 8 MB of FLASH
- 2T2R 2.4 GHz and 1T1R 5 GHz
- 5x 10/100 Mbps Ethernet
- 3x external, non-detachable antennas
- UART (J1) header on PCB (115200 8n1)
- 7x LED (GPIO-controlled*), 2x button, power input switch
* WAN LED in this devices is a dual-color, dual-leads type which isn't
(fully) supported by gpio-leds driver. This type of LED requires both
GPIOs state change at the same time to select color or turn it off.
For now, we support/use only the green part of the LED.
* MT7610EN ac chip isn't not supported by LEDE. Therefore 5Ghz won't
work.
Flash instruction:
The only way to flash LEDE image in ArcherC20v4 is to use
tftp recovery mode in U-Boot:
1. Configure PC with static IP 192.168.0.66/24 and tftp server.
2. Rename "openwrt-ramips-mt7628-ArcherC20v4-squashfs-tftp-recovery.bin"
to "tp_recovery.bin" and place it in tftp server directory.
3. Connect PC with one of LAN ports, press the reset button, power up
the router and keep button pressed for around 6-7 seconds, until
device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.
Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
Maxim Anisimov [Sat, 13 Jan 2018 07:16:20 +0000 (10:16 +0300)]
ramips: rename TP-Link Archer C20 to TP-Link Archer C20 v1
This changes device name from "TP-Link Archer C20" to "TP-Link Archer C20 v1"
because of TPLINK released new TP-Link Archer C20 v4. Additionally
migration to the generic board detection has been made.
Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
David Bauer [Sat, 16 Dec 2017 14:43:02 +0000 (15:43 +0100)]
ar71xx: fix TP-Link Archer C7 v4 switch LEDs
Match mapping of the switch LEDs according to the TP-Link
firmware behavior. LAN port 1 triggers the most right LAN LED,
LAN port 2 the second LAN LED from the right and so on.
Signed-off-by: David Bauer <mail@david-bauer.net>
Chen Minqiang [Thu, 11 Jan 2018 15:43:09 +0000 (23:43 +0800)]
ramips: add image checks
As long as we can't enforce image metadata, we need to use (platform)
image checks to have at least soem kind of validation.
Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
Mathias Kresin [Sun, 14 Jan 2018 22:21:38 +0000 (23:21 +0100)]
ipq806x: drop ubifs support
Ubifs is disabled for all boards except the evaluation boards and the
Fritz!Box 4040 anyway. According the author, the ubifs support for the
Fritz!Box 4040 wasn't enabled on purpose.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Mathias Kresin [Sun, 14 Jan 2018 21:20:40 +0000 (22:20 +0100)]
ipq806x: drop legacy image leftovers
Remove leftover code used for legacy images. There are no relevant
binary differences for the images after removing the legacy leftovers.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Mathias Kresin [Sun, 14 Jan 2018 20:39:42 +0000 (21:39 +0100)]
ipq806x: unset filesystem specific build command by default
Initialise the filesystem specific build command. Otherwise it will be
unintended inherit to following images and will cause a wrong image
format.
The issue is around for ages but was only recently triggered due to the
added support for the Openmesh a42.
Fixes: FS#1276
Signed-off-by: Mathias Kresin <dev@kresin.me>
Mathias Kresin [Sun, 14 Jan 2018 20:38:08 +0000 (21:38 +0100)]
ipq806x: remove unnecessary filesystem specific build
The Openmesh factory image doesn't need a squashfs specific build command.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Mathias Kresin [Sun, 14 Jan 2018 21:03:41 +0000 (22:03 +0100)]
ipq806x: use bin file extension for sysupgrade-tar images
Use the file extension bin for sysupgrade-tar images to unify the file
extension across the target/tree.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Koen Vandeputte [Mon, 27 Nov 2017 17:31:30 +0000 (18:31 +0100)]
uqmi: fix raw-ip mode for newer lte modems
Some newer LTE modems, like the MC7455 or EC25-E do not support
"802.3" mode, and will stay in "raw-ip" regardless of the mode being
set.
In this case, the driver must be informed that it should handle all
packets in raw mode. [1]
This commit fixes connectivity issues for these devices.
Before:
[ Node 5 ] udhcpc -i wwan0
udhcpc: started, v1.27.2
udhcpc: sending discover
udhcpc: sending discover
udhcpc: sending discover
After:
[ Node 5 ] udhcpc -i wwan0
udhcpc: started, v1.27.2
udhcpc: sending discover
udhcpc: sending select for 100.66.245.226
udhcpc: lease of 100.66.245.226 obtained, lease time 7200
udhcpc: ifconfig wwan0 100.66.245.226 netmask 255.255.255.252 broadcast
+
udhcpc: setting default routers: 100.66.245.225
[1] https://lists.freedesktop.org/archives/libqmi-
devel/2017-January/002064.html
Tested on cns3xxx using a Sierra Wireless MC7455 LTE-A
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[bumped PKG_RELEASE]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Piotr Dymacz [Mon, 15 Jan 2018 12:30:19 +0000 (13:30 +0100)]
ar71xx: image: rework EnGenius ENS202EXT factory image
Current EnGenius ENS202EXT factory image recipe version causes factory
images of the following devices to be corrupted. This issue wasn't
visible until recent changes of image Makefile snippets order.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Jo-Philipp Wich [Sun, 14 Jan 2018 18:02:45 +0000 (19:02 +0100)]
tools: make-ext4fs: remove LEDE_GIT references
Change the make-ext4fs Makefile to use the common PROJECT_GIT
variable instead.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Jo-Philipp Wich [Mon, 15 Jan 2018 12:09:05 +0000 (13:09 +0100)]
omap24xx: remove referece to not existing kmod-usb-musb-tusb6010
Remove leftover reference to a not existing kmod-usb-musb-tusb6010 from
the omap24xx target, the corresponding module is built into the kernel.
Fixes:
96815fe0a2 ("kernel: remove omap24xx specific kernel module packages")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Hans Dedecker [Sat, 13 Jan 2018 10:05:46 +0000 (11:05 +0100)]
6rd: pass ipcalc as argument to eval
Instead of grepping for NETWORK after calling ipcalc.sh; pass ipcalc.sh as
argument to eval allowing to use $NETWORK to retrieve the IPv4 prefix
(ip4prefix).
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Roger Pueyo Centelles [Mon, 8 Jan 2018 11:55:05 +0000 (12:55 +0100)]
ar71xx: add support for MikroTik RouterBOARD wAP G-5HacT2HnD (wAP AC)
This patch adds support for the MikroTik RouterBOARD wAP G-5HacT2HnD (wAP
AC), a small weatherproof dual band, dual-radio 802.11ac wireless AP with
integrated omnidirectional anntennae and one 10/100/1000 Mbps Ethernet
ports.
See https://mikrotik.com/product/RBwAPG-5HacT2HnD for more info.
Specifications:
- SoC: Qualcomm Atheros QCA9556
- RAM: 64 MB
- Storage: 16 MB NOR
- Wireless:
· Atheros AR9550 (SoC) 802.11b/g/n 2x2:2, 2 dBi antennae
· Qualcomm QCA9880 802.11a/n/ac 3x3:3, 2 dBi antennae
- Ethernet: Atheros AG71xx (SoC, AR8033), 1x 1000/100/10 port, passive
PoE in
Working:
- Board/system detection
- Sysupgrade
- Serial console
- Ethernet
- 2.4 GHz radio
- 5 GHz radio
- Reset button
Not working:
- LEDs (added according to Mikrotik's GPL sources but not functional)
Unsupported:
- ZT2046Q SPI temperature and voltage sensor
Contributors: Giuseppe Tipaldi (@Ciusss89)
Ricky (@rickydee)
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[daniel@makrotopia.org: whitespace fix, use PHYADDR instead of PHYMASK]
Roger Pueyo Centelles [Mon, 8 Jan 2018 11:30:28 +0000 (12:30 +0100)]
ar71xx: kernel: enable PCI on QCA9556 SoC
This patch enables the PCI bus on the QCA9556 SoC, the same way it is
done on the same family SoC QCA9558.
Tested on a MikroTik RouterBoard wAPG-5HacT2HnD (wAP AC).
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
Piotr Dymacz [Sat, 14 Oct 2017 08:44:39 +0000 (10:44 +0200)]
ramips: add support for ALFA Network AC1200RM
ALFA Network AC1200RM is an AC1200 router, with 5-port FE switch and
USB 2.0 port. Device is based on MediaTek MT7620A + MT7612EN.
Specification:
- MT7620A (580 MHz)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 5x 10/100 Mbps Ethernet with passive PoE output in WAN and LAN4
- 2T2R 2.4 GHz (MT7620A)
- 2T2R 5 GHz (MT7612EN)
- 1x USB 2.0
- 9x LED (8 driven by GPIO)
- 1x button (reset)
- DC jack for main power input (12-24 V)
- 2x UART, I2C, I2S and LED headers
Flash instruction (do it under U-Boot, using UART and TFTP server):
Select option "2: Load system code then write to Flash via TFTP" and
use "sysupgrade" image.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Tue, 17 Oct 2017 21:32:11 +0000 (23:32 +0200)]
uboot-envtools: add support for GL.iNet GL-AR750
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Tue, 17 Oct 2017 21:30:01 +0000 (23:30 +0200)]
ar71xx: add support for GL.iNet GL-AR750
GL.iNet GL-AR750 is a small size, dual-band (AC750) router, based on
Qualcomm/Atheros QCA9531 v2 + QCA9887. FCC ID: 2AFIW-AR750.
Specification:
- 650/597/216 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 3x 10/100 Mbps Ethernet
- 2T2R 2.4 GHz (QCA9531)
- 1T1R 5 GHz (QCA9887)
- 1x USB 2.0 (power controlled by GPIO)
- 1x microSD (GL857L)
- 3x LED (all driven by GPIO)
- 1x button (reset)
- 1x 2-pos switch
- header for optional PoE module
- 1x micro USB for main power input
- UART + I2C header on PCB
Flash instruction:
Vendor firmware is based on OpenWrt/LEDE. GUI or sysupgrade can be used
to flash OpenWrt/LEDE firmware.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Thu, 23 Nov 2017 13:27:39 +0000 (14:27 +0100)]
ar71xx: image: move Sitecom WLR-8100 from legacy to generic
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Davide Fioravanti [Sun, 19 Nov 2017 20:11:10 +0000 (21:11 +0100)]
ar71xx: fix Sitecom WLR-8100 support
This patch fixes Sitecom WLR-8100:
- mtd layout
- LAN and WAN MAC address setup
- 2.4 GHz Wi-Fi MAC address setup
- 5 GHz Wi-Fi support (calibration data, MAC address setup, missing
ath10k-* packages)
Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
[squashed commits, fixed whitespace issues, reworded commit message]
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Thu, 28 Dec 2017 10:08:22 +0000 (11:08 +0100)]
uboot-envtools: add support for ALFA Network R36A
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Thu, 28 Dec 2017 10:07:54 +0000 (11:07 +0100)]
ar71xx: add support for ALFA Network R36A
ALFA Network R36A is a successor of the previous model, the R36 (Ralink
RT3050F based). New version is based on Qualcomm/Atheros QCA9531 v2.
Specification:
- 650/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 2T2R (QCA9531) 2.4 GHz, 2x u.fl connectors on PCB
- 1x USB 2.0 (power controlled by GPIO)
- 6x LED (5 of them are driven by GPIO)
- 2x button (reset, wifi/wps)
- external h/w watchdog (EM6324QYSP5B, disabled and not used)
- DC jack for main power input (12 V)
- UART header on PCB
Flash instruction:
You can use sysupgrade image directly in vendor firmware which is based
on LEDE/OpenWrt. Alternatively, you can use web recovery mode in U-Boot:
1. Configure PC with static IP 192.168.1.2/24.
2. Connect PC with one of RJ45 ports, press the reset button, power up
device, wait for first blink of all LEDs (indicates network setup),
then keep button for 3 following blinks and release it.
3. Open 192.168.1.1 address in your browser and upload sysupgrade image.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Sun, 15 Oct 2017 11:24:02 +0000 (13:24 +0200)]
ar71xx: add support for Teltonika RUT900
Teltonika RUT900 is an industrial 3G router based on Atheros AR9344.
There are available 3 other models in RUT9xx series: RUT905, RUT950 and
RUT955, which differ in availability of additional I/O ports, built-in
GSM modem type, GPS antenna and other features. FCC ID of the RUT950
model (LTE module built-in): 2AET4-RUT950.
This patch adds support for the RUT900 model only but can be easily
extended to cover whole series. Also, as there are several different
3/4G modules (Huawei, Quectel, Telit) used in whole series, packages
required for WWAN support are not included by default. It is up to the
user to install required software for built-in modem.
Specification:
- 550/400/200 MHz (CPU/DDR/AHB)
- 128 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 4x 10/100 Mbps Ethernet, with passive PoE support on LAN1
- 2T2R 2,4 GHz (AR9344), with ext. PA (MGA-22103) and LNA
- built-in 3G module (example: Telit HE910-D)
- 2x miniSIM slot
- 2x RP-SMA/F (Wi-Fi), 2x SMA/F (3G)
- PCA9539 16-bit GPIO I2C expander
- 12x LED (4 are driven by AR9344, 7 by PCA9539)
- 1x button (reset)
- DC jack for main power input (9-30 V)
- UART available on PCB edge connector
Serial console pinout:
- RX: pin1 (square) on top side of the main PCB (AR9344 is on top)
- TX: pin1 (square) on bottom side
Flash instruction:
Vendor firmware is based on OpenWrt CC release. Use the "factory" image
directly in GUI (make sure to uncheck "keep settings") or in U-Boot web
based recovery. To avoid any problems, make sure to first update vendor
firmware to latest version - "factory" image was successfully tested on
device running "RUT9XX_R_00.03.960" firmware and U-Boot "3.0.1".
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Fri, 5 Jan 2018 10:37:11 +0000 (11:37 +0100)]
uboot-envtools: add support for ALFA Network N5Q
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Fri, 5 Jan 2018 10:35:45 +0000 (11:35 +0100)]
ar71xx: add support for ALFA Network N5Q
ALFA Network N5Q is a successor of previous model, the N5 (outdoor
CPE/AP, based on Atheros AR7240 + AR9280). New version is based on
Atheros AR9344.
Specification:
- 550/400/200 MHz (CPU/DDR/AHB)
- 64 MB of RAM (DDR2)
- 16 MB of FLASH (SPI NOR)
- 2x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 2T2R 5 GHz (AR9344), with ext. PA (RFPA5542) and LNA, up to 27 dBm
- 8x LED (7 are driven by GPIO)
- 1x button (reset)
- external h/w watchdog (EM6324QYSP5B, disabled and not used)
- header for optional 802.3at/af PoE module
- DC jack for main power input (optional, not installed by default)
- UART header on PCB
Flash instruction:
You can use sysupgrade image directly in vendor firmare which is based
on OpenWrt/LEDE. Alternatively, you can use web recovery mode in U-Boot:
1. Configure PC with static IP 192.168.1.2/24.
2. Connect PC with one of RJ45 ports, press the reset button, power up
device, wait for first blink of all LEDs (indicates network setup),
then keep button for 3 following blinks and release it.
3. Open 192.168.1.1 address in your browser and upload sysupgrade image.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Mon, 18 Dec 2017 13:52:39 +0000 (14:52 +0100)]
uboot-envtools: add support for ALFA Network AP91-5G
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Mon, 18 Dec 2017 13:51:28 +0000 (14:51 +0100)]
ar71xx: add support for ALFA Network AP91-5G
ALFA Network AP91-5G is a 5 GHz outdoor AP/CPE board, based on Atheros
AR7240 + AR9280.
Specification:
- 400/400/200 MHz (CPU/DDR/AHB)
- 32 MB of RAM (DDR1)
- 8 MB of FLASH (SPI NOR)
- 1x 10/100 Mbps Ethernet, with passive PoE support (24 V)
- 1T1R 5 GHz (AR9280), with ext. PA (SE5004L) and LNA, up to 27 dBm
- 6x LED (5 are driven by GPIO)
- 1x button (reset)
- external h/w watchdog (EM6324QYSP5B, disabled and not used)
- header for optional 802.3at/af PoE module
- DC jack for main power input (optional, not installed by default)
- UART and LEDs headers on PCB
Flash instruction:
Use "factory" image in vendor GUI (in case of problems, make sure your
board has up to date firmware). Alternatively, TFTP in U-Boot can be
used: select option "2. Load system code then write to Flash via TFTP"
during early boot and use "sysupgrade" image.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Sat, 13 Jan 2018 16:46:55 +0000 (17:46 +0100)]
ar71xx: base-files: cosmetic cleanups in preinit scripts
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Sat, 13 Jan 2018 16:38:19 +0000 (17:38 +0100)]
ar71xx: base-files: drop LED control from 05_set_iface_mac_ar71xx
There is no "dir-615-c1:green:wancpu" LED defined in mach-dir-615-c1.c
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Piotr Dymacz [Sat, 13 Jan 2018 16:08:45 +0000 (17:08 +0100)]
ar71xx: base-files: fix boards order in 05_set_preinit_iface_ar71xx
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Stijn Tintel [Sun, 14 Jan 2018 18:50:39 +0000 (20:50 +0200)]
kernel: add missing config symbol
The KEXEC_FILE symbol exists for X86 since kernel 3.17, and since 4.10
for PPC64. Add it to x86/config-4.9 and to generic/config-4.14.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Stijn Tintel [Sun, 14 Jan 2018 18:40:35 +0000 (20:40 +0200)]
kernel: add missing DRM symbols to generic config
Several new DRM symbols that were introduced after 4.9 are missing in
the generic config for 4.14, so add them.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Stijn Tintel [Sun, 14 Jan 2018 18:31:02 +0000 (20:31 +0200)]
kernel: sort generic configs
Use kconfig.pl to sort the generic kernel configs.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Stijn Tintel [Sun, 14 Jan 2018 18:06:55 +0000 (20:06 +0200)]
kernel: move DRM_DEBUG_* symbols to generic config
While working on a new target (meson), the kernel build failed due to
missing DRM_DEBUG_MM_SELFTEST symbol. This can potentially happen on all
targets that enable DRM drivers in the kernel config or via kmod
packages, so add it to the generic config and remove it from x86
subtarget configs, together with DRM_DEBUG_MM.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
Jo-Philipp Wich [Sun, 14 Jan 2018 17:46:36 +0000 (18:46 +0100)]
metadata: do not emit broken kconfig dependency statements
Prevent emitting broken dependency statements when resolving references
to non existing packages to an empty provider list.
Fixes:
47d6b05ad3 ("metadata: always resolve dependencies through provides list")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Matthias Schiffer [Sun, 14 Jan 2018 16:07:28 +0000 (17:07 +0100)]
scripts/feeds: fix install of packages with different source/binary names
The logic for choice between source and binary packages was reversed.
Fixes:
52719c2b67af "metadata: scripts/feeds: distinguish between source
and binary packages, resolve virtual dependencies"
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Fri, 12 Jan 2018 15:36:13 +0000 (16:36 +0100)]
ar71xx: create new ar71xx/tiny subtarget for 4MB flash devices
This new subtarget sets the small_flash flag and removes unused kernel
configuration.
small_flash removes KERNEL_KALLSYMS, which saves ~107KB in the default
configuration; removing unneeded hardware support from ar71xx/tiny saves
another ~18KB (both after LZMA).
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Fri, 12 Jan 2018 00:42:11 +0000 (01:42 +0100)]
ar71xx/generic: add generic- prefix to vendor-specific image Makefile snippets
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Fri, 12 Jan 2018 05:19:29 +0000 (06:19 +0100)]
ar71xx: reorganize kernel configuration
Rather than including all machines for the generic subtarget in the base
configuration, leave the base configuration without specific machines and
create a proper subtarget config for ar71xx/generic. The configuration
diffs of the mikrotik and nand subtargets get significantly shorter, as
will the configurations of future subtargets.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Wed, 10 Jan 2018 23:22:42 +0000 (00:22 +0100)]
ar71xx: disable devicetree support
While we'd like to convert ar71xx to DT-based configuration
eventually, we aren't quite there yet, and shipping half-baked DT support
that is not used at all wastes precious space.
Saves ~120KB before LZMA, ~33KB after LZMA.
Run-tested on TP-Link CPE510 and TL-WR841 v7.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Wed, 10 Jan 2018 20:46:46 +0000 (21:46 +0100)]
ath9k, ath10k(-ct): move spectral scan support under a separate config symbol
Backport patches that separate spectral scan support from general debugfs
support of ath9k/ath10k; this allows to remove the dependency on
KERNEL_RELAY from these driver packages even with debugfs enabled and
avoids the memory footprint of the relay buffers allocated by ath9k/ath10k
even when they aren't used at all.
The KERNEL_RELAY dependency is moved to a new config symbol that enables
spectral scan support in these drivers.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Mon, 8 Jan 2018 17:47:04 +0000 (18:47 +0100)]
metadata: improve code readability by using (s)printf instead of string interpolation
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Mon, 8 Jan 2018 14:02:38 +0000 (15:02 +0100)]
include/package-dumpinfo.mk: don't duplicate source package information for every binary package
Eventually the BUILDONLY package flag could be replaced by simply creating
a package Makefile without any BuildPackage calls. This will fail for now,
as BuildPackage also causes the Makefile's compile target etc. to do
something useful at all.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Mon, 8 Jan 2018 11:31:03 +0000 (12:31 +0100)]
build: remove obsolete "package feature" feature
Package "features" seem to be unused for some time. In any case, custom
Config.in snippets and package PROVIDES are a much more flexible way to
express similar options.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Thu, 11 Jan 2018 17:38:42 +0000 (18:38 +0100)]
metadata: scripts/feeds: distinguish between source and binary packages, resolve virtual dependencies
Properly resolve build depends to source packages and runtime depends to
binary packages. Dependencies on virtual packages are resolved to the first
provider now.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Mon, 8 Jan 2018 11:17:30 +0000 (12:17 +0100)]
metadata: always resolve dependencies through provides list
Instead of adding virtual packages to the normal package list, keep a
separate list for provides, make each package provide itself, and resolve
all dependencies through this list. This allows to use PROVIDES to replace
existing packages.
Fixes FS#837.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Mon, 8 Jan 2018 10:07:37 +0000 (11:07 +0100)]
metadata: simplify generation of build depends from runtime depends
Runtime depends cannot have a buildtype suffix, and they never refer to
source package names. In addition, this adds warnings about unsatisfiable
dependencies.
Furthermore, this change fixes the generation of conditional build
dependencies for virtual packages provided by different source packages.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sun, 7 Jan 2018 22:11:11 +0000 (23:11 +0100)]
metadata: handle target build depends together with host build depends
Target build depends are similar to host build depends in that they refer
to source packages rather than binary packages. Therefore, it makes sense
to handle them together, rather than putting them in a list together with
runtime depends and trying to figure out if the entries refer to source or
to binary packages afterwards.
This does lead to PKG_BUILD_DEPENDS entries referring to binary package
names not working anymore, which requires some fixes in the package
repositories.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sun, 7 Jan 2018 19:41:06 +0000 (20:41 +0100)]
treewide: fix build depends to refer to source package names
Build depends must refer to source packages rather than binary package
names.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sun, 7 Jan 2018 12:05:23 +0000 (13:05 +0100)]
build: remove package preconfig feature
This feature has been unused for years, and its scope is too limited to be
actually useful.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sat, 6 Jan 2018 18:44:52 +0000 (19:44 +0100)]
metadata: remove redundant fields from package hash
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sat, 6 Jan 2018 18:28:52 +0000 (19:28 +0100)]
metadata: replace %subdir hash with a path field in source packages
Every single reference to subdir was concatenated with the source package
name, so it makes sense to store the concatenated value instead.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sat, 6 Jan 2018 17:01:25 +0000 (18:01 +0100)]
metadata: change pkg->{src} field to hold a reference
We often want to access fields of a source packages through pkg->{src}.
Allow accessing them directly instead of resolving the source hash through
srcpackages.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sat, 6 Jan 2018 16:12:03 +0000 (17:12 +0100)]
metadata: interate over source packages when generating Makefile
All build dependencies are between source packages. Interating over source
rather than binary packages simplifies parts of the code and prepares
further improvement.
As a side effect, this changes the implicit default variant of a few
packages (the first defined is used now instead of the lexicographically
first).
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sat, 6 Jan 2018 13:49:08 +0000 (14:49 +0100)]
metadata: move 'builddepends' from binary to source packages
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Sat, 6 Jan 2018 12:53:42 +0000 (13:53 +0100)]
metadata: move 'buildtypes' from binary to source packages
Build types are a property of source rather than binary packages. This is a
preparation for followup cleanup.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Thu, 4 Jan 2018 18:52:18 +0000 (19:52 +0100)]
metadata: make srcpackage extensible
Turn the srcpackage values into hashes to allow storing more information
than just binary package names.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Matthias Schiffer [Thu, 4 Jan 2018 17:19:28 +0000 (18:19 +0100)]
metadata: remove 'base-files' special case
Nothing explicitly depends on base-files, and even if it would, it would
not cause any problems. Remove the unused special case.
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
John Crispin [Sat, 13 Jan 2018 15:28:42 +0000 (16:28 +0100)]
fstools: update to latest git HEAD
18090d9 overlay: fix compilation with glibc
2a9a6ea libfstools: optimize building directory string for glob
de6b026 libfstools: support file paths longer than 255 chars
Signed-off-by: John Crispin <john@phrozen.org>
Koen Vandeputte [Thu, 11 Jan 2018 11:55:02 +0000 (12:55 +0100)]
config: support new symbol intro'd in kernel 4.12
Symbol CONFIG_INITRAMFS_FORCE allows to ignore the value passed by the
bootloader.
By default, all symbols containing INITRAMFS are wiped from the final
config and then re-added conditionally.
Add support for this symbol, as the build will stop otherwise
questioning the user about this option:
* Restart config...
*
*
* General setup
*
Cross-compiler tool prefix (CROSS_COMPILE) []
Compile also drivers which will not load (COMPILE_TEST) [N/y/?] n
...
Initial RAM filesystem and RAM disk (initramfs/initrd) support
(BLK_DEV_INITRD) [Y/n/?] y
Initramfs source file(s) (INITRAMFS_SOURCE) []
Ignore the initramfs passed by the bootloader (INITRAMFS_FORCE)
[N/y/?] (NEW)
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Jo-Philipp Wich [Sat, 13 Jan 2018 13:46:11 +0000 (14:46 +0100)]
target: disable CONFIG_PROC_PAGE_MONITOR on most targets
Disable CONFIG_PROC_PAGE_MONITOR in most places and only keep it enabled
for virtual targets such as malta or potent ones like x86.
This saves up to 4KB of uncompressed kernel size and significantly
decreases CPU load under certain workloads.
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
ipq806x: add support for OpenMesh A42
* QCA IPQ401x
* 256 MB of RAM
* 32 MB of SPI NOR flash (s25fl256s1)
- 2x 15 MB available; but one of the 15 MB regions is the recovery image
* 2T2R 2.4 GHz
- QCA4019 hw1.0 (SoC)
- requires special BDF in QCA4019/hw1.0/board-2.bin with
bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=OM-A42
* 2T2R 5 GHz
- QCA4019 hw1.0 (SoC)
- requires special BDF in QCA4019/hw1.0/board-2.bin with
bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=OM-A42
* multi-color LED (controlled via red/green/blue GPIOs)
* 1x button (reset; kmod-input-gpio-keys compatible)
* external watchdog
- triggered GPIO
* 1x USB (xHCI)
* TTL pins are on board (arrow points to VCC, then follows: GND, TX, RX)
* 2x gigabit ethernet
* powered only via POE
- 802.3af POE on Ethernet 1
- 18-24v passive POE (mode B) on Ethernet 2
The tool ap51-flash (https://github.com/ap51-flash/ap51-flash) should be
used to transfer the factory image to the u-boot when the device boots up.
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Sven Eckelmann [Mon, 8 Jan 2018 17:28:51 +0000 (18:28 +0100)]
ipq806x: enable gpio watchdog support
The kernel driver gpio-wdt or the userspace tool om-watchdog can be used to
trigger external gpio watchdog chips. The gpio-wdt driver has the benefit
that it can be configured together with the rest of the device in the DTS
and better integrates in the OpenWrt via procd.
Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
om-fwupgradecfg-gen.sh: add support for the A42
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
build: add image command for CE images
Combined Extended Images V1 can be created easily via the new image
commands using
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | combined-ext-image
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
combined-ext-image.sh: generate image in temp dir
The new build commands operate on the input image and use it again as
output image. This conflicts with the way combined-ext-image.sh was
operating. It required that input and output files are different files and
and that it can write freely to the output file.
This can be avoided when all intermediate build steps by
combined-ext-image.sh are done in a temporary directory. The output file is
then only overwritten in the last step.
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
uboot-envtools: add OpenMesh A42 support
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
ipq-wifi: add board-2.bin for OpenMesh A42
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
Sven Eckelmann [Thu, 30 Nov 2017 13:30:06 +0000 (14:30 +0100)]
mac80211: ath10k: search DT for BDF variant info
Board Data File (BDF) is loaded upon driver boot-up procedure. The right
board data file is identified on QCA4019 using bus, bmi-chip-id and
bmi-board-id.
The problem, however, can occur when the (default) board data file cannot
fulfill the vendor requirements and it is necessary to use a different
board data file.
This problem was solved for SMBIOS by adding a special SMBIOS type 0xF8.
Something similar has to be provided for systems without SMBIOS but with
device trees. No solution was specified by QCA and therefore a new one has
to be found for ath10k.
The device tree requires addition strings to define the variant name
wifi@
a000000 {
status = "okay";
qcom,ath10k-calibration-variant = "RT-AC58U";
};
wifi@
a800000 {
status = "okay";
qcom,ath10k-calibration-variant = "RT-AC58U";
};
This would create the boarddata identifiers for the board-2.bin search
* bus=ahb,bmi-chip-id=0,bmi-board-id=16,variant=RT-AC58U
* bus=ahb,bmi-chip-id=0,bmi-board-id=17,variant=RT-AC58U
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>