Commit Graph

20568 Commits

Author SHA1 Message Date
Adrian Schmutzler
a5885ea407 ath79: Fix GPIO reset button on TP-Link Archer C7v5
The GPIO for the reset button for the Archer C7v5 changed from
ar71xx to ath79. An investigation based on tests revealed
that the A7v5 responds on "11", while the C7v5 responds on
"5" as set for ar71xx.

Thus, we just define this in the DTS files instead of in the
common DTSI.

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-04-08 18:37:04 +02:00
Adrian Schmutzler
6f354c4d32 ath79: Utilize new LED modes from diag.sh for Archer A7/C7 v5
Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-04-08 18:37:04 +02:00
Adrian Schmutzler
9888f1b96c ath79: Consolidate LEDs in Archer A7/C7 v5 DTSI
Definition is split here without obvious reason. Just merge it
(and align order to that from C7 v4).

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-04-08 18:37:04 +02:00
Christian Mauderer
8a4dc6f48c ath79: add support for Ubiquiti airCube ISP
The Ubiquiti Network airCube ISP is a cube shaped 2.4 GHz with internal
2x2 MIMO antennas. It can be supplied via a USB connector or via PoE.
There are for 10/100 Mbps ports (1 * WAN + 3 * LAN). There is an
optional PoE passthrough from the first LAN port to the WAN port.

SoC:       Qualcomm / Atheros QCA9533-BL3A
RAM:       64 MB DDR2
Flash:     16 MB SPI NOR
Ethernet:  4x 10/100 Mbps (1 WAN + 3 LAN)
LEDS:      1x via a SPI controller (not yet supported)
Buttons:   1x Reset
Serial:    1x (only RX and TX); 115200 baud, 8N1

