openwrt/staging/981213.git
5 years agoramips: mt7620: select only the matching mt76 driver
Chen Minqiang [Fri, 30 Nov 2018 10:48:49 +0000 (18:48 +0800)]
ramips: mt7620: select only the matching mt76 driver

Because every device has selected the corresponding mt76 driver, we can
now disable the mt76 metapackage by default to make sure that other
devices (those don't need mt76) avoid selecting unwanted packages.

We can find the hardware specifies and determine the dependencies on
these sites:
  https://wikidevi.com/wiki/
  https://openwrt.org/toh/hwdata/

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
5 years agoramips: mt7620: drop mt76 driver for boards without mt76 wireless
Chen Minqiang [Fri, 30 Nov 2018 11:25:39 +0000 (12:25 +0100)]
ramips: mt7620: drop mt76 driver for boards without mt76 wireless

These boards don't have a mt76 wireless at all and don't need any of the
mt76 family drivers.

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
5 years agoramips: mt7620: disable PCIe if nothing is attached
Mathias Kresin [Fri, 30 Nov 2018 11:19:26 +0000 (12:19 +0100)]
ramips: mt7620: disable PCIe if nothing is attached

All boards neither expose the PCIe as Mini-PCIe nor have anything
attached to the PCIe Bus. Disable PCIe for those by dropping the node
from the dts files.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: mt7620: add missing pci wifi nodes to dts files
Chen Minqiang [Fri, 30 Nov 2018 10:41:43 +0000 (18:41 +0800)]
ramips: mt7620: add missing pci wifi nodes to dts files

These devices has pci wifi but not defined in dts:
 HC5761
 HC5861
 TINY-AC

Signed-off-by: Chen Minqiang <ptpt52@gmail.com>
5 years agokernel: use add_mtd_partitions() helper when using OpenWrt parsers
Rafał Miłecki [Mon, 3 Dec 2018 10:16:03 +0000 (11:16 +0100)]
kernel: use add_mtd_partitions() helper when using OpenWrt parsers

This helper uses hierarchical partitions layout following the way
upstream parsers work. It's closer to what we should use when mainlining
our solutions. It also doesn't require hacky casting of struct
mtd_partition to the const.

THIS WILL AFFECT KERNEL PRINTING PARTITIONS IN THE LOG

Something like:
[    3.930158] 0x0000004e0000-0x000001fb0000 : "rootfs_data"
will get replaced by:
[    3.907338] Creating 1 MTD partitions on "rootfs":
[    3.912142] 0x00000031d400-0x000001ded400 : "rootfs_data"

It's important to understand that "rootfs_data" in above example is a
*subpartition* of the "rootfs" now. To get absolute addresses (e.g. for
some debugging purposes) one has to add them to the "rootfs", e.g.
[    3.912548] 0x0000001c2c00-0x000001fb0000 : "rootfs"

(0x1c2c00 + 0x31d400 = 0x4e0000)

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agokernel: backport 2 mtd partitioning fixes
Rafał Miłecki [Mon, 3 Dec 2018 09:33:36 +0000 (10:33 +0100)]
kernel: backport 2 mtd partitioning fixes

This improves handling of subpartitions.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agoopenvpn: add list element parsing
Florian Eckert [Tue, 20 Nov 2018 15:01:20 +0000 (16:01 +0100)]
openvpn: add list element parsing

For the parameters tls-cipher and ncp-ciphers more than one option can
be used in the OpenVPN configuration, separated by a colon, which should
be implemented as a list in order to configure it more clearly. By
adding the new OPENVPN_LIST option to the openvpn.options file with the
tls-cipher and ncp-cipher parameters, uci can now add this option as a
"list" and the init script will generate the appropriate OpenVPN
configuration from it.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
5 years agokernel: fix downloading rcX releases
Rafał Miłecki [Mon, 3 Dec 2018 08:16:23 +0000 (09:16 +0100)]
kernel: fix downloading rcX releases

They are no longer stored in the "testing" subdirectory and are not
available as .tar.xz archives. If -rc is detected download it from the
git.kernel.org and use .tar.gz.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
5 years agoath79: add support for Ubiquiti AirRouter
Russell Senior [Mon, 26 Nov 2018 22:28:00 +0000 (14:28 -0800)]
ath79: add support for Ubiquiti AirRouter

Indoor low-power router with 2.4 GHz radio

CPU:    Atheros AR7241 rev 1
RAM:    32 MB
Flash:  8 MB NOR SPI
Switch: Atheros AR7240
Ports:  1x WAN, 4x LAN 10/100 Ethernet
WLAN:   Atheros AR9285 (2.4 GHz)
USB:    1x USB2 host port

Note: Ethernet WAN/LAN port naming is reversed from ar71xx.
WAN is eth0; LAN is eth1.1.

UART settings: 115200, 8N1

                LEDs
        +--------------------------
        |
        |
        |
        |
        |
        |
        |
        |
    VCC | x x
     RX | * x
        | x x
        | x x
     TX | * x
    GND | * x
        |
        |
        |
        |
        +--------------------------
                ETHERNET PORTS

Installation from Ubiquiti firmware, is as for other ubnt-xm AirOs devices.

Signed-off-by: Russell Senior <russell@personaltelco.net>
5 years agoath79: split ubnt outdoor device leds into separate dtsi
Russell Senior [Mon, 26 Nov 2018 22:27:06 +0000 (14:27 -0800)]
ath79: split ubnt outdoor device leds into separate dtsi

Move common LED configuration into a separate includible dtsi.

Signed-off-by: Russell Senior <russell@personaltelco.net>
5 years agocryptodev-linux: move from packages feed
Eneas U de Queiroz [Sun, 25 Nov 2018 20:12:11 +0000 (20:12 +0000)]
cryptodev-linux: move from packages feed

The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
This is actually a build dependency for /dev/crypto support in openssl.
Since it is a kernel module, it belongs here anyway.

- Removed Nikos Mavrogiannopoulos as maintainer.
- Streamlined make flags

Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
5 years agox86: make sysupgrade.tgz reachable again
Tomasz Maciej Nowak [Wed, 28 Nov 2018 19:44:21 +0000 (20:44 +0100)]
x86: make sysupgrade.tgz reachable again

Moving binding mount before check for saved sysupgrade configuration
made it unreachable. Fix it by moving binding mount after the check.

Fixes: f78b2616 (x86: mount writable bootfs)
Reported-by: Lucian Cristian <luci@powerneth.ro>
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agoRevert "base-files: fwtool: Fix wrong checksum on combined-image with metadata"
Jo-Philipp Wich [Sun, 2 Dec 2018 15:05:40 +0000 (16:05 +0100)]
Revert "base-files: fwtool: Fix wrong checksum on combined-image with metadata"

This reverts commit 41770add03ad77a0ce41ed424ad050238f7d9272.

The fwtool_check_image() procedure is used by `sysupgrade --test` which must
not alter the image under test in any way.

Currently, when the LuCI ui or any other sysupgrade wrapper first invokes
sysupgrade --test to verify the compatibility of the image and then calculates
the sha256sum over it, the resulting checksum will differ from the original
image since the test invocation will implicitely strip the metadata trailer.

To properly fix the underlying issue, the combined image checksumming code
must be modified to skip the metadata trailer.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoramips: merge relocate compile into build recipe
Mathias Kresin [Fri, 30 Nov 2018 07:57:03 +0000 (08:57 +0100)]
ramips: merge relocate compile into build recipe

Compile the loader if the relocate-kernel image recipe is used and get
rid of the legacy build code to do so.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: specify "firmware" partition format in JBOOT devices
Pawel Dembicki [Thu, 29 Nov 2018 20:42:35 +0000 (20:42 +0000)]
ramips: specify "firmware" partition format in JBOOT devices

Specify firmware partition format by compatible string.

List of devices:
-DWR-116-A1
-DWR-118-A2
-DWR-512-B
-DWR-921-C1
-LR-25G001

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
5 years agokernel: add DT binding support to the jimage parser
Pawel Dembicki [Thu, 29 Nov 2018 14:03:12 +0000 (14:03 +0000)]
kernel: add DT binding support to the jimage parser

It allows specifying jimage parser directly in the DT.

Tested on LAVA LR-25G001

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
5 years agoramips: add support for MTC Wireless Router WR1201
Valentín Kivachuk [Thu, 29 Nov 2018 23:13:53 +0000 (00:13 +0100)]
ramips: add support for MTC Wireless Router WR1201

MTC Wireless Router WR1201 is the OEM name of the board. It is also sold
rebranded as STRONG Dual Band Gigabit Router 1200.

Specification:
- SoC: MediaTek MT7621A (880 MHz)
- Flash: 16 MiB
- RAM: 128 MiB
- Wireless: 2.4Ghz(MT7602EN) and 5Ghz (MT7612EN)
- Ethernet speed: 10/100/1000
- Ethernet ports: 4+1
- 1x USB 3.0
- 1x microSD reader
- Serial baud rate of Bootloader and factory firmware: 57600

The OEM webinterface writes only as much bytes as listed in the
uImage header field to the flash. Also, the OEM webinterface
evaluates the name field of uImage header before flashing (the
string "WR1201_8_128")

To flash via webinterface, is mandatory to use first initramfs.bin
and after (from the OpenWrt) the sysupgrade.bin

Some notes:
- Some microSD will not work:

  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: card claims to support voltages below defined range
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising SDIO card
  mtk-sd 1e130000.sdhci: no support for card's volts
  mmc0: error -22 whilst initialising MMC card

Signed-off-by: Valentín Kivachuk <vk18496@gmail.com>
5 years agoodhcpd: update to latest git HEAD
Hans Dedecker [Thu, 29 Nov 2018 20:44:16 +0000 (21:44 +0100)]
odhcpd: update to latest git HEAD

d404c7e netlink: fix triggering of NETEV_ADDR6LIST_CHANGE event
ae6cf80 config: correctly break string for prefix filter

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoramips: specify "firmware" partition format
INAGAKI Hiroshi [Wed, 28 Nov 2018 03:28:35 +0000 (12:28 +0900)]
ramips: specify "firmware" partition format

Specify firmware partition format by compatible string.

formats in ramips:

- denx,uimage
- tplink,firmware
- seama

It's unlikely but the firmware splitting might not work any longer for
the following boards, due to a custom header:

- EX2700: two uImage headers
- BR-6478AC-V2: edimax-header
- 3G-6200N: edimax-header
- 3G-6200NL: edimax-header
- BR-6475ND: edimax-header
- TEW-638APB-V2: umedia-header
- RT-N56U: mkrtn56uimg

But it rather looks like the uImage splitter is fine with the extra
header.

The following dts are not touched, due to lack of a compatible string in
the matching firmware splitter submodule:

- CONFIG_MTD_SPLIT_JIMAGE_FW
    DWR-116-A1.dts
    DWR-118-A2.dts
    DWR-512-B.dts
    DWR-921-C1.dts
    LR-25G001.dts
- CONFIG_MTD_SPLIT_TRX_FW
    WCR-1166DS.dts
    WSR-1166.dts
- CONFIG_MTD_SPLIT_MINOR_FW
    RBM11G.dts
    RBM33G.dts
- CONFIG_MTD_SPLIT_LZMA_FW
    AR670W.dts
- CONFIG_MTD_SPLIT_WRGG_FW
    DAP-1522-A1.dts

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
5 years agoramips: unifiy sysupgrade file extensions
Mathias Kresin [Thu, 29 Nov 2018 09:48:03 +0000 (10:48 +0100)]
ramips: unifiy sysupgrade file extensions

Use .bin as file extension where possible. The user doesn't need to that
sysupgrade images for NAND boards are tarballs.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: remove duplicate image build variables
Mathias Kresin [Thu, 29 Nov 2018 09:22:26 +0000 (10:22 +0100)]
ramips: remove duplicate image build variables

Remove image build variables which are set to the same value as the
default image build recipe.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: bdcom-wap2100: Change DTS license to GPL-2.0-or-later OR MIT
Petr Štetiar [Thu, 29 Nov 2018 08:29:06 +0000 (09:29 +0100)]
ramips: bdcom-wap2100: Change DTS license to GPL-2.0-or-later OR MIT

Having MIT as alternative is sometimes preferred by upstream maintainers
and allows sharing that simple code with other projects. We don't really
want multiple DTS versions for the same device.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoath79: ubnt-xw: Change DTS license to GPL-2.0-or-later OR MIT
Petr Štetiar [Thu, 29 Nov 2018 08:25:40 +0000 (09:25 +0100)]
ath79: ubnt-xw: Change DTS license to GPL-2.0-or-later OR MIT

Having MIT as alternative is sometimes preferred by upstream maintainers
and allows sharing that simple code with other projects. We don't really
want multiple DTS versions for the same device.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoath79: ubnt-bullet-m-xw: Change DTS license to GPL-2.0-or-later OR MIT
Petr Štetiar [Thu, 29 Nov 2018 08:27:23 +0000 (09:27 +0100)]
ath79: ubnt-bullet-m-xw: Change DTS license to GPL-2.0-or-later OR MIT

Having MIT as alternative is sometimes preferred by upstream maintainers
and allows sharing that simple code with other projects. We don't really
want multiple DTS versions for the same device.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agorules.mk: fix syntax error
Jo-Philipp Wich [Thu, 29 Nov 2018 11:32:34 +0000 (12:32 +0100)]
rules.mk: fix syntax error

Fix broken assignment operator added in a previous commit.

Fixes db73ec9f51 ("rules.mk: add INSTALL_SUID macro")
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agorules.mk: add INSTALL_SUID macro
Jo-Philipp Wich [Thu, 29 Nov 2018 10:59:20 +0000 (11:59 +0100)]
rules.mk: add INSTALL_SUID macro

This is useful for packages that want to stage SUID executables.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agobase-files: fix prerm return value, align with postinst code
Tony Ambardar [Sat, 3 Mar 2018 04:04:36 +0000 (20:04 -0800)]
base-files: fix prerm return value, align with postinst code

The return value of a package prerm script is discarded and not returned
correctly by default_prerm(). This allows other operations like service
shutdown to "leak" their return value, prompting workarounds like commit
48cfc826 which do not address the root cause.

Preserve a package prerm script return value for use by default_prerm(),
sharing the corresponding code from default_postinst() for consistency.
Also use consistent code for handling of /etc/init.d/ scripts.

Run Tested on: LEDE 17.01.4 running ar71xx.

Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
5 years agoramips: fix MTD EEPROM offset for TL-WR840N v5
Felix Fietkau [Thu, 29 Nov 2018 10:45:07 +0000 (11:45 +0100)]
ramips: fix MTD EEPROM offset for TL-WR840N v5

The previous offset was invalid and pointed to the end of the partition,
which was causing issues with mt76

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agosdk: find kernel modules when KDIR is a symlink
Karl Vogel [Thu, 29 Nov 2018 08:07:21 +0000 (09:07 +0100)]
sdk: find kernel modules when KDIR is a symlink

The find statement would not return any results if the KDIR_BASE pointed to a
symlink. Ran into this issue due to a custom Kernel/Prepare that was installing
a symlink to the kernel directory.

The extra slash at the end fixes this scenario and does no harm for targets that
have a proper KDIR.

Signed-off-by: Karl Vogel <karl.vogel@gmail.com>
5 years agoramips: bdcom-wap2100: Enable mt7610e 5GHz radio
Petr Štetiar [Wed, 28 Nov 2018 20:53:02 +0000 (21:53 +0100)]
ramips: bdcom-wap2100: Enable mt7610e 5GHz radio

The 5GHz radio of this device uses an mt7610e PCI-E chip, which has
been recently started to be supported.

 mt76x0e 0000:01:00.0: card - bus=0x1, slot = 0x0 irq=4
 mt76x0e 0000:01:00.0: ASIC revision: 76100002
 mt76x0e 0000:01:00.0: Firmware Version: 0.1.00
 mt76x0e 0000:01:00.0: EEPROM ver:01 fae:00

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoramips: bdcom-wap2100: Set firmware partition format to denx,uimage
Petr Štetiar [Wed, 28 Nov 2018 20:48:59 +0000 (21:48 +0100)]
ramips: bdcom-wap2100: Set firmware partition format to denx,uimage

Specify firmware partition format to denx,uimage in compatible DTS property.

 2 uimage-fw partitions found on MTD device firmware
 Creating 2 MTD partitions on "firmware":
 0x000000000000-0x00000017f72b : "kernel"
 0x00000017f72b-0x000000f70000 : "rootfs"

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoramips: bdcom-wap2100: Fix boot failure by adding partitions compatible property
Petr Štetiar [Wed, 28 Nov 2018 19:06:03 +0000 (20:06 +0100)]
ramips: bdcom-wap2100: Fix boot failure by adding partitions compatible property

Flash partitions were moved under partition table node, but addition of
compatible property was omitted which lead to following boot failure:

 VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
 Please append a correct "root=" boot option; here are the available partitions:
 1f00           16384 mtdblock0
  (driver?)
 Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

Fixes: e4d9217f (ramips: improve BDCOM WAP2100-SK support)
Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agomxs: use generic sysinfo board detection
Michael Heimpold [Sat, 3 Nov 2018 00:24:01 +0000 (01:24 +0100)]
mxs: use generic sysinfo board detection

Since we do nothing special for mxs based boards,
we can simply use the generic existing code.
We just need to convert scripts to use the DT
compatible strings.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
5 years agomac80211: fix reordering of buffered broadcast packets
Felix Fietkau [Wed, 28 Nov 2018 21:42:25 +0000 (22:42 +0100)]
mac80211: fix reordering of buffered broadcast packets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agomt76: update to the latest version
Felix Fietkau [Wed, 28 Nov 2018 21:35:10 +0000 (22:35 +0100)]
mt76: update to the latest version

5fb60a7 mt7603: fix aggregation size handling
31cd20e mt7603: issue PSE reset on stuck beacon
4063ae1 mt7603: check for PSE hang / stuck beacon first
00e03b9 mt7603: fix MT_WF_PHY_CR_RXTD_BASE definition
c3efb5d mt7603: add support for detecting MT7688 and single stream devices
2a136cb mt7603: fix TKIP key setup
cd456ca mt7603: disable broken support for WEP hardware encryption
3ecb7f8 mt7603: fix hardware queue assignment
6ac9653 mt7603: fix CAB queue limits
d22feb0 mt7603: move cab queue enabling to pre-tbtt tasklet
44bb372 mt7603: fix CAB queue flush mask

Signed-off-by: Felix Fietkau <nbd@nbd.name>
5 years agoopenvpn: update to 2.4.6
Jo-Philipp Wich [Wed, 28 Nov 2018 20:23:03 +0000 (21:23 +0100)]
openvpn: update to 2.4.6

Update the OpenVPN package to version 2.4.6, refresh patches and drop
menuconfig options which are not supported upstream anymore.

Also fix the x509-alt-username configure flag - it is not supported
by mbedtls and was syntactically wrong in the Makefile - and the
port-share option which has been present in menuconfig but not been
used in the Makefile.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agouhttpd: update to latest Git head
Jo-Philipp Wich [Wed, 28 Nov 2018 11:42:24 +0000 (12:42 +0100)]
uhttpd: update to latest Git head

cdfc902 cgi: escape url in 403 error output
0bba1ce uhttpd: fix building without TLS and Lua support
2ed3341 help: document -A option
fa5fd45 file: fix CPP syntax error
77b774b build: avoid redefining _DEFAULT_SOURCE

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
5 years agoramips: fix switch port order for HuaWei HG255D
David Yang [Fri, 26 Oct 2018 09:21:58 +0000 (17:21 +0800)]
ramips: fix switch port order for HuaWei HG255D

The order of port marks and LEDs is reversed according to the board.

Signed-off-by: David Yang <mmyangfl@gmail.com>
5 years agoramips: mt7620: add DIR-810L's mt7610e 5 GHz radio
Roger Pueyo Centelles [Wed, 24 Oct 2018 16:07:43 +0000 (18:07 +0200)]
ramips: mt7620: add DIR-810L's mt7610e 5 GHz radio

The 5 GHz radio of this device uses an mt7610e pci-e chip, which has
been recently added support.

Tested on the actual device as AP and client, TCP throughput ~90 Mbps
U/D.

Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
5 years agoramips: add support for UniElec U7621-06-512M-64M variant
Nishant Sharma [Wed, 24 Oct 2018 14:23:20 +0000 (19:53 +0530)]
ramips: add support for UniElec U7621-06-512M-64M variant

Add support for UniElec U7621-06 variant with 512MB RAM and 64MB flash.

Additional specs are below:

CPU: MT7621 (880Mhz)
Bootloader: Ralink U-Boot
Flash: 64MB
 - U-Boot identifies as Macronix MX66L51235F
 - kernel identifies as MX66L51235l (65536 Kbytes)
RAM: 512MB

Rest of the details as per commit 46ab81e405d2 ("ramips add support for
UniElec U7621-06")

Signed-off-by: Nishant Sharma <nishant@unmukti.in>
[use generic board detection, add firmware partition compatible, extend
firmware partition to use all of the remaining flash space, add a
maximum image size matching the firmware partition size]
Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: use generic board detection for Unielec u7621-06
Mathias Kresin [Tue, 27 Nov 2018 23:31:10 +0000 (00:31 +0100)]
ramips: use generic board detection for Unielec u7621-06

Use the generic board detection for the board instead of the target
specific one. Mark the sysupgrade image compatible with the former used
userspace boardname to allow an upgrade from earlier versions.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: add support for Wavlink WL-WN570HA1
Thomas Vincent-Cross [Mon, 22 Oct 2018 15:21:16 +0000 (02:21 +1100)]
ramips: add support for Wavlink WL-WN570HA1

This commit adds support for the Wavlink WL-WN570HA1, a dual-band PoE
wireless router with the following specifications:

 - CPU: MediaTek MT7688AN 580MHz
 - Flash: 8MB
 - RAM: 64MB
 - Ethernet: 1x 10/100Mbps
 - 2.4 GHz: 802.11b/g/n SoC, 1T1R, 27 dBm
 - 5 GHz: 802.11a/n/ac MT7610E, 1T1R, 25 dBm
 - Antennas: 2x external (1 per radio), detachable
 - LEDs: 3 programmable + Wi-Fi, WAN/LAN, Power
 - Buttons: Reset

Flashing instructions:

Factory U-boot launches a TFTP client if reset button is pressed during power-on.
Rename the sysupgrade file and configure TFTP as follows:

 - Client (WL-WN570HA1) IP: 192.168.10.101
 - Server IP: 192.168.10.100
 - Filename: firmware.bin

Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au>
[use generic board detection, add firmware partition compatible]
Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoath79: add support for ROSINSON WR818 board
Rosy Song [Sun, 7 Oct 2018 04:04:54 +0000 (12:04 +0800)]
ath79: add support for ROSINSON WR818 board

This commit adds support for the ROSINSON WR818 WiFi-Router

SoC:    Qualcomm Atheros QCA9563,
FLASH:  Winbond W25Q128FV 16MBytes,
WiFi:   QCA9563 b/g/n 3x3 450Mbit/s,
USB:    1x USB 2.0 Type A, 1x USB2.0 Type C,
IN:     WPS/Reset button GPIO1,
OUT:    Power LED red, Internet LED red, WLAN LED red,
        LAN1 LED red, LAN2 LED red, System LED red,
UART:   RX-GPIO18, TX-GPIO22,

Tested and working:
    - Ethernet (LAN + WAN)
    - WiFi
    - OpenWRT sysupgrade
    - Button
    - LEDs

Installation of OpenWRT from vendor firmware:
    - Connect to the Web-interface at http://192.168.1.1
    - Go to "Administration" -> "Firmware Upgrade"
    - Upload the OpenWrt sysupgrade image

Signed-off-by: Rosy Song <rosysong@rosinson.com>
5 years agoath79: merge glinet gl-x750 dtsi and dts
Mathias Kresin [Mon, 26 Nov 2018 14:46:14 +0000 (15:46 +0100)]
ath79: merge glinet gl-x750 dtsi and dts

The board doesn't come in different flash type flavours, hence there is
no need to keep a dtsi + dts for this purpose.

While at it, fix some whitespace issues.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoath79: rename glinet x750
Mathias Kresin [Mon, 26 Nov 2018 14:39:25 +0000 (15:39 +0100)]
ath79: rename glinet x750

The boardname is gl-x750 and is already used for the led names.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: fix alphabetic ordering of skylab skw92a
Russell Senior [Mon, 26 Nov 2018 21:03:05 +0000 (13:03 -0800)]
ramips: fix alphabetic ordering of skylab skw92a

Fix the alphabetic ordering of skylab skw92a in ramips_setup_interfaces.

Signed-off-by: Russell Senior <russell@personaltelco.net>
5 years agoramips: fix RavPower WD03 SoC dtsi include
Matthias Badaire [Mon, 26 Nov 2018 20:35:19 +0000 (21:35 +0100)]
ramips: fix RavPower WD03 SoC dtsi include

The RavPower WD03 is a mt7620n based baord. With the change applied, I2C
should work now with the RavPower WD03.

Signed-off-by: Matthias Badaire <mbadaire@gmail.com>
[reworded commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoRevert "x86: add intel microcode entries to grub config"
John Crispin [Tue, 27 Nov 2018 17:58:38 +0000 (18:58 +0100)]
Revert "x86: add intel microcode entries to grub config"

This reverts commit 546fced2a23557e95dd34246744c3aa6cad92fe6.

Signed-off-by: John Crispin <john@phrozen.org>
5 years agoRevert "intel-microcode: create early load microcode image"
John Crispin [Tue, 27 Nov 2018 17:58:37 +0000 (18:58 +0100)]
Revert "intel-microcode: create early load microcode image"

This reverts commit 022ffb56b2491fd7d8051ac6e6c7622ecc313d8f.

Signed-off-by: John Crispin <john@phrozen.org>
5 years agoRevert "x86: add amd microcode entries to grub config"
John Crispin [Tue, 27 Nov 2018 17:58:35 +0000 (18:58 +0100)]
Revert "x86: add amd microcode entries to grub config"

This reverts commit a822283c7e56bb3b409712e0eb9af5a91aac247d.

Signed-off-by: John Crispin <john@phrozen.org>
5 years agoRevert "amd64-microcode: create early load microcode image"
John Crispin [Tue, 27 Nov 2018 17:58:33 +0000 (18:58 +0100)]
Revert "amd64-microcode: create early load microcode image"

This reverts commit 975019b3a755ec3b91864b60b45e5ee104075096.

Signed-off-by: John Crispin <john@phrozen.org>
5 years agotools/bison: Update to 3.2.2
Daniel Engberg [Tue, 27 Nov 2018 07:53:29 +0000 (08:53 +0100)]
tools/bison: Update to 3.2.2

Update bison to 3.2.2

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
5 years agoath79: add Archer C58/C59 partition compatible
David Bauer [Mon, 26 Nov 2018 18:28:07 +0000 (19:28 +0100)]
ath79: add Archer C58/C59 partition compatible

This commit adds firmware partition compatible for the
TP-Link Archer C58 v1 and Archer C59 v1.

Since a22311e this allows to select the correct mtdsplit
parser instead of trying all available ones one by one.

Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agoath79: add firmware partition compatible for OCEDO
David Bauer [Mon, 26 Nov 2018 18:25:19 +0000 (19:25 +0100)]
ath79: add firmware partition compatible for OCEDO

This commit adds firmware partition compatible for the
OCEDO Raccoon and OCEDO Koala.

Since a22311e this allows to select the correct mtdsplit
parser instead of trying all available ones one by one.

Signed-off-by: David Bauer <mail@david-bauer.net>
5 years agoath79: specify "firmware" partition format for I-O DATA devices
INAGAKI Hiroshi [Mon, 26 Nov 2018 13:34:49 +0000 (22:34 +0900)]
ath79: specify "firmware" partition format for I-O DATA devices

Specify firmware partition format (denx,uimage) by compatible string
for I-O DATA devices.

affected devices (&run tested)

- WN-AC1167DGR
- WN-AC1600DGR2

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
5 years agoath79: specify "firmware" partition format for ELECOM WRC-300GHBK2-I
INAGAKI Hiroshi [Mon, 26 Nov 2018 13:31:23 +0000 (22:31 +0900)]
ath79: specify "firmware" partition format for ELECOM WRC-300GHBK2-I

Specify firmware partition format (denx,uimage) by compatible string
for ELECOM WRC-300GHBK2-I.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
5 years agoath79: fix shebang
Mathias Kresin [Mon, 26 Nov 2018 13:57:34 +0000 (14:57 +0100)]
ath79: fix shebang

The shebang was accidentally changed with 9989fd5154fd ("ath79: add
support for GL-iNet GL-X750").

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: fix GB-PC1/PC2 build error
Mathias Kresin [Mon, 26 Nov 2018 15:10:33 +0000 (16:10 +0100)]
ramips: fix GB-PC1/PC2 build error

With ed25e3ac02d9 ("ramips: fix some clocks in mt7621.dtsi") the
cpuclock node was dropped from the mt7621.dtsi without removing the
references to this node from the GB-PC1/PC2 dts files.

Remove them now, to fix the build error.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: fix Lava LR-25G001 invalid led names
Mathias Kresin [Mon, 26 Nov 2018 15:03:09 +0000 (16:03 +0100)]
ramips: fix Lava LR-25G001 invalid led names

It has to be <board>:<colour>:<function> and is expected exactly this
way by the userspace scripts.

While at it, fix some whitespace issues in the dts file and rename the
flash node as required upstream.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agokernel: ar8xxx: get_arl_table now shows all ports of an entry
Günther Kelleter [Mon, 26 Nov 2018 14:44:31 +0000 (15:44 +0100)]
kernel: ar8xxx: get_arl_table now shows all ports of an entry

Multicast ARL entries can have multiple destination ports. Get and dump
all destination ports of each entry, not just the lowest.

Signed-off-by: Günther Kelleter <guenther.kelleter@devolo.de>
5 years agoramips: rt2880: fix pci cells definition
Mathias Kresin [Mon, 26 Nov 2018 13:17:47 +0000 (14:17 +0100)]
ramips: rt2880: fix pci cells definition

Set the correct number of cells to fix "property has invalid length" dtc
compiler warnings.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: improve BDCOM WAP2100-SK support
Mathias Kresin [Mon, 26 Nov 2018 12:26:06 +0000 (13:26 +0100)]
ramips: improve BDCOM WAP2100-SK support

Use the generic board detection instead of the target specific one as
all recent additions are doing.

Setup the USB led via devicetree (a58535771f11) and include the required
driver by default. Merge the led userspace setting with an existing
identical case.

Use the wps led for boot status indication.

Move the partitions into a partition table node (6031ab345df8) and drop
needless labels. Drop misplaced cells properties (53624c1702e6).

Cleanup the pinmux and only switch pins to gpio functions which a
referenced as gpio in the dts.

Match the maximum image size with the size of the firmware partition.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: add Sanlinking Technologies D240 pinmux quirk
Mathias Kresin [Thu, 1 Nov 2018 22:11:40 +0000 (23:11 +0100)]
ramips: add Sanlinking Technologies D240 pinmux quirk

The sd function of the nd_sd group configures two of the groups pins as
gpios. The pins are used as PCIe reset/power.

Due to the driver load order, the pins are configured way to late if
triggered by the sd-card driver.

To not introduce another kind of driver load order dependency and
configure the pins as early as possible, means during pinmux driver
load.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoralink: fix mt7620 nd_sd pinmux
Mathias Kresin [Sun, 28 Oct 2018 12:05:17 +0000 (13:05 +0100)]
ralink: fix mt7620 nd_sd pinmux

In case the nd_sd group is set to the sd-card function, Pins 45 + 46 are
configured as GPIOs. If they are blocked by the sd function, they can't
be used as GPIOs.

Reported-by: Kristian Evensen <kristian.evensen@gmail.com>
Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: revert fix rt3883 pci pinmux
Mathias Kresin [Mon, 26 Nov 2018 11:59:16 +0000 (12:59 +0100)]
ramips: revert fix rt3883 pci pinmux

This reverts commit dcdc6d9dadf2f97253f7891dacdd5b581d7914b4.

Even if described this way in the datasheet, it causes a bootloop on a
RT-N56U (v1):

  of-flash 1c000000.nor-flash: do_map_probe() failed for type cfi_probe
  of-flash 1c000000.nor-flash: do_map_probe() failed
  VFS: Cannot open root device “(null)” or unknown-block(0,0): error -6

Fixes: FS#1930
Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agoramips: improve Skylab SKW92A support
Mathias Kresin [Mon, 26 Nov 2018 11:34:48 +0000 (12:34 +0100)]
ramips: improve Skylab SKW92A support

Use the generic board detection instead of the target specific one as
all recent additions are doing.

Add the wireless led according the gpio number from the datasheet.
Rename the board part of the leds to match the name used for the
compatible string. Finally, do not hijack the wps led for boot status
indication longer than necessary.

Merge userspace config into existing cases.

Include the manufacture Name in the dts model string.

Signed-off-by: Mathias Kresin <dev@kresin.me>
5 years agonetifd: update to latest git HEAD
Hans Dedecker [Mon, 26 Nov 2018 14:26:53 +0000 (15:26 +0100)]
netifd: update to latest git HEAD

dfa4ede interface: fix return code of __interface_add()
a82a8f6 netifd: fix resource leak on error in netifd_add_dynamic()
fa2403d config: fix resource leaks on error in config_parse_interface()
85de9de interface: fix memory leak on error in __interface_add()

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
5 years agoRevert "ramips: mt7621-spi: replace the driver with upstream staging one"
John Crispin [Mon, 26 Nov 2018 13:43:42 +0000 (14:43 +0100)]
Revert "ramips: mt7621-spi: replace the driver with upstream staging one"

This reverts commit a44f0000779d48c061703351df58adb88419a7c3.

This breaks some mt7621 devices.

Signed-off-by: John Crispin <john@phrozen.org>
5 years agoramips: fix switch ports mapping for newifi d2
Zheng Qian [Thu, 8 Nov 2018 10:16:36 +0000 (18:16 +0800)]
ramips: fix switch ports mapping for newifi d2

Signed-off-by: Zheng Qian <sotux82@gmail.com>
5 years agolantiq: enable FXS ports on VR200v
Kevin Schmidt [Fri, 2 Nov 2018 22:50:25 +0000 (23:50 +0100)]
lantiq: enable FXS ports on VR200v

Disables SMP support.
Add VR200 target to keep SMP on FXS-less device variant.

Signed-off-by: Kevin Schmidt <kevin.patrick.schmidt@googlemail.com>
5 years agoath79: modify mtd partitions for Buffalo BHR-4GRV2
INAGAKI Hiroshi [Tue, 6 Nov 2018 13:37:43 +0000 (22:37 +0900)]
ath79: modify mtd partitions for Buffalo BHR-4GRV2

This commit modifies mtd partitions define for Buffalo BHR-4GRV2 and
move it to generic subtarget.

In Buffalo BHR-4GRV2, "kernel" partition is located behined "rootfs"
partition in the stock firmware. This causes the size of the kernel
to be limited by the fixed value.

0x50000                       0xe80000        0xff0000
  +-------------------------------+--------------+
  |            rootfs             |    kernel    |
  |           (14528k)            |    (1472k)   |
  +-------------------------------+--------------+

After ar71xx was updated to Kernel 4.14, the kernel size of BHR-4GRV2
exceeded the limit, and it breaks builds on official buildbot.
Since this issue was also confirmed in ath79, I modified the mtd
partitions to get rid of that limitation.

0x50000                                       0xff0000
  +----------------------------------------------+
  |                   firmware                   |
  |                   (16000k)                   |
  +----------------------------------------------+

However, this commit breaks compatibility with ar71xx firmware, so I
dropped "SUPPORTED_DEVICES += bhr-4grv2".

This commit requires new flash instruction instead of the old one.

Flash instruction using initramfs image:

1. Connect the computer to the LAN port of BHR-4GRV2
2. Set the IP address of the computer to 192.168.12.10
3. Rename the OpenWrt initramfs image to
"bhr4grv2-uImage-initramfs-gzip.bin" and place it into the TFTP
directory
4. Start the tftp server on the computer
5. While holding down the "ECO" button, connect power cable to
BHR-4GRV2 and turn on it
6. Flashing (orange) diag LED and release the finger from the button,
BHR-4GRV2 downloads the intiramfs image from TFTP server and boot
with it
7. On the initramfs image, create "/etc/fw_env.config" file with
following contents
  /dev/mtd1 0x0 0x10000 0x10000
8. Execute following commands to add environment variables for
u-boot
  fw_setenv ipaddr 192.168.12.1
  fw_setenv serverip 192.168.12.10
  fw_setenv ethaddr 00:aa:bb:cc:dd:ee
  fw_setenv bootcmd "bootm 0x9f050000 || bootm 0x9fe80000"
9. Perform sysupgrade with squashfs-sysupgrade image
10. Wait ~150 seconds to complete flashing

And this commit includes small fix; BHR-4GRV2 has QCA9557 as a SoC,
not QCA9558.

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
5 years agoath79: Remove source-only flag
Robert Marko [Thu, 15 Nov 2018 14:45:54 +0000 (15:45 +0100)]
ath79: Remove source-only flag

Remove the source-only flag from ath79, its supposed to replace ar71xx after next stable release but buildbots are not currently generating images for it.
So in order to expand testing as much as possible and prepare for moving to ath79 lets enable the buildbots to actually build the target.

Signed-off-by: Robert Marko <robimarko@gmail.com>
5 years agoramips: mt7621-spi: replace the driver with upstream staging one
Chuanhong Guo [Sun, 25 Nov 2018 02:25:40 +0000 (10:25 +0800)]
ramips: mt7621-spi: replace the driver with upstream staging one

That driver is more efficient thanks to the refactor of spi reading operation.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
5 years agoramips: add support for Lava LR-25G001
Pawel Dembicki [Sat, 17 Nov 2018 08:47:40 +0000 (08:47 +0000)]
ramips: add support for Lava LR-25G001

The Lava LR-25G001 Wireless Router is based on the MT7620A SoC.

Specification:

- MediaTek MT7620A (580 Mhz)
- 64 MB of RAM
- 16 MB of FLASH
- 1x 802.11bgn radio
- 1x 802.11ac radio (MT7610EN)
- 5x 10/100/1000 Mbps AR8337 Switch (1 WAN AND 4 LAN)
- 2x external, detachable antennas
- 1x USB 2.0
- UART (J3) header on PCB (57600 8n1)
- 8x LED (3x GPIO-controlled), 2x button
- JBOOT bootloader

Known issues:
- Work only three Gigabit ports (3/5, 1 WAN and 2LAN)

Installation:
Apply factory image via http web-gui or JBOOT recovery page

How to revert to OEM firmware:
- push the reset button and turn on the power. Wait until LED start
  blinking (~10sec.)
- upload original factory image via JBOOT http (IP: 192.168.123.254)

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
5 years agoramips: mt7620: add force use of mdio-mode
Pawel Dembicki [Sat, 17 Nov 2018 08:43:41 +0000 (08:43 +0000)]
ramips: mt7620: add force use of mdio-mode

Some boards have external switches different than mt7530.

This patch allow to use mdio-mode without 0x1f register.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
5 years agoar8216: add adjust_link checking
Pawel Dembicki [Sat, 17 Nov 2018 08:07:47 +0000 (08:07 +0000)]
ar8216: add adjust_link checking

Driver crash when 'phydev->adjust_link' isn't provided.

This patch check if 'phydev->adjust_link' exist before
call the method.

Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
5 years agoramips: fix some clocks in mt7621.dtsi
Weijie Gao [Sun, 18 Nov 2018 16:07:01 +0000 (00:07 +0800)]
ramips: fix some clocks in mt7621.dtsi

As the cpu clock calculation has been fixed, the clock for gic and spi
should be also fixed.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
5 years agoramips: fix cpu clock of mt7621 and add dt clk devices
Weijie Gao [Sun, 18 Nov 2018 17:14:53 +0000 (01:14 +0800)]
ramips: fix cpu clock of mt7621 and add dt clk devices

For a long time the mt7621 uses a fixed cpu clock which causes a problem
if the cpu frequency is not 880MHz.

This patch fixes the cpu clock calculation and adds the cpu/bus clkdev
which will be used in dts.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
5 years agoramips: fix register range of memc node in mt7621.dtsi
Weijie Gao [Sun, 18 Nov 2018 17:12:49 +0000 (01:12 +0800)]
ramips: fix register range of memc node in mt7621.dtsi

The memc node from mt7621.dtsi has incorrect register resource.
Fix it according to the programming guide.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
5 years agoramips: merge two patches 101-mt7621-timer and 998-mt7621-needs-jiffies
Weijie Gao [Sun, 18 Nov 2018 15:49:23 +0000 (23:49 +0800)]
ramips: merge two patches 101-mt7621-timer and 998-mt7621-needs-jiffies

These two patches both modified the mt7621.c, and the patch file
998-mt7621-needs-jiffies.patch adds only one line which is used by the
another patch file. So merge them into one file.

Signed-off-by: Weijie Gao <hackpascal@gmail.com>
5 years agoath79: specify "firmware" partition format for Buffalo devices
INAGAKI Hiroshi [Sun, 25 Nov 2018 13:25:27 +0000 (22:25 +0900)]
ath79: specify "firmware" partition format for Buffalo devices

Specify firmware partition format (denx,uimage) by compatible string
for Buffalo devices.

affected devices (&run tested):
- BHR-4GRV
- WHR-G301N
- WZR-HP-AG300H
- WZR-HP-G302H A1A0
- WZR-HP-G450H (WZR-450HP)

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
5 years agosdk: expose part of advanced configuration options
Tomasz Maciej Nowak [Thu, 25 Oct 2018 18:47:20 +0000 (20:47 +0200)]
sdk: expose part of advanced configuration options

These option can be useful in developement/packagig applications for
OpenWrt. Instead of searching them by hand in Config-build.in lets
expose them for easier access.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agokernel: nf-nathelper-extra depends on ipt-raw
Steven Honson [Fri, 7 Sep 2018 13:44:19 +0000 (13:44 +0000)]
kernel: nf-nathelper-extra depends on ipt-raw

The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
As automatic helper assignment is disabled in recent Linux kernels,
explicit rules must be added to the raw table for each helper.

While commit f50a524 in the firewall3 project added a set of default
rules and other additional related functionality, both this and the
alternative manual methods of defining these rules require kmod-ipt-raw.

Signed-off-by: Steven Honson <steven@honson.id.au>
5 years agoramips: add mt76x0 node to RT-AC51U device tree
Lorenzo Bianconi [Tue, 30 Oct 2018 22:28:03 +0000 (23:28 +0100)]
ramips: add mt76x0 node to RT-AC51U device tree

Introduce mt76x0e device tree node in RT-AC51U dts.
Define mt76x0e mtd partition and offset

Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
5 years agoapm821xx: wndr4700: restore sd-card media detection
Christian Lamparter [Sun, 14 Oct 2018 21:53:56 +0000 (23:53 +0200)]
apm821xx: wndr4700: restore sd-card media detection

This was not converted to the new, dt-based board name.

Fixes: e90dc8d2722 ("apm821xx: convert to device-tree board detection")
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoapm821xx: shuffle helper scripts to the front
Christian Lamparter [Wed, 17 Oct 2018 20:37:39 +0000 (22:37 +0200)]
apm821xx: shuffle helper scripts to the front

In a patch for the ath79, Mathias Kresin mentioned that
helper scripts should be in front of the device targets.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoapm821xx: add support for the Netgear WNDAP620 and WNDAP660
Christian Lamparter [Wed, 17 Oct 2018 20:37:38 +0000 (22:37 +0200)]
apm821xx: add support for the Netgear WNDAP620 and WNDAP660

This patch adds support for the Netgear WNDAP620 and WNDAP660,
they are similar devices, but due to the LAN LED configuration,
the switch setup and WIFI configuration each gets a different
device target.

Hardware Highlights WNDAP620:
CPU: AMCC PowerPC APM82181 at 1000 MHz
DRAM:  128 MB, 2 x 64 MiB DDR2 Hynix H5PS5162GF
CPU: AMCC PowerPC APM82181 at 1000 MHz
FLASH: 32 MiB, NAND SLC, Hynix HY27US08561A
Ethernet: RealTek RTL8363SB 2x2-Port Switch PHY - Only 1 GBit Port (POE)
Wifi: Atheros AR9380 minipcie - Dual-Band - 3x3:3
Serial: console port with RJ45 Interface (9600-N-8-1)
LEDS: Power, LAN-Activity, dual color LAN-Linkspeed, 2.4GHz, 5GHz LEDs
Button: Soft Reset Button
Antennae: 3 internal dual-band antennae + 3 x RSMA for external antennaes

Hardware Highlights WNDAP660:
CPU: AMCC PowerPC APM82181 at 1000 MHz + 2 Heatsinks
DRAM:  256 MB, 2 x 128 MiB DDR2
FLASH: 32 MiB, NAND SLC, Hynix HY27US08561A
Ethernet: RealTek RTL8363SB 2x2-Port Switch PHY (POE)
Wifi1: Atheros AR9380 minipcie - Dual-Band - 3x3:3
Wifi2: Atheros AR9380 minipcie - Dual-Band - 3x3:3
Serial: console port with RJ45 Interface (9600-N-8-1)
LEDS: Power, LAN-Activity, 2x dual color LAN-Linkspeed, 2.4GHz, 5GHz LEDs
Button: Soft Reset Button
Antennae: 6 internal dual-band antennae + 3 x RSMA for external antennaes

Flashing requirements:

 - needs a tftp server at 192.168.1.10/serverip.
 - special 8P8C(aka RJ45)<->D-SUB9 Console Cable
   ("Cisco Console Cable"). Note: Both WNDAP6x0 have
   a MAX3232 transceivers, hence no need for any separate
   CMOS/TTL level shifters.

External Antenna:
The antennae mux is controlled by GPIO 11 and GPIO14. Valid Configurations:
 = Config# = | = GPIO 11 = | = GPIO 14 = |  ===== Description =====
      1.     |   1 / High  |  0 / Low    | Use the internal antennae (default)
      2.     |   0 / Low   |  1 / High   | Use the external antennae

The external antennaes are only meant for the 2.4 GHz band.

One-way Flashing instructions via u-boot:

 0. connect the serial cable to the RJ45 Console Port
    Note: This requires a poper RS232 and not a TTL/USB adaptor.

 1. power up the AP and interrupt the u-boot process at

    'Hit any key to stop autoboot'

 2. setup serverip and ipaddr env settings
    Enter the following commands into the u-boot shell
    # setenv ipaddr 192.168.1.1
    # setenv serverip 192.168.1.10

 3. download the factory.img image to the AP
    Enter the following commands into the u-boot shell

    # tftp ${kernel_addr_r} openwrt-apm821xx-nand-netgear_wndap660-squashfs-factory.img

 4. verfiy image integrity
    Enter the following commands into the u-boot shell

    # crc32 $fileaddr $filesize

    If the calculated crc32 checksum does not match, go back to step 3.

 5. flash the image
    Enter the following commands into the u-boot shell

    # nand erase 0x110000 0x1bd0000
    # nand write ${kernel_addr_r} 0x110000 ${filesize}

 6. setup uboot environment
    Enter the following commands into the u-boot shell

    # setenv bootargs
    # setenv fileaddr
    # setenv filesize
    # setenv addroot 'setenv bootargs ${bootargs} root=/dev/ubiblock0_0'
    # setenv owrt_boot 'nboot ${kernel_addr_r} nand0 0x110000; run addroot; run addtty; bootm ${kernel_addr_r}'
    # setenv bootcmd 'run owrt_boot'
    # saveenv

 7. boot
    # run bootcmd

Booting initramfs instructions via u-boot:

 Follow steps 0 - 2 from above.

 3. boot initramfs
    Enter the following commands into the u-boot shell

    # tftp ${kernel_addr_r} openwrt-apm821xx-nand-netgear_wndap660-initramfs-kernel.bin
    # run addtty
    # bootm ${kernel_addr_r}

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agogeneric: rtl8367b: make it possible to specify cpu_port via DT
Christian Lamparter [Wed, 17 Oct 2018 20:37:37 +0000 (22:37 +0200)]
generic: rtl8367b: make it possible to specify cpu_port via DT

This patch adds the feature to parse the existing cpu_port DT
property, which is used to specify which port is the cpu port
of the switch.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agogeneric: rtl836x: support defered probe on mdio-bus
Christian Lamparter [Wed, 17 Oct 2018 20:37:36 +0000 (22:37 +0200)]
generic: rtl836x: support defered probe on mdio-bus

On the WNDAP620, the mdio and mdc lines are controlled by
the EMAC ethernet device. This results in a hen-vs-egg problem.
The rtl8367b driver is probed before the ethernet driver and
the mdio-bus is not available yet, which caused the rtl8367b
driver to fail.

This patch changes the rtl8366_smi_probe_of() function to
return -EPROBE_DEFER if the mdio-bus lookup failed and changes
rtl8366_smi_probe()'s signature to return the error code back to
the callee, so it can propagate back to the kernel. Which, will
retry the switch probe at a later time.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoapm821xx: import gpio-export DT code from lantiq
Christian Lamparter [Wed, 17 Oct 2018 20:37:35 +0000 (22:37 +0200)]
apm821xx: import gpio-export DT code from lantiq

This will come in handy for the Netgear WNDAP620's antennae mux.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoapm821xx: MX60(W): enable u-boot environment
Christian Lamparter [Wed, 17 Oct 2018 20:37:34 +0000 (22:37 +0200)]
apm821xx: MX60(W): enable u-boot environment

This patch adds u-boot environment access to the MX60(W) target.
"The environment size is one NAND block (128KiB on Buckminster).
We allocate four NAND blocks to deal with bad blocks which may
exist in the saved  environment"

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoapm821xx: MR24: add to uboot-envtools
Christian Lamparter [Wed, 17 Oct 2018 20:37:33 +0000 (22:37 +0200)]
apm821xx: MR24: add to uboot-envtools

This patch adds the complicated u-boot
environment access settings for to the
MR24 target.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoapm821xx: add uboot-envtools support
Christian Lamparter [Wed, 17 Oct 2018 20:37:32 +0000 (22:37 +0200)]
apm821xx: add uboot-envtools support

All apm821xx devices use u-boot and most of them have
an accessible u-boot environment. This patch adds the
necessary template file, but does not add the
uboot-envtools package to any of the targets.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
5 years agoipq806x: Add support for IPQ8064 AP161 board
Ram Chandra Jangir [Fri, 19 Oct 2018 11:17:42 +0000 (16:47 +0530)]
ipq806x: Add support for IPQ8064 AP161 board

Specification:
   - SoC: Qualcomm Atheros IPQ8064 ARM-v7 Dual Core SMP CPU
   - RAM: 512MB DDR3 System Memory
   - NOR Flash: 32MB SPI NOR
   - NAND Flash: 256MB NAND
   - Ethernet: 5 x 1G via QCA8337N
   - USB: 2 x USB 3.0 SuperSpeed
   - PCIe: 3x Mini PCIe 2.0 Slots
   Three PCIE2.0 connectors can connect two or three radio cards
           such as the CUS260 for 2.4 GHz WLAN and the CUS239 for 802.11ac WLAN

 How to flash via u-boot console:
   tftpboot 0x44000000 openwrt-ipq806x-qcom_ipq8064-ap161-squashfs-nand-factory.bin
   nand erase  0x1340000 0x4000000
   nand write  0x44000000 0x1340000 $filesize
   setenv bootargs ‘console=ttyMSM0,115200 ubi.mtd=ubi root=/dev/ubiblock0_1’
   saveenv
   bootm

 Further upgrades via sysupgrade.

 Tested on IPQ8064 AP161 Board:
   1) NAND boot
   2) Tested USB and PCIe interfaces
   3) WDOG test
   4) cpu frequency scaling
   5) ethernet, 2G and 5G WiFi
   6) ubi sysupgrade

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
5 years agoipq8064: pinctrl: Fixed missing RGMII pincontrol definitions
Ram Chandra Jangir [Fri, 19 Oct 2018 11:17:41 +0000 (16:47 +0530)]
ipq8064: pinctrl: Fixed missing RGMII pincontrol definitions

