Alex Maclean [Mon, 6 Mar 2017 23:25:37 +0000 (23:25 +0000)]
lantiq: add support for the Alpha ASL56026
The ASL56026 is a VDSL2 router with dual 100mbit ethernet,
also known as the ECI B-FOCuS V-2FUb/I.
CPU: Lantiq XRX268 v1.1 at 333MHz
Modem: Lantiq VRX208
RAM: 32MiB DDR2 at 167MHz
Flash: 8MiB NOR, Spansion S29GL064N90TF04
UART is at JP1:
Pin 1 TX
Pin 2 GND
Pin 3 +3.3V
Pin 4 NC
Pin 5 RX
Boot selection pins are exposed via several resistor jumpers:
boot_sel0 is at J15, on the rear of the board. Default is high.
boot_sel1 is at J3, next to the flash - it is also the flash CE# pin. Default is low.
boot_sel2 is at J12, directly below the SoC. Default is low.
boot_sel3 is at J16, on the rear of the board. Default is low.
The boot_sel pins should never be shorted, the jumper must be moved or
a lower value resistor used to change the pull (existing resistors are 4k7, 1k should work)
To install with the stock bootloader you must break the built in image selection process
which uses at least the following vars: f_upgrade_addr, f_upgrade2_addr, loadaddr, kernel_addr, activeregion, committedregion
This is done by setting loadaddr and both f_upgrade_addr vars to the same address:
Rafał Miłecki [Wed, 8 Mar 2017 11:38:43 +0000 (12:38 +0100)]
kernel: fix of_node handling in LEDs core code
This backports fixes for setting of_node and making it possible to read
extra info from DT. This was partially fixed by:
[PATCH] leds: leds-gpio: Set of_node for created LED devices
but it didn't work during initialization.
continue work started here: http://patchwork.ozlabs.org/patch/520859
Extend /etc/config/system with parameters to set the default respawn treshold and respawn timeout
for procd launched services that have respawn enabled.
This results in cleaner init scripts, while making sure services have respawn parameters set.
Felix Fietkau [Tue, 7 Mar 2017 09:45:32 +0000 (10:45 +0100)]
ar71xx: fix build without CONFIG_NOP_USB_XCEIV (FS#593)
Open-code usb_phy_generic_register instead of calling it, since it is
really trivial. Avoid pulling CONFIG_NOP_USB_XCEIV into the kernel
config and add a proper dependency instead
Felix Fietkau [Tue, 7 Mar 2017 08:50:42 +0000 (09:50 +0100)]
kernel: fix usb chipidea controller support
If ehci platform driver is loaded before the chipidea controller driver,
both are competing for the same IO resources and the generic driver gets
used for the hardware. This results in USB device mode being
unavailable.
Split generic EHCI support code out of kmod-usb2, so that the chipidea
driver can be included without also pulling in the generic one. Also
rework the load order, so that the chipidea driver gets loaded first, in
case both are installed
Jo-Philipp Wich [Mon, 6 Mar 2017 12:47:50 +0000 (13:47 +0100)]
ppp: propagate master peerdns setting to dynamic slave interface
Honour the parent interfaces peerdns option when spawning a virtual DHCPv6
interface in order to avoid pulling in IPv6 DNS servers when the user opted
to inhibit peer DNS servers in the configuration.
Jo-Philipp Wich [Wed, 1 Mar 2017 00:04:33 +0000 (01:04 +0100)]
opkg: fix several package installation bugs
Update to latest Git in order to import the following fixes:
19070b6 unarchive: fix possible segmentation fault in deb_extract() 758527e pkg: forward "provided_by_hand" flag in pkg_merge() 1fdc2ca pkg: mark bit fields in pkg_t unsigned 15fc1ee opkg_cmd: avoid null pointer dereference in opkg_what_depends_conflicts_cmd() 439c89e opkg_cmd: fix endless loop in whatprovides/whatreplaces 0fb3e9f pkg_depends: propagate virtual provided detail flag to providers 793155f pkg_depends: fix unsatisfied dependency installation order b1dc770 libopkg: fix some overly aggressive line wrapping in pkg_depends.c
Yousong Zhou [Sun, 5 Mar 2017 08:07:09 +0000 (16:07 +0800)]
malta: restore "be" subtarget from being source-only
The malta "be" and "le" subtargets share the arch with many devices of
ar71xx and ramips. They can be handy for testing, debugging, trying
both snapshot and release builds.
This commit makes the "be" subtarget part of the ci and release builds
The current way of creating a STAMP_CONFIGURED filename for OpenSSL can
lead to an extremely long filename that makes touch unable to create it,
and fail the build.
Use mkhash to produce a hash against OPENSSL_OPTIONS which creates a
shortert stamp file,
Florian Fainelli [Mon, 13 Feb 2017 02:34:53 +0000 (18:34 -0800)]
rssileds: Fix build with external toolchains
Pass down TARGET_CPPFLAGS for path to header files, and append the
libraries we depend on in TARGET_LDFLAGS. Put TARGET_LDFLAGS at the end
of the command line as is required by modern GCC/binutils.
Florian Fainelli [Sun, 12 Feb 2017 22:10:12 +0000 (14:10 -0800)]
swconfig: Link with libubox
Fixes linking failures observed with external toolchains:
/home/florian/dev/toolchains/stbgcc-4.8-1.5/bin/../lib/gcc/mipsel-linux-gnu/4.8.5/../../../../mipsel-linux-gnu/bin/ld:
warning: libubox.so, needed by
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so,
not found (try using -rpath or -rpath-link)
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_open_nested'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_parse'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blob_nest_end'
/home/florian/dev/openwrt/trunk/staging_dir/target-mipsel-unknown-linux-gnu_glibc/usr/lib/libuci.so:
undefined reference to `blobmsg_add_field'
Florian Fainelli [Sun, 12 Feb 2017 22:07:36 +0000 (14:07 -0800)]
px5g: Fix TARGET_LDFLAGS and add TARGET_CPPFLAGS
Make sure we pass down TARGET_CPPFLAGS to let toolchains with no default
search paths to find the mbdetls headers, and override TARGET_LDFLAGS to
include libraries we are linking against.
thc-ipv6 did not allow an external environment to override CFLAGS, which
would lead to our CFLAGS not being passed properly (relro,
optimizations, etc...)
Francois Goudal [Mon, 27 Feb 2017 20:59:50 +0000 (21:59 +0100)]
ramips: add support for Afoundry EW-1200
This device features both a 2.4 and 5Ghz radio, and supports
802.11a/b/g/n/ac modes.
It has 5 Gb-Ethernet ports and a USB 3.0 host port.
It is powered by the Mediatek MT7621 SoC, and the MT7602E and MT7612E wifi
chipsets, together with 128MB of RAM and 16 MB of SPI Flash.
The stock firmware is in fact based on some openwrt barrier breaker, with a
mediatek SDK kernel, and an afoundry custom made web interface (not LuCI
based).
Firmware update page on the stock web interface can not accept sysupgrade
images, it bricks the device.
At this point, the only working solution I found was to connect to the
serial console port (available on J4 header) and to use opkg to install
dropbear.
Then scp the sysupgrade file in the device's /tmp and run sysupgrade from
console without preserving configuration files.
Rafał Miłecki [Wed, 1 Mar 2017 14:37:58 +0000 (15:37 +0100)]
kernel: fix earlycon by keeping __earlycon_table
Somewhere between 4.4 and 4.9 there was a change that made
OF_EARLYCON_DECLARE adding entries to the __earlycon_table instead of
__earlycon_of_table. We need to keep this table as well.
Rafał Miłecki [Wed, 1 Mar 2017 05:52:23 +0000 (06:52 +0100)]
bcm53xx: backport Broadcom's iProc QSPI driver
This driver has been added instead of improving spi-bcm53xx. It has some
advantages: allows SPI speed control & hopefully doesn't have bug that
was stopping us from using multiple SPI messages for writing flash data.
ZengFei Zhang [Wed, 22 Feb 2017 12:47:22 +0000 (20:47 +0800)]
ramips: add support for HiWiFi HC5962
This patch adds supports for the HiWiFi HC5962(gee4) http://www.hiwifi.com
Short specification:
- MT7621AT + MT7612EN + 7603EN
- 256MB DDR3 RAM
- 128MB NAND flash
- 1+3 x 1000M Ethernet
- 1x USB 2.0 port. 1x USB 3.0 port.
- reset button
- UART pad on PCB (JP3: TX, RX, GND, 3.3V)
Flash instruction:
1, Download lede-ramips-mt7621-hc5962-squashfs-factory.bin
2, Login as root via SSH on 192.168.199.1 and then copy factory.bin(using wget or nc or...) to /tmp/
3, use the following commands:
$ mtd write /tmp/lede-ramips-mt7621-hc5962-squashfs-factory.bin firmware
$ mtd erase firmware_backup && reboot
After reboot you should be able to login as root via SSH on 192.168.1.1
rules.mk: make PKG_CONFIG_DEPENDS properly track string values
The confvar macro is adjusted to not only consider if a variable has a
value or not, but also the value itself. Instead of creating a string of
'y' and 'n' characters, all variable names and values are concatenated
and hashed.
Jonas Gorski [Thu, 23 Feb 2017 21:16:00 +0000 (22:16 +0100)]
toolchain: unbreak glibc on MIPS
Binutils recently updated the ABI version to 5, which broke glibc, as it
refuses to load anything > 3. Upstream reverted the ABI version update,
so backport the commit.
Fixes the following error on boot:
/bin/sh: error while loading shared libraries: /lib/libcrypt.so.1: ELF file ABI version invalid
[ 0.920077] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00
[ 0.920077]
[ 0.929450] Rebooting in 1 seconds..
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Wang JiaWei [Fri, 24 Feb 2017 23:19:15 +0000 (07:19 +0800)]
ramips: add support for HiWiFi HC5661A
HC5661A is almost the same as HC5661 but MT7628AN is used instead of MT7620A.
- MT7628AN
- 128 MiB DDR2 RAM (W971GG6KB-25)
- 16 MiB SPI NOR flash (W25Q128)
- SD slot (not work yet)
- 1+4 x 100M Ethernet
- 802.11 b/g/n Wi-Fi
- 3 x LED
- 1 x button
- UART pad on PCB (JP1: TX, RX, GND, 3.3V)
The factory flash layout seems different from HC5661.
"hwf_config" is renamed to "oem" and its size changes to 0x20000.
It is modified accordingly in the dts file.
SD slot:
- Tried to add modules kmod-sdhci kmod-sdhci-mt7620, and corresponding dts block.
- It will block WAN + 3xLAN ports, only one LAN works.
- I'm not sure why, everything else works fine.
The more straight forward approach for generating the pure and unpadded
kernel file which then can be used for initramfs straight.
Build options for factory.img and sysupgrade.tar are handeled
seperately.
Signed-off-by: Thomas Reifferscheid <thomas@reifferscheid.org>
Thibaut VARENE [Thu, 23 Feb 2017 11:24:05 +0000 (12:24 +0100)]
ar71xx: mikrotik: erase firmware partition on SPI NOR devices in pre_upgrade()
On Mikrotik SPI NOR devices, the firmware partition must be erased when flashing
from stock firmware, otherwise leftover bits (in particular a kernel signature)
can trigger a boot loop.
When booted from initramfs (the only way to flash LEDE on these devices),
this patch unconditionally erases the firmware partition in the pre_upgrade()
stage for all supported SPI NOR devices.
Felix Fietkau [Sat, 25 Feb 2017 10:15:07 +0000 (11:15 +0100)]
ubus: update to the latest version
c09e4f0 ubusd: fix incomplete copy of shared buf during queue-ing 453b87f cli: add support for subscribing to objects 6eb3c96 cli: do not use default timeout for listen dfe3383 libubus: reset ctx->sock.error when doing ubus reconnect 34c6e81 cli: fix listen_timeout compile issue
Yousong Zhou [Fri, 3 Feb 2017 13:15:42 +0000 (21:15 +0800)]
mac80211: hwsim: select DRIVER_11AC_SUPPORT and DRIVER_11W_SUPPORT
This is required for default wireless configuration of malta target to
work out of the box again. Fixes "77ece30e: hostapd: Add ability to
specify that that wireless driver supports 802.11ac"
Ben Kelly [Mon, 20 Feb 2017 12:04:30 +0000 (14:04 +0200)]
swconfig: Bugfix switch_port uci option parsing
When not defining 'device' or 'vlan' in relevant switch_port uci
sections, behaviour is inconsistent due to *devn, *port and *vlan
pointers not being zero initialized.