Refactor pcie-oxnas to have shared resources in syscon and new pcie-phy
driver. Hopefully this revives PCIe...
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
At some point our initramfs image grew over 6MB, which is
causing an issue when uncompressing in the stock bootloader:
=> bootm 0x5000000 - 0x1000000;
Image Name: Linux-4.19.24
Created: 2019-02-23 1:58:20 UTC
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 6752470 Bytes = 6.4 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Booting using the fdt blob at 0x1000000
Uncompressing Kernel Image ... Error: inflate() returned -5
GUNZIP: uncompress, out-of-mem or overwrite error - must RESET
board to recover
Loading Device Tree to 00ffa000, end 00fffc78 ... OK
To get around this, we need to move to an uncompressed image
for the initramfs image. While this makes a larger image, it
is thankfully bootable so people can then convert their
devices to run OpenWRT. It's worth noting the non-initramfs
image is under 3M, so it will be ages before we have any issues
with the flashed kernel.
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[keep commit message at less than 75 characters per line]
This commit makes the TP-Link hardware-revision naming consistent to
match the one used by the vendor. TP-Link refers to the different
revisions as "vX" not "Version X".
Signed-off-by: David Bauer <mail@david-bauer.net>
Device specification:
- SoC: Ralink RT3883 (MIPS 74Kc) 500Mhz
- RAM: 64Mb
- Flash: 8MB (SPI-NOR)
- Ethernet: 10/100/1000 Mbps
- WLAN
Wireless 1: SoC-integrated : 2.4/5 GHz
Wireless 2: 2.4 GHz RT3092L
- LED: 2x USB, WAN, LAN
- Key: WPS, reset
- Serial: 4-pin header, (57600,8,N,1), 3.3V TTL,
GND, RX, TX, V - J12 marking on board
- USB ports: 2 x USB 2.0
Flashing instructions:
Option 1 (from bootloader web)
- Hold reset button on the back of router when plugging
in power (for at-least 10 seconds after plugged in)
- Connect to a Lan port
- Set computer IP to 10.10.10.3
- Go to http://10.10.10.123 in a web browser
- Click the Browse... Button and select the
*squashfs.sysupgrade.bin file then click APPLY
Option 2 (from the stock admin web)
- Go to firmware upgrade
- Upload the **factory** image *initramfs.bin first
- Boot into openwrt
- From Luci web in openwrt upload the *squashfs.sysupgrade.bin
Signed-off-by: Kip Porterfield <kip.porterfield@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[added v1 to the compatible identifier, added pciid for
the RT3092L, fixed pci unit-address, split out the F9K110X.dtsi
to prepare for a possible F9K1103 patch]
Commit 34b10b46 made usb match with the corresponding usb label.
The problem is that v4 seems to use in stock firmware the
upper led for usb 1 and the lower led for usb 2.
The led assigned varies between TP-Link models and even
same model versions. For example, Archer C7 v1 and v2 have
the leds in the reverse order.
Revert 34b10b46 and swap led labels instead, now usb port
and led label match and also respect the original behavior.
Tested-by: Oldrich Jedlicka <oldium.pro@gmail.com>
Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
The linux-4.14.99 had introduced below upstream patch.
6636dc5e01c6 arm64: io: Ensure value passed to __iormb() is held in a 64-bit register
It was causing VFIO driver build issue. This patch is to fix it.
CC drivers/vfio/fsl-mc/vfio_fsl_mc.o
In file included from ./include/linux/scatterlist.h:9:0,
from ./include/linux/iommu.h:22,
from drivers/vfio/fsl-mc/vfio_fsl_mc.c:14:
drivers/vfio/fsl-mc/vfio_fsl_mc.c: In function 'vfio_fsl_mc_dprc_wait_for_response':
./arch/arm64/include/asm/io.h:122:45: error: expected expression before ')' token
: "=r" (tmp) : "r" ((unsigned long)(v)) \
^
drivers/vfio/fsl-mc/vfio_fsl_mc.c:334:3: note: in expansion of macro '__iormb'
__iormb();
^~~~~~~
./arch/arm64/include/asm/io.h:122:45: error: expected expression before ')' token
: "=r" (tmp) : "r" ((unsigned long)(v)) \
^
drivers/vfio/fsl-mc/vfio_fsl_mc.c:336:3: note: in expansion of macro '__iormb'
__iormb();
^~~~~~~
Reported-by: Mathew McBride <matt@traverse.com.au>
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Reading and writing to and from flash storage is slow and currently,
the ath10kcal_extract() scripts are even more at an disadvantage
because they use a block size of 1 to be able skip.
This patch reworks the extraction scripts to be much faster and
efficient by reading and writing the calibration data in possibly
one big block.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This is a simple copy of ipq40xx: speed up ath10k-caldata
extraction commit a69e101ed1
Tested on DIR-825-B1
3768+0 records in
3768+0 records out
real 0m 11.90s
user 0m 0.03s
sys 0m 9.94s
1+0 records in
1+0 records out
real 0m 0.03s
user 0m 0.00s
sys 0m 0.03s
With this change eeprom extraction is fast enough to get
working Wi-Fi after initial install.
Signed-off-by: Dmitry Tunin <hanipouspilot@gmail.com>
This patch adds more disabled DRM config symbols from the
x86' config to the generic target configs. The existing
symbols in the x86' configs are kept for now, until we
know whenever we want to remove such symbols or not
(see Github PR #1831, #1825, #1828).
THis patch also contains a squashed patch from
Daniel Engberg <daniel.engberg.lists@pyret.net> titled
"kernel: Fix config for 4.14" which fixes a duplicated line
added by: commit 8bdc241d01 ("x86: fix geode image builds")
Fixes: 8bdc241d01 ("x86: fix geode image builds")
Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
All supported boards should work with the $vendor bootloader just fine.
Existing users should mindfully re-flash using new initramfs build and
restore $vendor bootloader's bootcmd to it's original setting.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Add port handles for both USB 2.0 ports so they can be used as
trigger-source for USB LEDs.
Suggestions for pogoplug and akitio,mycloud devices are welcome.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
add kernel and other missing NAND flash partitions to allow booting
using stock loader instead of the 2nd-stage bootloader.
This will ease installation from stock firmware on pogoplugs as well
as stg212 aka. medion nas.
Existing users of OpenWrt on those boards will have to boot initramfs
generated after this commit and subsequently flash first the ubinized
image, then again run initramfs to flash sysupgrade.tar image, and
then restore bootcmd in U-Boot environment back to the original setting
('nboot 60500000 0 440000' or something like that) instead of jumping
into the now no longer used 2nd-stage loader.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
NEC WG2600HP uses port1 on QCA8337 as a WAN port, so "0x2" should
be used as a portmask instead of "0x1e" for "WAN" LED configuration.
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
This patch changes all the legacy usbdev leds triggers
to the use usbport. The problem is that the usbdev triggers
get applied as usbport in sysfs but LuCI gets confused and
is not able to show the configuration with usbdev. More
information can be found in the PR:
<https://github.com/openwrt/openwrt/pull/1819>
Signed-off-by: David Santamaría Rogado <howl.nsp@gmail.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
[extended commit message]
In the production of glinet, the MAC address of ethernet port is
only written at the position where the ART area offset address
is 0, and the MAC address of eth1 is added 1 on the basis of eth0.
Signed-off-by: Luo chongjun <luochongjun@gl-inet.com>
Hardware
--------
CPU: Qualcomm IPQ4019
RAM: 256M
FLASH: 128M NAND
ETH: QCA8075
VDSL: Intel/Lantiq VRX518 PCIe attached
currently not supported
DECT: Dialog SC14448
currently not supported
WiFi2: IPQ4019 2T2R 2SS b/g/n
WiFi5: IPQ4019 2T2R 2SS n/ac
LED: - Power/DSL green
- WLAN green
- FON/DECT green
- Connect/WPS green
- Info green
- Info red
BTN: - WLAN
- FON
- WPS/Connect
UART: 115200n8 3.3V (located under the Dialog chip)
VCC - RX - TX - GND (Square is VCC)
Installation
------------
1. Grab the uboot for the Device from the 'u-boot-fritz7530'
subdirectory. Place it in the same directory as the 'eva_ramboot.py'
script. It is located in the 'scripts/flashing' subdirectory of the
OpenWRT tree.
2. Assign yourself the IP address 192.168.178.10/24. Connect your
Computer to one of the boxes LAN ports.
3. Connect Power to the Box. As soon as the LAN port of your computer
shows link, load the U-Boot to the box using following command.
> ./eva_ramboot.py --offset 0x85000000 192.168.178.1 uboot-fritz7530.bin
4. The U-Boot will now start. Now assign yourself the IP address
192.168.1.70/24. Copy the OpenWRT initramfs (!) image to a TFTP
server root directory and rename it to 'FRITZ7530.bin'.
5. The Box will now boot OpenWRT from RAM. This can take up to two
minutes.
6. Copy the U-Boot and the OpenWRT sysupgrade (!) image to the Box using
scp. SSH into the Box and first write the Bootloader to both previous
kernel partitions.
> mtd write /path/to/uboot-fritz7530.bin uboot0
> mtd write /path/to/uboot-fritz7530.bin uboot1
7. Remove the AVM filesystem partitions to make room for our kernel +
rootfs + overlayfs.
> ubirmvol /dev/ubi0 --name=avm_filesys_0
> ubirmvol /dev/ubi0 --name=avm_filesys_1
8. Flash OpenWRT peristently using sysupgrade.
> sysupgrade -n /path/to/openwrt-sysupgrade.bin
Signed-off-by: David Bauer <mail@david-bauer.net>
[removed pcie-dts range node, refreshed on top of AP120-AC/E2600AC]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
From: Niklas Cassel <niklas.cassel@linaro.org>
|The databook clearly states that the MSI IRQ (msi_ctrl_int) is a level
|triggered interrupt.
|
|The msi_ctrl_int will be high for as long as any MSI status bit is set,
|thus the IRQ type should be set to IRQ_TYPE_LEVEL_HIGH, causing the
|IRQ handler to keep getting called, as long as any MSI status bit is set.
|[...]
|Not having the correct IRQ type defined will cause us to lose interrupts,
|which in turn causes timeouts in the PCIe endpoint drivers.
|
|Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
|Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
David Bauer reported that the VDSL modem (attached via PCIe)
on his AVM Fritz!Box 7530 was complaining about not having
enough space in the BAR. A closer inspection of the old
qcom-ipq40xx.dtsi pulled from the GL-iNet repository listed:
| qcom,pcie@80000 {
| compatible = "qcom,msm_pcie";
| reg = <0x80000 0x2000>,
| <0x99000 0x800>,
| <0x40000000 0xf1d>,
| <0x40000f20 0xa8>,
| <0x40100000 0x1000>,
| <0x40200000 0x100000>,
| <0x40300000 0xd00000>;
| reg-names = "parf", "phy", "dm_core", "elbi",
| "conf", "io", "bars";
Matching the reg-names with the listed reg leads to
<0xd00000> as the size for the "bars".
BugLink: https://www.mail-archive.com/openwrt-devel@lists.openwrt.org/msg45212.html
Reported-by: David Bauer <mail@david-bauer.net>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This patch removes the obsolete touchscreen config symbols
and all disables all remaining ones in the generic config.
Generated by running drivers/input/touchscreen/Kconfig
sed -n 's/^config[[:space:]]\(.*\)/# CONFIG_\1 is not set/p' Kconfig |\
sort -d
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This patch adds the disabled DRM_RADEON and DRM_AMDGPU
config symbols from the x86' config to the generic target
configs. The existing symbols in the x86' configs are kept
for now, until we know whenever we want to remove such
symbols or not (see Github PR #1831, #1825, #1828).
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Qxwlan E2600AC C1 based on IPQ4019
Specifications:
SOC: Qualcomm IPQ4019
DRAM: 256 MiB
FLASH: 32 MiB Winbond W25Q256
ETH: Qualcomm QCA8075
WLAN: 5G + 5G/2.4G
* 2T2R 2.4/5 GHz
- QCA4019 hw1.0 (SoC)
* 2T2R 5 GHz
- QCA4019 hw1.0 (SoC)
INPUT: Reset buutton
LED: 1x Power ,6 driven by gpio
SERIAL: UART (J5)
UUSB: USB3.0
POWER: 1x DC jack for main power input (9-24 V)
SLOT: Pcie (J25), sim card (J11), SD card (J51)
Flash instruction (using U-Boot CLI and tftp server):
- Configure PC with static IP 192.168.1.10 and tftp server.
- Rename "sysupgrade" filename to "firmware.bin" and place it in tftp
server directory.
- Connect PC with one of RJ45 ports, power up the board and press
"enter" key to access U-Boot CLI.
- Use the following command to update the device to OpenWrt: "run lfw".
Flash instruction (using U-Boot web-based recovery):
- Configure PC with static IP 192.168.1.xxx(2-254)/24.
- Connect PC with one of RJ45 ports, press the reset button, power up
the board and keep button pressed for around 6-7 seconds, until LEDs
start flashing.
- Open your browser and enter 192.168.1.1, select "sysupgrade" image
and click the upgrade button.
Qxwlan E2600AC C2 based on IPQ4019
Specifications:
SOC: Qualcomm IPQ4019
DRAM: 256 MiB
NOR: 16 MiB Winbond W25Q128
NAND: 128MiB Micron MT29F1G08ABAEAWP
ETH: Qualcomm QCA8075
WLAN: 5G + 5G/2.4G
* 2T2R 2.4/5 GHz
- QCA4019 hw1.0 (SoC)
* 2T2R 5 GHz
- QCA4019 hw1.0 (SoC)
INPUT: Reset buutton
LED: 1x Power, 6 driven by gpio
SERIAL: UART (J5)
USB: USB3.0
POWER: 1x DC jack for main power input (9-24 V)
SLOT: Pcie (J25), sim card (J11), SD card (J51)
Flash instruction (using U-Boot CLI and tftp server):
- Configure PC with static IP 192.168.1.10 and tftp server.
- Rename "ubi" filename to "ubi-firmware.bin" and place it in tftp
server directory.
- Connect PC with one of RJ45 ports, power up the board and press
"enter" key to access U-Boot CLI.
- Use the following command to update the device to OpenWrt: "run lfw".
Flash instruction (using U-Boot web-based recovery):
- Configure PC with static IP 192.168.1.xxx(2-254)/24.
- Connect PC with one of RJ45 ports, press the reset button, power up
the board and keep button pressed for around 6-7 seconds, until LEDs
start flashing.
- Open your browser and enter 192.168.1.1, select "ubi" image
and click the upgrade button.
Signed-off-by: 张鹏 <sd20@qxwlan.com>
[ added rng node. whitespace fixes, ported 02_network,
ipq-wifi Makefile, misc dts fixes, trivial message changes ]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This patch adds support for the COMFAST CF-E120A v3, an outdoor wireless
CPE with two Ethernet ports and a 802.11an radio.
Specifications:
- AR9344 SoC
- 535/400/267 MHz (CPU/DDR/AHB)
- 2x 10/100 Mbps Ethernet, both with PoE-in support
- 64 MB of RAM (DDR2)
- 8 MB of FLASH
- 2T2R 5 GHz, up to 25 dBm
- 11 dBi built-in antenna
- POWER/LAN/WAN/WLAN green LEDs
- 4x RSSI LEDs (2x red, 2x green)
- UART (115200 8N1) and GPIO (J9) headers on PCB
Flashing instructions:
The original firmware is based on OpenWrt so a sysupgrade image can be
installed via the stock web GUI. Settings from the original firmware
will be saved and restored on the new one, so a factory reset will be
needed. To do so, once the new firmware is flashed, enter into failsafe
mode by pressing the reset button several times during the boot
process, while while the WAN LED flashes, until it starts flashing
faster. Once in failsafe mode, perform a factory reset as usual.
The U-boot bootloader contains a recovery HTTP server to upload the
firmware. Push the reset button while powering the device on and
keep it pressed for >10 seconds. The recovery page will be at
http://192.168.1.1
Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
This patch adds support for the TP-Link TL-WR802N-v4.
https://openwrt.org/toh/tp-link/tl-wr802n
Specification:
- MT7628N (580 MHz)
- 64 MB RAM
- 8 MB FLASH
- 2T2R 2.4 GHz
- 1x 10/100 Mbps Ethernet
- 1x LED
Flash instruction:
The only way to flash the image in TL-WR802N v4 is to use
tftp recovery mode in U-Boot:
1. Configure PC with static IP 192.168.0.225/24 and tftp server.
2. Rename "openwrt-ramips-mt76x8-tplink_tl-wr802n-v4-squashfs-tftp-recovery.bin"
to "tp_recovery.bin" and place it in tftp server directory.
3. Connect PC with the LAN port, press the reset button, power up
the router and keep button pressed for around 10 seconds, until
device starts downloading the file.
4. Router will download file from server, write it to flash and reboot.
Signed-off-by: Marcel Jost <majo@icutech.ch>
* assign pinmux groups to gpio function for LEDs/buttons
* rename flash node to be more generic in line with other device nodes
* remove useless/incorrect eeprom property from wmac node
* correct base mac address for embedded switch
Signed-off-by: Thomas Vincent-Cross <me@tvc.id.au>
The TP-Link WDR3600 shares the same machine-code in the ar71xx target,
thus expecting "tl-wdr4300" not "tl-wdr3600" in the support-list
metadata to allow non-forced sysupgrades from ar71xx to ath79.
With this, it is possible to flash a WDR4300 image on the WDR3600. It
is no problem however, as the only difference is the 5GHz WiFi chip
which has 3SS instead of 2SS. Both work with either image.
Signed-off-by: David Bauer <mail@david-bauer.net>
This adds the support-list entry the AVM FRITZ!Box 4020 expects in the
ar71xx target to allow non-forced sysupgrades from ar71xx to ath79.
Signed-off-by: David Bauer <mail@david-bauer.net>
remove USB as this is no LED but power control
rename WiFi LED with correct color red (like in stock firmware)
set middle LED to be used for LAN link/activity
Signed-off-by: Andreas Ziegler <dev@andreas-ziegler.de>
ALFA Network AP120C-AC is a dual-band ceiling AP, based on Qualcomm
IPQ4018 + QCA8075 platform.
Specification:
- Qualcomm IPQ4018 (717 MHz)
- 256 MB of RAM (DDR3)
- 16 MB (SPI NOR) + 128 MB (SPI NAND) of flash
- 2x Gbps Ethernet, with 802.3af PoE support in one port
- 2T2R 2.4/5 GHz (IPQ4018), with ext. FEMs (QFE1952, QFE1922)
- 3x U.FL connectors
- 1x 1.8 dBi (Bluetooth) and 2x 3/5 dBi dual-band (Wi-Fi) antennas
- Atmel/Microchip AT97SC3205T TPM module (I2C bus)
- TI CC2540 Bluetooth LE module (USB 2.0 bus)
- 4x LED (all driven by GPIO)
- 1x button (reset)
- 1x USB 2.0 (optional, not installed in indoor version)
- DC jack for main power input (12 V)
- UART header available on PCB (2.0 mm pitch)
Flash instruction:
1. This board uses dual-image feature (128 MB NAND is divided into two
64 MB partitions: 'rootfs1' and 'rootfs2').
2. Before update, make sure your device is running firmware no older
than v1.1 (previous versions have incompatible U-Boot).
3. Use 'factory' image in vendor GUI or for sysupgrade tool, without
preserving settings.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
Without a proper SPI NAND support (SPI NAND framework is available in
kernel >= 4.19) the only way to make such flash working is to include
it in raw/parallel NAND subsystem support and combine with mt29f staging
driver. Obviously, this approach isn't going to be accepted by upstream
(similar support for Winbond W25N01GV was rejected).
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
The addition of kmod-input-touchscreen-ads7846 enabled
INPUT_TOUCHSCREEN, which exposes several other symbols on various
targets. Add those symbols to the generic kernel configs to fix build.
Fixes: 77a54bbf13 ("kernel: add kmod-input-touchscreen-ads7846")
Reported-by: Hannu Nyman <hannu.nyman@iki.fi>
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
This module adds support for ADS7846 based touchscreens used in devices
like the WaveShare 3.5" and 4" LCD displays designed for Raspberry Pi.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
This module adds support for small TFT LCD display modules. While this
module also exists in the 4.9 kernel, we are not going to support this
kernel in the next major release, so don't make it available for 4.9.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>