Signed-off-by: Ram Chandra Jangir <rjangir@codeaurora.org>
5 years agoar71xx: fix RouterBOARD Power LED default state
Sergey Ryazanov [Thu, 25 Oct 2018 22:22:37 +0000 (01:22 +0300)]
ar71xx: fix RouterBOARD Power LED default state

RouterBOARD(s) bootloader actully turns Power LED off just before
it starts the kernel. So we need to set the LED default status to On
instead of Keep in order to keep LED on during kernel boot.

This change fixes Power LED off during the kernel boot on the RB91x and
SXT Lite boards.

Fixes: 6cad8ee0bd ("ar71xx: keep the RouterBOARD Power LED in On state")
CC: Mathias Kresin <dev@kresin.me>
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
5 years agohotplug: Allow configuring radio name.
Ben Greear [Fri, 26 Oct 2018 17:05:39 +0000 (10:05 -0700)]
hotplug: Allow configuring radio name.

This way the radio (phy) name can be the same through module reloads.

To set the desired name:

uci set wireless.@wifi-device[0].phyname=wiphy0

I guess this only works on ipq6086 boards as I could not find a more
generic place to put this.  Maybe someone can improve it.

Signed-off-by: Ben Greear <greearb@candelatech.com>
5 years agobase-files: fwtool: Fix wrong checksum on combined-image with metadata
Petr Štetiar [Fri, 9 Nov 2018 11:27:12 +0000 (12:27 +0100)]
base-files: fwtool: Fix wrong checksum on combined-image with metadata

If I create following image:

define Device/engenius-m36
  IMAGE/sysupgrade.bin := combined-image | append-metadata
endef

Sysupgrade then errors out:

  Invalid image. Contents do not match checksum (image:cd285595eaf297370404ae0e2815ec1a calculated:2cf9a2286fb6b01af3ea189128017d44)
  Image check 'platform_check_image' failed.

By removing the metadata from the image I get combined-image checksum
working again and sysupgrade works.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
5 years agoamd64-microcode: create early load microcode image
Tomasz Maciej Nowak [Wed, 31 Oct 2018 17:48:38 +0000 (18:48 +0100)]
amd64-microcode: create early load microcode image

Create initrd image with packed microcode. This'll allow to load it at
early boot stage.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
5 years agox86: add amd microcode entries to grub config
Tomasz Maciej Nowak [Wed, 31 Oct 2018 17:48:37 +0000 (18:48 +0100)]
x86: add amd microcode entries to grub config

Create initrd enries for x86 images, that'll load amd microcode as early
as possible. Also remove the preinit script responsible for late load of
microcode.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>