Missing points:
- LED not yet supported
- Factory upgrade via web IF or TFTP recovery not yet supported
  (Needs RSA signed images, for details see PR#1958)

The serial port is on a four pin connextor labeled J1 and located
between Ethernet and USB connector. The pinout is:
1. 3V3 (out)
2. Rx (in)
3. Tx (out)
4. GND

Upgrading via serial port / U-Boot:
- Connect the serial port via a level converter
- Power the system and stop U-Boot with pressing any key when `Hit any
  key to stop autoboot` is displayed. Note: Pressing space multiple
  times untill U-Boot reaches that location works well.
- Connect a PC with the IP 192.168.1.100 (or some other in that net)
  running a TFTP-Server to one of the LAN ports. Copy the sysupgrade
  image to the server.
- Set the U-Boot server IP with
    setenv serverip 192.168.1.100
- Load the flash image to RAM with
    tftpboot 0x81000000 sysupgrade.bin
- Erase the flash with
    erase 0x9f050000 0x9ffaffff
- Write the new flash content with
    cp 0x81000000 0x9f050000 ${filesize}
- Reset the device with
    reset

Signed-off-by: Christian Mauderer <oss@c-mauderer.de>
[removed full stop in subject and added lockdown note to commit message]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-08 18:37:04 +02:00
Markus Scheck
de2f888024 ath79: add support for OCEDO Ursus
SOC:   Qualcomm Atheros QCA9558
RAM:   128MB
FLASH: 16MB (Macronix MX25L12845EMI-10G)
WLAN1: QCA9558 2.4GHz 802.11bgn 3SS
WLAN2: QCA9880 5GHz 802.11ac 3SS
LED:   Power, LAN1, LAN2, 2.4GHz, 5GHz
Serial:Next to SPI Flash,
       Pinout is 3V3 - GND - TX - RX (Square Pin is 3V3)
       The Serial setting is 115200-8-N-1

INSTALLATION:

1. Serve an OpenWrt ramdisk image named "ursus.bin".
   Set your IP-address to 192.168.100.8/24.
2. Connect to the serial. Power up the device and interrupt
   the boot process.
3. Set the correct bootcmd with
   > setenv bootcmd run bootcmd_1
   > saveenv
4. Run
   > tftpboot 0x81000000 ursus.bin
   > bootm 0x81000000
5. Wait for OpenWrt to boot up.
6. Transfer OpenWrt sysupdate image and flash via sysupgrade.

Signed-off-by: Markus Scheck <markus.scheck1@gmail.com>
Tested-by: David Bauer <mail@david-bauer.net>
[whitespace fix, renamed LED labels and SoC type fix]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-08 18:37:04 +02:00
Petr Štetiar
189aa1748b ath79: ag71xx: Enable tx hang workaround for the rest of ar724x SoCs
In ar71xx we check for stuck DMA on devices which fall in the is_ar724x
SoC group (ar724x, ar933x, ar934x, qca9533, tp9343, qca955x, qca956x).

In ath79 we're currently performing this check only for devices with
ar7240 SoC, so this patch tries to sync the dma stuck checking behavior
with what is being done in ar71xx.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-08 18:37:04 +02:00
Petr Štetiar
31ea08a64b ar71xx: ag71xx: Fix broken networking on some devices (FS#2177)
It was reported, that latest ar71xx builds have broken networking on
TP-Link TL-WPA8630 and Nanostation M5 XW devices and that by reverting
the offending commit, everything is back to normal.

Fixes: d3506d1 ("ar71xx: ag71xx: fix compile error when enabling debug")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-08 18:37:04 +02:00
Petr Štetiar
0f8cdc28af ar71xx: Add support for Ubiquity Bullet M (XW)
CPU: AR9342 SoC
RAM:     64 MB DDR2
Flash:    8 MB NOR SPI
Ports:  100 MBit (24V PoE in)
WLAN: 2.4/5 GHz
UART:     1 UART on PCB marked as J1 with 115200 8N1 config
LEDs:       Power, Ethernet, 4x RSSI LEDs (orange, red, 2x green)
Buttons:    Reset

UART connection details

  .---------------------------------.
  |                                 |
[ETH]          J1                 [ANT]
  |    o VCC o RX o TX o GND        |
  `---------------------------------'

Flashing instructions using recovery method over TFTP

 1. Unplug the ethernet cable from the router.
 2. Using paper clip press and hold the router's reset button. Make sure
    you can feel it depressed by the paper clip. Do not release the button
    until step 4.
 3. While keeping the reset button pressed in, plug the ethernet cable
    back into the AP. Keep the reset button depressed until you see the
    device's LEDs flashing in upgrade mode (alternating LED1/LED3 and
    LED2/LED4), this may take up to 25 seconds.
 4. You may release the reset button, now the device should be in TFTP
    transfer mode.
 5. Set a static IP on your Computer's NIC. A static IP of 192.168.1.25/24
    should work.
 6. Plug the PoE injector's LAN cable directly to your computer.
 7. Start tftp client and issue following commands:
     tftp> binary
     tftp> connect 192.168.1.20
     tftp> put openwrt-ar71xx-generic-ubnt-bullet-m-xw-squashfs-factory.bin

Tested only on Bullet M2HP.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-08 18:37:04 +02:00
Petr Štetiar
6009b3fd58 ar71xx: ubnt-m-xw: Fix factory image flashing using TFTP recovery
This is backport of the same functionality in ath79, from commit
 d42a7c469 ("ath79: ubnt-m-xw: Fix factory image flashing using TFTP
             recovery method")

Ubiquity allows flashing of unsigned factory images via TFTP recovery
method[1]. They claim in airOS v6.0.7 release changelog[2] following:

 All future airOS versions will be signed in this way and not allow
 unsigned firmware to be loaded except via TFTP.

U-boot bootloader on M-XW devices expects factory image revision
version in specific format. On airOS v6.1.7 with `U-Boot 1.1.4-s1039
(May 24 2017 - 15:58:18)` bootloader checks if the revision major(?)
number is actually a number, but in currently generated images there's
OpenWrt text and so the check fails:

 Hit any key to stop autoboot:  0
 Setting default IP 192.168.1.20
 Starting TFTP server...
 Receiving file from 192.168.1.25:38438
 Received 4981148 bytes
 Firmware check failed! (1)

By placing arbitrary correct number first in major version, we make the
bootloader happy and we can flash factory images over TFTP again:

 Received 3801500 bytes
 Firmware Version: XW.ar934x.v6.0.4-42.OpenWrt-r9766+2-be42e44
 Setting U-Boot environment variables
 Un-Protected 1 sectors
 Erasing Flash.... done

Patch provided by AREDN[3] project, tested on Bullet M2 XW.

1. https://help.ubnt.com/hc/en-us/articles/204910124-UniFi-TFTP-Recovery-for-Bricked-Access-Points
2. https://dl.ubnt.com/firmwares/XW-fw/v6.0.7/changelog.txt
3. https://github.com/aredn

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-08 18:37:04 +02:00
Petr Štetiar
d23222a96c imx6: Add support for Toradex Apalis family of CoMs
This patch adds support for the following computer on modules (CoM) from
Toradex[A]:

 Apalis iMX6 Quad 2GB IT - i.MX 6Quad 800MHz, 2GB DDR3, 4GB eMMC
                                             -40° to +85° C Temp
 Apalis iMX6 Quad 1GB    - i.MX 6Quad 1GHz,   1GB DDR3, 4GB eMMC
                                               0° to +70° C Temp
 Apalis iMX6 Dual 1GB IT - i.MX 6Dual 800MHz, 1GB DDR3, 4GB eMMC
                                             -40° to +85° C Temp
 Apalis iMX6 Dual 512MB  - i.MX 6Dual 1GHz, 512MB DDR3, 4GB eMMC
                                               0° to +70° C Temp

I've developed and tested it on Quad 2GB IT v1.1A and Dual 512MB v1.1A
CoMs, using Ixora[B] carrier board v1.0A, but it should hopefuly work on
Eval[C] board as well.

A. https://www.toradex.com/computer-on-modules/apalis-arm-family/nxp-freescale-imx-6
B. https://www.toradex.com/products/carrier-board/ixora-carrier-board
C. https://www.toradex.com/products/carrier-board/apalis-evaluation-board

Flashing/recovery instructions:

 1. Download and compile imx_loader for OpenWrt from
    https://github.com/ynezz/imx_loader

 2. Enter recovery mode as desribed in
    https://developer.toradex.com/knowledge-base/imx-recovery-mode

 3. Connect board via USB to the host computer, check that it's connected
    by lsusb:

    15a2:0054 Freescale Semiconductor, Inc. i.MX 6Dual/6Quad SystemOnChip
              in RecoveryMode

 4. Copy following OpenWrt images to imx_loader directory:
         SPL
         u-boot.img
         u-boot-with-spl.imx
         openwrt-imx6-apalis-recovery.scr
         openwrt-imx6-apalis-squashfs.combined.bin

 5. Run imx_usb in imx_loader directory

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-08 18:37:04 +02:00
Petr Štetiar
dc1a73984e imx6: image: Split imx6-sdcard image for reusability
I'm going to reuse the imx6-sdcard image commands for building of Apalis
eMMC images.

Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-08 18:37:03 +02:00
Koen Vandeputte
8df12d76c6 kernel: bump 4.19 to 4.19.34
Refreshed all patches.

Removed:
- 030-PCI-dwc-skip-MSI-init-if-MSIs-have-been-explicitly-d.patch

Altered:
- 366-netfilter-nf_flow_table-clean-up-and-fix-dst-handlin.patch
- 650-netfilter-add-xt_OFFLOAD-target.patch
- 662-remove_pfifo_fast.patch
- 332-arc-add-OWRTDTB-section.patch
- 100-clocksource-drivers-arch_timer-Workaround-for-Allwin.patch
- 702-phy_add_aneg_done_function.patch

New symbols:
- ARC_IRQ_NO_AUTOSAVE
- SUN50I_ERRATUM_UNKNOWN1

Compile-tested: cns3xxx, imx6, sunxi
Runtime-tested: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-08 14:53:39 +02:00
Koen Vandeputte
5387bc9cbb kernel: bump 4.14 to 4.14.111
Refreshed all patches.

Compile-tested on: ar71xx, cns3xxx, imx6, x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-08 14:53:39 +02:00
Koen Vandeputte
1138e0f887 kernel: bump 4.9 to 4.9.168
Refreshed all patches.

Compile-tested on: ar7
Runtime-tested on: none

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-08 14:53:39 +02:00
Koen Vandeputte
5eac37624f kernel: bump 4.14 to 4.14.110
Refreshed all patches.

Compile-tested on: ar71xx, cns3xxx, imx6, x86_64
Runtime-tested on: ar71xx, cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2019-04-08 12:07:28 +02:00
Kip Porterfield
b812a7fa68 ramips: correct DTS for Belkin F9K1109v1 to include switch definition
Add switch definition for the rtl8367b switch to the DTS/DTSi for
the Belkin F9K1109v1 that was mistakenly omitted from the initial
commit.

Fixes: 017ec068e3 (ramips: add support for Belkin F9K1109v1)
Signed-off-by: Kip Porterfield <kip.porterfield@gmail.com>
2019-04-06 19:14:06 +02:00
INAGAKI Hiroshi
643fcfc8d6 ath79: add support for NEC Aterm WG1200CR
NEC Aterm WG1200CR is a 2.4/5 GHz band 11ac router,
based on Qualcomm Atheros QCA9563.

Specification:

- SoC		: Qualcomm Atheros QCA9563
- RAM		: DDR2 128 MiB
- Flash		: SPI-NOR 8 MiB
- WLAN		: 2.4/5 GHz 2T2R
  - 2.4 GHz	: QCA9563 (SoC)
  - 5 GHz	: QCA9888
- Ethernet	: 2x 10/100/1000 Mbps
  - Switch	: QCA8334
- LEDs/Input	: 12x/4x (2x buttons, 1x slide-switch)
- UART		: through-hole on PCB
  - JP1: Vcc, GND, NC, TX, RX from power connector side
  - 115200 bps

Flash instruction using factory image:

1. Boot WG1200CR normaly
2. Access to "http://192.168.10.1/" and open firmware update page
("ファームウェア更新")
3. Select the OpenWrt factory image and click update ("更新") button
to perform firmware update
4. Wait ~150 seconds to complete flashing

Known issues:

- cannot be controlled LEDs other than Power (Green/Red)
  - only Power LEDs are connected to SoC GPIO; other LEDs
    connected to the gpiochip on ath10k chip (QCA9888)

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [commit
message formatting]
2019-04-06 19:14:06 +02:00
Chuanhong Guo
d80a1c6e2c ramips: backport mt7621-spi from linux-next-20190329
Upstream driver has gone through a series of cleanup and was moved
from drivers/staging into drivers/spi. Backport it to replace our
messy driver.

Tested-by: Jörg Schüler-Maroldt <joerg-linux@arcor.de>
[LinkIt Smart 7688, AcSIP AI7688H Wi-Fi module]
Tested-by: Rosen Penev <rosenp@gmail.com>
Tested-by: Tian Xiao bo <peterwillcn@gmail.com>
[Newifi-D2 MediaTek MT7621 ver:1 eco:3]
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
2019-04-06 19:14:06 +02:00
Adrian Schmutzler
0eef05fb36 ath79: Utilize tplink-safeloader definition
Currently, tplink-safeloader definition is only used a base for
another common definition.

This patch adjusts tplink-safeloader so it can be actually used
for some targets in generic-tp-link.mk.

This patch is cosmetic except for the order of
"check-size $$$$(IMAGE_SIZE)" and "append-metadata" exchanged
for the tplink_re350k-v1 .

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [dealed with
tplink_cpe210-v2 and tplink_cpe210-v3, removed tplink-safeloader-uimage's
extra IMAGE/sysupgrade.bin rule]
2019-04-06 19:14:06 +02:00
David Bauer
b19c48dc34 ramips: enable R6120 USB power
Enable the USB power for the Netgear R6120. Otherwise, no power is
supplied to an attached USB device.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-04-06 19:14:06 +02:00
Tomasz Maciej Nowak
bac2c4d2fb ath79: engenius epg5000: add leds migration script
With transition from ar71xx to ath79 some of devices change their naming
of LEDs. When upgrading from ar71xx target images this will require the
user to adjust previously working configuration. This commit adds
migration script which can be used to rename old names to new ones.
With this previously working configuration will be automatically
adjusted, wihtout user intervention.

This commit adds migration case for EnGenius EPG5000, the wireless LEDs
names have changed from epg5000:blue:wlan2-g and epg5000:blue:wlan-5g to
epg5000:blue:wlan2g and epg5000:blue:wlan5g.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 19:14:05 +02:00
Zhao Yu
32689e93c4 ramips: add support for Youku YK-L2
Hardware spec:

CPU: MTK MT7621A
RAM: 256MB
ROM: 16MB SPI Flash
WiFi: MT7603EN + MT7612EN
Button: 2 buttons (reset, wps)
LED: 8 LEDs (Power 2G 5G WPS Internet LAN1 LAN2 USB)
Ethernet: 3 ports, 2 LAN + 1 WAN
Other: USB3.0

Flashing instructions:

Visit the openwrt forum topic for this router:
https://forum.openwrt.org/t/add-openwrt-support-for-youku-yk-l2/34692

to get the bootloader and unlock firmware.

0. upgrade your router with the telnet firmware via the
   firmware upgrade page on the webui.

1. telnet 192.168.11.1 from your PC

2. Download the pb-boot-youku_l2-20190317-61b6d33.bin and transfer
   it to the /tmp directory of the router.

3. mtd write /tmp/pb-boot-youku_l2-20190317-61b6d33.bin Bootloader

4. turn off the power

5. Push the reset button while turning on the router and
   wait until LED start blinking (~10sec.)

6. Connect Ethernet port and goto http://192.168.1.1.

7. Upload the firmware to firmware restore page in webui.

Signed-off-by: Zhao Yu <574249312@qq.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [rewrote the
flashing instructions, fixed author]
2019-04-06 19:13:49 +02:00
Daniel Engberg
6c22545225 target/octeon: Add Linux 4.19 support
This commit adds support for Linux 4.19 kernel, various cleanups
listed below.

Drop 170-cisco-hack.patch as these devices never seems to have been
supported.

Unset kernel symbols:

* CONFIG_CAVIUM_CN63XXP1=y
  No supported hardware uses CN63XXP1 and it causes "slight decrease in
  performance"
  Source: https://cateee.net/lkddb/web-lkddb/CAVIUM_CN63XXP1.html

* CONFIG_USB_OCTEON_EHCI=y
  CONFIG_USB_OCTEON_OHCI=y
  Deprecated
  Source: https://cateee.net/lkddb/web-lkddb/USB_OCTEON_EHCI.html
  https://cateee.net/lkddb/web-lkddb/USB_OCTEON_OHCI.html

Removed kernel symbols:

* # CONFIG_ARCH_HIBERNATION_POSSIBLE=y
* CONFIG_ARCH_SUSPEND_POSSIBLE=y
  These are not in if you do a vanilla config of a MIPS Octeon kernel
  and I can't find any references about support on this platform.

* # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
* CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
  No need to have this in by default, not defined in most other targets

* CONFIG_CRASH_CORE=y
  Can't find any documentation why this should be enabled by default

* CONFIG_DEBUG_INFO=y
  Set by https://github.com/openwrt/openwrt/blob/master/config/Config-kernel.in#L134

* CONFIG_DEBUG_SPINLOCK=y
  No need to have this in by default

* CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
  Already set by default
  Source: https://cateee.net/lkddb/web-lkddb/DEFAULT_HUNG_TASK_TIMEOUT.html

* CONFIG_DETECT_HUNG_TASK=y
  No need to have this in by default, not defined in most other targets

* CONFIG_HAVE_DEBUG_KMEMLEAK=y
  No need to have this in by default, not defined in most other targets

* CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
  No need to have this in by default

* CONFIG_HAVE_IDE=y
  None of the supported devices have IDE

* CONFIG_HZ=250
* # CONFIG_HZ_100 is not set
* CONFIG_HZ_250=y
  This is broken with generic config

* CONFIG_KALLSYMS=y
  No need to have this in by default, not defined in most other targets

* CONFIG_KEXEC=y
* CONFIG_KEXEC_CORE=y
  No need to have this in by default, not defined in most other targets

* CONFIG_HAVE_KVM=y
  No need to have this in by default

* CONFIG_SCHED_DEBUG=y
  No need to have this in by default, not defined in most other targets

* CONFIG_SYSFS_DEPRECATED=y
  Deprecated symbol
  Source: https://cateee.net/lkddb/web-lkddb/SYSFS_DEPRECATED.html

* CONFIG_SYSFS_DEPRECATED_V2=y
  Discouraged usage in general
  Source: https://cateee.net/lkddb/web-lkddb/SYSFS_DEPRECATED_V2.html

* CONFIG_UNINLINE_SPIN_UNLOCK=y
  No need to have this in by default, not defined in most other targets
  Source: https://github.com/openSUSE/kernel/blob/master/lib/Kconfig.debug#L1137

* CONFIG_ZLIB_INFLATE=y
  No need to have this in by default, not defined in most other targets

Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
2e5a0b81ec mvebu: sysupgrade: sdcard: keep user added partitons
Currently sysupgrade overwrites whole disk and destroys partitions added
by user. Sync the sysupgrade code with the one present in x86 target to
remedy this behaviour.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
4e8345ff68 mvebu: base-files: autodetect upgrade device
Since some boards could be also booted from other mediums than SD card,
lets make the upgrade block device autodetected.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
727c3df5bb mvebu: shrink amount of packages and reorganize them
Since most of devices using SD card image to boot, use ext4 as boot
files system we can drop fat fs related packages. Also move packages
which are added repeatedly across subtargets to their default packages,
with droping the ones that are enabled in target kernel configugation.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
55b4ff7f73 mvebu: use ext4 for clearfog image bootfs
This will allow to drop additional packages and shrink image size.

Cc: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
910eb994eb mvebu: make bootfs size for sdcard image configurable
Let's take this oportunity to implement boot-part and rootfs-part feature
flags.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 16:31:10 +02:00
Luis Araneda
78a3c51985 zynq: replace storage related configs by packages
Select build-in packages by default and remove the
associated kernel configs

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2019-04-06 16:31:10 +02:00
Luis Araneda
3db12da7cd zynq: replace CAN kconfig options by device packages
The options are managed on a generic way by the can
kmod packages

Additionally, select can packages only for devices that
currently has CAN enabled, which is only the ZC702

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2019-04-06 16:31:10 +02:00
Luis Araneda
6e303b4532 zynq: kernel: remove video/camera kconfig options
The options are managed on a generic way by video packages

Additionally, only one of the currently supported boards
has a camera interface, but it requires programming
the FPGA fabric first

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2019-04-06 16:31:10 +02:00
Luis Araneda
95c531dc07 zynq: kernel: remove sound kconfig options
The options are managed on a generic way by the sound
kmod packages

Additionally, none of the currently supported boards have
sound support out of the box, as they require programming
the FPGA fabric first

Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2019-04-06 16:31:10 +02:00
Luis Araneda
5a739bd43e zynq: kernel: refresh config
Signed-off-by: Luis Araneda <luaraneda@gmail.com>
2019-04-06 16:31:10 +02:00
Tomasz Maciej Nowak
09fe18f042 tegra: add kernel 4.19 support
Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
bba0c012b8 tegra: add support for CompuLab TrimSlice
It is a small form factor computer with rich amount of expansion ports.
Some hardware specs and supported features in this commit:

CPU: NVIDIA Tegra 2 @ 1GHz
RAM: 1GB DDR2-667
Storage: SDHC card slot
         µSDHC card slot
         USB to SATA bridge (depends on model)
         1MB SPI NOR flash for bootloader (single partition)
LAN: RTL8111DL GbE
WIFI: RT3070 b/g/n with external antenna (depends on model)
RTC: EM3027 (mapped as rtc0; with battery backup)
     Tegra 2 built-in (mapped as rtc1)
Sound: Analog/Digital (TLV320AIC23b; S/PDIF not tested)
Connectors: 4x USB 2.0
            RS232 (mini serial)
            HDMI
            DVI-D (depends on model, not supported atm)
            Extension connector (24 pin ZIF, 0.5mm pitch):
            2X UART
            SPI
            JTAG (1.8V)
Other: power button with green led (not functional for early revisions
       without programmed PMIC)
       2x GPIO configurable green led

TrimSlice uses U-Boot placed in NOR flash. Boots Linux from any media
connected to USB, SATA or SD card inserted in slot. Can also boot from
TFTP. To run OpenWrt one needs to update U-Boot to fairly recent version
(the versions, pre-dts/dts provided by CompuLab won't suffice):

 1. Boot TrimSlice into Your current linux distro,
 2. Download trimslice-spi.img from u-boot-trimslice subdir,
 3. Install mtd-utils,
 4. Run following commands:
     flash_erase /dev/mtd0 0 256
     nandwrite /dev/mtd0 trimslice-spi.img
 5. Poweroff, insert SD card with OpenWrt, boot and enjoy.

If by some obstacle You can't follow those instructions, it is possible
to flash U-Boot using serial console.

 1. Insert FAT or EXT2/EXT3 formatted SD card with trimslice-spi.img,
 2. Interrupt boot process to enter U-Boot command line,
 3. Run following commands:
     ${fs}load mmc 0 0x04080000 trimslice-spi.img
     sf probe 0
     sf erase 0 0x100000
     sf write 0x04080000 0x0 ${filesize}
     reset
 4. Poweroff, insert SD card with OpenWrt, boot and enjoy.

If something went wrong with one of above steps, there is simple
recovery option:

 1. Open the µSD slot security door to access the recovery-boot button,
 2. Insert SD card with OpenWrt to the front slot while unpowered,
 3. Power on the TrimSlice while pressing the recovery-boot button,
 4. With this it should boot straigth to OpenWrt, from there download
    trimslice-spi.img and execute following commands:
     mtd erase /dev/mtd0
     mtd write trimslice-spi.img /dev/mtd0
 5. Reboot, now it should boot straigth to OpenWrt, without pressing the
    recovery-boot button, with proper U-Boot flashed.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
1b3dda179a uboot-tegra: add U-Boot for tegra boards
Add U-Boot for NVIDIA Tegra based boards, with the first being CompuLab
TrimSlice. This is part of initial support for this board.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 14:48:46 +02:00
Tomasz Maciej Nowak
42f96ed941 tegra: add new target
New target introduces initial support for NVIDIA Tegra SoC based devices.
It focuses on Tegra 2 CPUs, for successors supporting NEON instruction
set the target should be split in two subtargets.
This initial commit doesn't create any device image, it's groundwork
for further additions.

Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
2019-04-06 14:48:46 +02:00
Rafał Miłecki
8dacd75ea8 kernel: b53: add support for kernels 5.0+
It adjusts b53 code to upstream changes from the commit 3c1bcc8614db
("net: ethernet: Convert phydev advertize and supported from u32 to link
mode").

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-04-04 11:35:53 +02:00
Rafał Miłecki
ebed4b6dd0 kernel: backport upstream ubifs default compression selection fix
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-04-04 11:19:33 +02:00
Rafał Miłecki
9a92af4624 kernel: fix rtcache compilation with 4.18+ with IPv6 support
Please note that modified code isn't currently being compiled with
kernels 4.19+ due to the dropped CONFIG_NF_CONNTRACK_IPV6 in upstream
Linux. That requires a separated fix.

This fixes:
net/netfilter/nf_conntrack_rtcache.c: In function 'nf_rtcache_get_cookie':
net/netfilter/nf_conntrack_rtcache.c:82:11: error: 'const struct rt6_info' has no member named 'rt6i_node'; did you mean 'rt6i_idev'?
   if (rt->rt6i_node)
           ^~~~~~~~~
           rt6i_idev

IPv6 structs were reworked in upstream kernel by:
commit a64efe142f5e ("net/ipv6: introduce fib6_info struct and helpers")
commit 77634cc67dc1 ("net/ipv6: Remove unused code and variables for rt6_info")
commit 93c2fb253d17 ("net/ipv6: Rename fib6_info struct elements")

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2019-04-04 10:59:11 +02:00
Felix Fietkau
c9262a96d1 ramips: implement vlan rx offload on MT7621
Avoids the overhead of software VLAN untagging in the network stack

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2019-04-03 10:40:09 +02:00
Adrian Schmutzler
141698ce8f ath79: Add support for TP-Link CPE210 v2
This PR adds support for a popular low-cost 2.4GHz N based AP

Specifications:
 - SoC: Qualcomm Atheros QCA9533 (650MHz)
 - RAM: 64MB
 - Storage: 8 MB SPI NOR
 - Wireless: 2.4GHz N based built into SoC 2x2
 - Ethernet: 1x 100/10 Mbps, integrated into SoC, 24V POE IN

Installation:
Flash factory image through stock firmware WEB UI
or through TFTP
To get to TFTP recovery just hold reset button while powering on
for around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP adress:192.168.0.254

This is based on the support patch for the identical CPE210 v3
by Mario Schroen <m.schroen@web.de>.

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[renamed dtsi filename]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-02 02:10:59 +02:00
Mario Schroen
5ec205d7ac ath79: Add support for TP-Link CPE210 v3
Specifications:

    * SoC: Qualcomm Atheros QCA9533 (650MHz)
    * RAM: 64MB
    * Storage: 8 MB SPI NOR
    * Wireless: 2.4GHz N based built into SoC 2x2
    * Ethernet: 1x 100/10 Mbps, integrated into SoC, 24V POE IN

Installation:
    Flash factory image through stock firmware WEB UI or TFTP
    To get to TFTP recovery just hold reset button while powering
    on for around 4-5 seconds and release.
    Rename factory image to recovery.bin
    Stock TFTP server IP:192.168.0.100
    Stock device TFTP adress:192.168.0.254

Thanks to robimarko for the work inside the ar71xx tree.
Thanks to adrianschmutzler for deep discussion and fixes.

Signed-off-by: Mario Schroen <m.schroen@web.de>
[Split into DTS/DTSI, read-only config partition in DTSI]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
[renamed dtsi filename, light subject touches]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-02 02:10:59 +02:00
Robert Marko
99f6f2c0b8 ar71xx: Add support for TP-Link CPE210 v3
Looks identical to the v2.

This PR adds support for a popular low-cost 2.4GHz N based AP

Specifications:
 - SoC: Qualcomm Atheros QCA9533 (650MHz)
 - RAM: 64MB
 - Storage: 8 MB SPI NOR
 - Wireless: 2.4GHz N based built into SoC 2x2
 - Ethernet: 1x 100/10 Mbps, integrated into SoC, 24V POE IN

Installation:
Flash factory image through stock firmware WEB UI
or through TFTP
To get to TFTP recovery just hold reset button while powering on for
around 4-5 seconds and release.
Rename factory image to recovery.bin
Stock TFTP server IP:192.168.0.100
Stock device TFTP adress:192.168.0.254

Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Signed-off-by: Robert Marko <robimarko@gmail.com>
[Rebased, adjusted for separate tplink-safeloader entry, dynamic partitioning]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-04-02 02:09:58 +02:00
Adrian Schmutzler
a2a972b2cf ar71xx: Use dynamic partitions for TP-Link CPE210 v2
This is also helpful to add support in ath79.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Tested-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2019-04-02 02:08:37 +02:00
Petr Štetiar
0a67e84bae ar71xx: ens202ext: Fix whitespace issues
I've missed leading whitespace issues in the original patch, so fixing
it in this commit. Thanks to pepe2k for letting me know.

Fixes: d260813d ("ar71xx: ens202ext: Fix VLAN switch")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-04-01 12:07:09 +02:00
David Bauer
38f3433420 ramips: add missing SPDX identifier for EX6150
This adds the SPDX license identifier for the NETGEAR EX6150. It was
missed when submitting the original patch.

Signed-off-by: David Bauer <mail@david-bauer.net>
2019-03-31 20:59:08 +02:00
Michael Pratt
d260813d09 ar71xx: ens202ext: Fix VLAN switch
The target ENS202EXT was just recently added right before the stable
release of Openwrt 18.

It flashes fine, but the physical switch is almost impossible to use
until you have a VLAN set up. Tested on two devices.

The actual problem is that eth0 represents nothing for whatever reason.
In other words, both WAN and LAN are running from eth1. There may be an
underlying problem in the build, but for now, I assume that this is
correct and that a VLAN switch is an appropriate fix.

Also, it's virtually impossible to get the switch running right through
LuCI. It is one thing to get a switch to appear, but attempting to
configure it breaks the whole thing. The VLAN has to be set up
perfectly, otherwise, interfaces will not start up, and one is forced to
reset settings, OR, the new LuCI feature kicks in and reverses any
steps. It is extremely difficult to determine which virtual ports
correspond to which physical ethernet ports without being able to set up
the switch in LuCI.

Temporary Workaround: followed directions here
[openwrt/luci#867](https://github.com/openwrt/luci/issues/867)

Reviewed-by: Marty Plummer <hanetzer@startmail.com>
Signed-off-by: Michael Pratt <mpratt51@gmail.com>
[commit author fix, subject fix, message text wrap]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-31 20:58:51 +02:00
Rosen Penev
2159b25466 ramips: Increase GB-PC1 SPI frequency to 80MHz
The specific flash chip used (W25Q256FVEM) accepts 50MHz for read
requests and higher for others. 104MHz for fast reads. ramips seems to
be limited to 80MHz based on testing with higher values (no speedup).

Based on upstream commit: 97738374a310b9116f9c33832737e517226d3722

 time dd if=/dev/mtdblock3 of=/dev/null bs=64k from 42.96s to 7.01s

 [test done with backported upstream v4.19 driver[1], for numbers on
  stock 4.14 driver please take a look at `ramips: Increase GB-PC2 SPI
  frequency to 80MHz` commit message]

1. https://github.com/openwrt/openwrt/pull/1578

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[expanded note about spi driver version]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-29 09:01:46 +01:00
Rosen Penev
274439b780 ramips: Increase GB-PC2 SPI frequency to 80MHz
The flash chip on the board (Spansion S25FL256SAIF00) is rated to
support at least 50MHz for normal read requests according to the
datasheet. 133MHz for fast reads. However, ramips seems to be limited to
80MHz.

>From testing this, higher values do not improve speeds.

time dd if=/dev/mtdblock3 of=/dev/null bs=64k from

42.82s to 14.09s.

boot speed is also faster:
[   66.884087] procd: - init - vs
[   48.976049] procd: - init -

Since spi speed was requested:
[    3.538884] spi-mt7621 1e000b00.spi: sys_freq: 225000000

CPU is 900MHz:
[    0.000000] CPU Clock: 900MHz

Signed-off-by: Rosen Penev <rosenp@gmail.com>
[fixed commit message by adding missing 0 in the spi-mt7621 clock output]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
2019-03-29 09:01:23 +01:00