Commit graph

413 commits

Author SHA1 Message Date
Pavel Kubelun
8fca99266e ipq806x: add enable reg and masks for PRNG
Cherry-picked from https://source.codeaurora.org/quic/qsdk/system/openwrt/tree/?h=korg/linux-3.4.y/release/arugula_bb_cs

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-12-01 15:47:43 +01:00
Pavel Kubelun
550f71ec8d ipq806x: refactor rpm clock controller patches
RPM clock controller driver had made its way upstream and previous
approach of directly redoing a driver to support ipq806x is a no go anymore.

Thus reverting mentioned patches to upstream state and renaming
in correct patch numbering accordance.

To make the driver work on ipq806x boards we introduce a custom patch.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-12-01 15:47:43 +01:00
Kevin Darbyshire-Bryant
102cb4742c kernel: bump to 4.4.35
Refresh patches on all 4.4 supported platforms.

077-0005-bgmac-stop-clearing-DMA-receive-control-register-rig.patch
removed as now upstream.

Compile & run tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2016-11-29 21:12:08 +01:00
Mathias Kresin
3228c2a682 ipq806x: more dts cleanup
Remove the wifi5g LED from the the d7800, r7500 and r7800. Albeit this
GPIO is mentioned in the GPL tarball, it doesn't do anything. The
2.4/5 GHz LEDs are connected to the wifi chips and not be controlled
from the the userspace.

Use the LEDs names/colours as they are used in the board manuals. Merge
redundant LED configurations. Use the phy[0|1]tpt trigger for the
wireless LEDs. Remove the workarounds for the not controllable wireless
LEDs.

Fix spi compatible strings and remove superfluous spi-max-frequency
parameters.

If there are two power leds, use one for indicating normal operation and
one for failsafe/upgrade. Keep the on/off state of the main power led
during boot.

Use the usb pinmux settings from the nbg6817 gpl sources.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-11-27 15:33:54 +01:00
Henryk Heisig
e3caadc69d ipq806x: clean up dts files
Set the pinmux to the values found in the GPL tarballs of the boards.
Remove pinmux which are is not used (like nand pinmux for spi
flash boards).

This allows to use the wan orange led of the C2600 which had a wrong
pinmux before. Might fix buttons or leds of other boards as well.

Fix the LED color and the ledswitch key code of the C2600. Rename the
ledgnr to ledswitch.

Add support for indication the boot state using LEDs to the D7800,
NBG6817, R7500 and R7500v2.

Change GPIO active to readable values in D7800, EA8500, R7500,
R7500v2 and R7800.

Change gpioexport to gpio pinmux.

Add proper "drive strenght" to i2c4_pins and use it for RPM on
C2600, D7800, EA8500, R7500, R7500v2.

Remove pcie pinmux from D7800.

Move pinctrl to correct place in NBG6817 and R7800.

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2016-11-27 15:24:59 +01:00
Sebastian Quilitz
ae79c41286 ipq806x: add support for TP-Link Archer VR2600v
This router is similar to the C2600. Ethernet on WAN + LAN, switch,
sysupgrade, LEDs, buttons and WiFi on 2G + 5G do work. The xDSL modem
and the POTS/DECT interface are not supported yet.

It is not possible to flash LEDE via the TP-Link webinterface. The
image need to be signed. The first 0x200 bytes of the image is the
TP-Link header including the signature. The signature is not validated
by the bootloader. The LEDE image is zeroed in this area.

To install LEDE it is necessary to solder a four pin header to JP2.
Connect a serial interface to this header and interrupt the autostart
of kernel. Transfer the sysupgrade image via TFTP and write it to the
serial flash at 0x320000.

Signed-off-by: Sebastian Quilitz <zeraphim@x-pantion.de>
2016-11-24 22:37:40 +01:00
Henryk Heisig
c380772c19 ipq806x: c2600: change wan and lan led trigger to swconfig port
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2016-11-21 10:04:55 +01:00
Henryk Heisig
8b1731964b ipq806x: enable swconfig LED support
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2016-11-21 10:04:55 +01:00
Pavel Kubelun
70434c3f94 ipq806x: switch to upstream usb driver and backport fixes
Also removing fifo-resize property drom DT as it has been removed from the driver.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-21 09:58:42 +01:00
Felix Fietkau
b5ee86c4e5 ipq806x: remove device specific sysupgrade image checks
Replaced by image metadata

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-11-20 20:08:39 +01:00
Pavel Kubelun
27c355f8a4 ipq806x: fix build errors
Add missing patches that broke LEDE builder while updating WDT driver

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-19 17:57:09 +01:00
Felix Fietkau
9d6d7d9a0e ipq806x: append metadata to images
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-11-19 11:24:10 +01:00
Hannu Nyman
8459d85fa3 ipq806x: refresh patches
This patch refreshes the ipq806x kernel patches.

There was a large PR for ipq806x in the queue when the kernel patches
were refreshed for 4.4.32, so currently there is quite much fuzz for
ipq806x.

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-11-17 14:23:01 +01:00
Pavel Kubelun
5aace5a5fb ipq806x: fixes for R7800 and C2600
Updating spi pins configuration in R7800 and C2600 DTs
Adding more usb power pin export and gsbi6 in R7800 DT
Updating and fixing leds

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-16 10:59:30 +01:00
Pavel Kubelun
3ac5eb9141 ipq806x: fix Netgear R7500v2 memory
Netgear R7500v2 has 512MB of RAM with 2MB reserved block in the end of memory region.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-16 10:59:30 +01:00
Pavel Kubelun
bb8f5162fd ipq806x: fix pci pins
Fix pci pins drive-strength according to oem sources.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-16 10:59:30 +01:00
Pavel Kubelun
84781cb6dc ipq806x: add vlans during switch init into R7800 DT
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-16 10:59:30 +01:00
Pavel Kubelun
77b6bfc2f5 ipq806x: add support for RPM message RAM
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-16 10:59:30 +01:00
dissent1
07d0c1b947 ipq806x: add support for RPM clock controller
The patch #179 for RPM has initially been made for apq806x board. It has been modified to support ipq806x instead of apq8064.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-16 10:59:30 +01:00
Pavel Kubelun
506dc815b9 ipq806x: add CPU idle states
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-16 10:59:30 +01:00
Pavel Kubelun
793d448a51 ipq806x: backport upstream wdt driver
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-16 10:59:30 +01:00
Pavel Kubelun
524d7a7cde ipq806x: fix pcie reset gpios
Fix perst-gpios property in accordance to the driver, so it stops spamming that it can't parse it.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-08 11:17:10 +01:00
Felix Fietkau
3616666126 ipq806x: fix zyxel image build error
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-11-04 13:06:35 +01:00
Felix Fietkau
fcf90318c5 ipq806x: clean up the kernel config and reduce kernel image size by disabling some unnecessary code
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-11-04 13:06:35 +01:00
Felix Fietkau
fddd532612 ipq806x: fix a kconfig issue
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-11-04 13:06:35 +01:00
Pavel Kubelun
b2135f3ba5 ipq806x: update DT in accordance to new drivers And add some more DT nodes
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-03 08:28:16 +01:00
Pavel Kubelun
681f28990d ipq806x: switch to generic cpufreq driver cpufreq-dt
This fixes ondemand frequency scaling and moves ipq806x onto upstream driver

Also switching to ondemand frequency scaling as it is fixed now

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-03 08:28:16 +01:00
Pavel Kubelun
a154a3d8be ipq806x: add opp patches for voltage scaling
Preparing for cpufreq driver switch to generic cpufreq-dt

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-03 08:28:16 +01:00
Pavel Kubelun
8749fb7894 ipq806x: update clk-qcom patches
Preparing for cpufreq driver switch to generic cpufreq-dt

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-03 08:28:16 +01:00
Pavel Kubelun
bf7166e545 ipq806x: fix leds, sata port for Netgear R7800 and minor fixes - renamed leds in correct color accordance - blink power led with white during boot and with amber when flashing firmware - fixed usb leds - enabled unused wps and rfkill leds as wlan leds. Now rfkill led is for 2.4GHz and wps - 5GHz WIFI - removed unneeded bootargs - removed unneeded pci pins from R7800 DT (driver already handles it in proper way) and add tx offsetting - nand ecc step size - fixed sata ports
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-11-03 08:28:16 +01:00
Cezary Jackiewicz
dafbc94f95 ipq806x: TP-Link Archer C2600: convert old usbdev trigger to new usbport
Signed-off-by: Cezary Jackiewicz <cezary@eko.one.pl>
2016-11-03 08:21:32 +01:00
Pavel Kubelun
8f7e58c0fe ipq806x: add reserved memory node in Netgear R7800
KERNEL BUG: BAD_PAGE_STATE in process appears here and there during intensive memory usage.

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-10-31 16:48:04 +01:00
Henryk Heisig
0744b6a044 ipq806x: ArcherC2600: export usb power pins
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2016-10-31 16:40:54 +01:00
Henryk Heisig
dbf2feb2b3 ipq806x: ArcherC2600: devictree cleanup
add blank lines and use macros for GPIOs

Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2016-10-31 16:40:28 +01:00
André Valentin
1465bebd74 ipq806x/nbg6817: add sysupgrade support
Add new way of flashing to mmc devices based on rootfs split with loop devices.

Signed-off-by: André Valentin <avalentin@marcant.net>
2016-10-26 12:37:47 +02:00
André Valentin
a0ed7af6c6 ipq806x/nbg6817: add support for ZyXEL NBG6817
CPU: 2x1.8GHz ARM, RAM: 512MiB
Storage: 4MiB serial Flash, 3.9GiB MMC
NIC: 2x1GBit/s, Switch with 5 external and 2 internal ports
WiFi: Dualband, ath10k 2.4GHz, 5GHz MU-MIMO

For installation copy xx-mmcblk0p4-kernel.bin and xx-mmcblk0p5-rootfs-full.bin
to device. Then run:
cat xx-mmcblk0p4-kernel.bin > /dev/mmc0blk0p4
cat xx-mmcblk0p5-rootfs-full.bin > /dev/mmc0blk0p5
reboot -f

For debugging serial console is easily visible on board, no soldering needed.

Signed-off-by: André Valentin <avalentin@marcant.net>
2016-10-26 12:37:46 +02:00
Rafał Miłecki
0658527e1e switch to the new usbport LED trigger
This makes init.d script handle existing UCI entries using the new
trigger. It also switches all targets to use its package.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2016-10-19 12:09:45 +02:00
Felix Fietkau
a92f57599c ipq806x: add back end-of-UBI marker for a few factory images (FS#228)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-10-18 09:30:57 +02:00
Henryk Heisig
bcfb535730 ipq806x: C2600: change leds colour name
Signed-off-by: Henryk Heisig hyniu@o2.pl
2016-10-15 11:36:50 +02:00
Henryk Heisig
4bdf615878 ipq806x: add support for indicating the boot and upgrade state using four leds
Signed-off-by: Henryk Heisig hyniu@o2.pl
2016-10-15 11:36:50 +02:00
Pavel Kubelun
9677bfbb0f ipq806x: fix wlan mac for Netgear R7800
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-10-06 08:01:33 +02:00
dissent1
eb7307cb94 ipq806x: update Netgear R7800 device tree
-add spi pins
-move mdio and rgmii pinctrl from gmac and mdio into pinmux node
-add i2c4 pinctrl into rpm node
-add pin details into several nodes
-update gmac1 and gmac2 parameters
-update mdio phy0 and phy4 registers by ddwrt devs findings
-fix i2c4 pin drive-strengh
-remove pcie pins as it's already present in ipq8065 DT

Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-09-30 10:15:23 +02:00
Mathias Kresin
1cd0a4c688 image: add KERNEL_SIZE to the default device vars
This reverts commit ec37a56587 and fixes
the underlying issue.
2016-09-13 19:36:41 +02:00
Mathias Kresin
c7d5bc8197 ramips: improve Linksys EA8500 build code
Use of the kernel size variable.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-09-11 19:40:45 +02:00
Mathias Kresin
e7ec7a08aa image: use k as unit suffix for blocksize
Use k as unit suffix for kilobyte to have a the same unit regardless of
the used filesystem.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2016-09-04 08:56:05 +02:00
Roman Yeryomin
9dc367e6f0 ipq806x: fix ipq8065 s2a/s2b regulator frequency (fixes ethernet performance)
Signed-off-by: Roman Yeryomin <roman@advem.lv>
2016-08-24 15:15:16 +02:00
Cezary Jackiewicz
9417293366 ipq806x: Archer C2600: Renaming LED accordance with the standard
Signed-off-by: Cezary Jackiewicz <cezary.jackiewicz@gmail.com>
2016-08-24 00:21:34 +02:00
John Crispin
2a64be5aa9 ipq806x: enable ondemand governor
Signed-off-by: John Crispin <john@phrozen.org>
2016-08-24 00:19:19 +02:00
Jo-Philipp Wich
00e8571f2b ipq806x: rename R7800 device tree file, merge R7500v2 dts addition
The R7800 is an IPQ8065, so rename its dts file to reflect that fact.
Also fold the R7500v2 dts addition into the existing 800-devicetree.patch.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-24 02:30:35 +02:00
Stijn Tintel
8072264b96 kernel: update kernel 4.4 to version 4.4.19
Refresh patches for all targets that support kernel 4.4.
Compile-tested on all targets that use kernel 4.4 and aren't marked broken.
Runtime-tested on ar71xx, octeon and x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2016-08-23 10:51:17 +03:00
Alexis Green
c34f953fef ipq806x: Build image for Netgear Nighthawk X4 R7500v2
Signed-off-by: Alexis Green <alexis@cessp.it>
[Jo-Philipp Wich: add missing DEVICE_TITLE, fix model name in commit title]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-08-22 17:24:48 +02:00
John Crispin
00516611bd ipq806x: add usb pins to r7800 dts file
Signed-off-by: John Crispin <john@phrozen.org>
2016-08-22 07:43:11 +02:00
John Crispin
d7e4b9babb ipq806x: sync with latest patches sent by QCA
Signed-off-by: John Crispin <john@phrozen.org>
2016-08-18 09:49:18 +02:00
dissent1
f3fbc80718 ipq806x: fix MAC_POWER_SEL for Netgear R7800
Fixes instability/corruption on the ethernet interface connected to port0 on the switch on Netgear R7800 as well.

Signed-off-by: Josh Bendavid <joshbendavid@gmail.com>
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-07-26 08:39:36 +02:00
Jonas Gorski
532eb5f581 ipq806x: fix boot hang if cmdline contains words with r in the middle
The ATB DTB mangle code will enter an infinite loop if it encounters a
word in the command line that contains an r in the middle of the word.

Fix this by increasing ptr everytime before invoking strchr, ot avoid
finding the same r again.

This fixes booting at least on Netgear R7500v1, which contains
"ubi.mtd=rootfs" in its commandline, triggering the misbehaviour.

Fixes: 0ddcbee261 ("ipq806x: activate ATAG DTB mangle and EA8500 rootblock in dts")
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
2016-08-01 00:13:35 +02:00
Felix Fietkau
62d4665551 ipq806x: add missing sysupgrade-nand => sysupgrade-tar change
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-31 13:05:11 +02:00
Jo-Philipp Wich
db49dd894e build: rename sysupgrade-nand to sysupgrade-tar
Now that the "sysupgrade-nand" step is used by non-NAND targets as well,
rename it to "sysupgrade-tar" to make it more generic.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-07-29 16:53:03 +02:00
Felix Fietkau
7a175e2d44 ipq806x: clean up redundant initialization of core device image variables
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-20 10:13:50 +02:00
Josh Bendavid
9780b2dd93 ipq806x: add patch for kernel compiler flags
Signed-off-by: Josh Bendavid <joshbendavid@gmail.com>
2016-07-17 17:29:12 +02:00
Josh Bendavid
15bcda4be6 ipq806x: change compiler flags to arm cortex-a15
Signed-off-by: Josh Bendavid <joshbendavid@gmail.com>
2016-07-17 17:29:12 +02:00
Felix Fietkau
8e2764ce9b image.mk: clean up redundant code related to DEVICE_DTS
It is used by a core build template, so the variable should be
initialized and added to DEVICE_VARS in the core.
Same for DEVICE_DTS_DIR

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-15 14:14:11 +02:00
Felix Fietkau
e0ed6ec667 image: clean up UBI related device variable definitions
Move UBI related variable export to core, since the variables are used
by a core Build/ template

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-14 10:27:30 +02:00
Felix Fietkau
1729a089fe ipq806x: remove obsolete UBINIZE_OPTS variables
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-14 10:27:30 +02:00
Felix Fietkau
39a229ed4b ipq806x: enable ath10k firmware for 988x, 99x0 and 9984 by default
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-04 11:41:32 +02:00
Hauke Mehrtens
84d489f64f kernel: update to version 4.4.14
Changelog: https://cdn.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.14

Some manual changes to target/linux/generic/patches-4.4/610-
netfilter_match_bypass_default_checks.patch were needed.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2016-06-26 18:20:37 +02:00
Adrian Panella
184087f4f1 ipq806x: enable ieee80211 phy hotplug and patch macaddress
Calibration data for QCA99x0 in this device has bogus macaddress.
The data cannot be modified directly, as it breaks checksum control.
Instead change the macaddress from phy add hotplug event.

Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-22 19:32:06 +02:00
Sven Eckelmann
776613eeba ipq806x: Fix typo in Qualcomm device names
Signed-off-by: Sven Eckelmann <sven.eckelmann@open-mesh.com>
2016-06-22 19:32:06 +02:00
Ben Whitten
b7baaaf782 kernel: Move append-dtb to common image-commands
This build step is used by various targets, move it to a common section.

Signed-off-by: Ben Whitten <ben.whitten@gmail.com>
2016-06-22 19:32:06 +02:00
Pavel Kubelun
823242185b ipq806x: add initial support for Netgear R7800
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-06-22 19:32:06 +02:00
Pavel Kubelun
9bf3ddcb2a ipq806x: move ath10k firmware selection into device profiles
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-06-22 19:32:06 +02:00
Pavel Kubelun
4cd67a4f21 ipq806x: move smb208 nodes into a regulator subnode
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
2016-06-22 19:32:05 +02:00
Josh Bendavid
66ffd0ddf9 ipq806x: fix MAC_POWER_SEL switch configuration
Fixes instability/corruption on the ethernet interface connected to port0 on the switch.

Signed-off-by: Josh Bendavid <joshbendavid@gmail.com>
2016-06-20 11:45:44 +02:00
Adrian Panella
0ddcbee261 ipq806x: activate ATAG DTB mangle and EA8500 rootblock in dts
The command-line arguments provided by the boot loader will be
appended to a new device tree property: bootloader-args.
If there is a property "append-rootblock" in DT under /chosen
and a root= option in bootloaders command line it will be parsed
and added to DT bootargs with the form: <append-rootblock>XX.
Only command line ATAG will be processed, the rest of the ATAGs
sent by bootloader will be ignored.
This is usefull in dual boot systems, to get the current root partition
without afecting the rest of the system.

Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-17 04:13:07 +02:00
Jo-Philipp Wich
14e2f4f6d1 ipq806x: add missing kernel config symbol
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-06-15 13:20:39 +02:00
Josh Bendavid
9361285a41 ipq806x: restore old stmmac dma patch which is still needed to fix data corruption
Signed-off-by: Josh Bendavid <joshbendavid@gmail.com>
2016-06-14 13:28:41 +02:00
Josh Bendavid
e13b6322cd Revert "ipq806x: add mangle bootargs options in config-4.4"
This reverts commit 53147c2237.

These config changes break booting on C2600 and probably other devices.

Signed-off-by: Josh Bendavid <joshbendavid@gmail.com>
2016-06-14 13:28:41 +02:00
John Crispin
8cc65914df ipq806x: move dts file to the files folder
Signed-off-by: John Crispin <john@phrozen.org>
2016-06-13 22:51:42 +02:00
John Crispin
46cecfd6d7 ipg806x: set v4.4 as default
Signed-off-by: John Crispin <john@phrozen.org>
2016-06-13 22:51:42 +02:00
Adrian Panella
53147c2237 ipq806x: add mangle bootargs options in config-4.4
Add config options to manage dual boot partitions, using MANGLE BOOTARGS

Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-13 22:51:42 +02:00
Adrian Panella
3d067c0132 ipq806x: base-files: add support for Linksys EA8500
Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-13 22:51:42 +02:00
John Crispin
2adc6468bf ipq806x: build Linksys EA8500 images
Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-13 22:51:42 +02:00
Adrian Panella
bdaf558134 ipq806x: qcom rpm fix support for smb208
In commit "regulator: qcom: Rework to single platform device" the smb208
regulator used in IPQ8064 was left out.

Add it to that new framework and update Docs and DT accordingly.

Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-13 22:51:42 +02:00
John Crispin
928163bad2 uboot-envtools: add ipq806x support
Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-06-13 22:51:41 +02:00
Felix Fietkau
7eeb254cc4 treewide: replace nbd@openwrt.org with nbd@nbd.name
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-06-07 08:58:42 +02:00
Signed-off-by: Henryk Heisig
8ee30ade17 ipq806x: add diag.sh script
Signed-off-by: Henryk Heisig <hyniu@o2.pl>
2016-06-05 23:23:57 +02:00
John Crispin
9dafab92bf ipq806x: add a default profile
Signed-off-by: John Crispin <john@phrozen.org>
2016-05-31 01:39:31 +02:00
John Crispin
1e152483de ipq806x: enable PM support
this fixes build errors with latest mac80211

Signed-off-by: John Crispin <john@phrozen.org>
2016-05-31 01:39:31 +02:00
John Crispin
0fa01e25ed ipq806x: remove accidentially comitted file
Signed-off-by: John Crispin <john@phrozen.org>
2016-05-30 22:51:14 +02:00
John Crispin
21802f22f0 ipq806x: fix 3.18 support
accidentially removed the files in the v4.4 commit

Signed-off-by: John Crispin <john@phrozen.org>
2016-05-27 22:28:15 +02:00
Ash Benz
cd36d71655 ipq806x/dts: Add Archer C2600 DTS
Signed-off-by: Ash Benz <ash.benz@bk.ru>
2016-05-27 15:50:17 +02:00
Ash Benz
7d963efc40 ipq806x/base-files: extract ath10k caldata
Signed-off-by: Ash Benz <ash.benz@bk.ru>
2016-05-27 15:50:17 +02:00
Ash Benz
14515cc271 ipq806x/base-files: Add support for Archer C2600
Signed-off-by: Ash Benz <ash.benz@bk.ru>
2016-05-27 15:50:17 +02:00
Ash Benz
98b50f0bef ipq806x/base-files: Add Archer C2600 LEDs and board
Signed-off-by: Ash Benz <ash.benz@bk.ru>
2016-05-27 15:50:17 +02:00
Ash Benz
ef02e8967c ipq806x: Add Archer C2600 to image/Makefile
Signed-off-by: Ash Benz <ash.benz@bk.ru>
2016-05-27 15:50:17 +02:00
Ram Chandra Jangir
5e49c57956 ipq806x: Add support for linux-4.4
1)Changes

- Rebased the patches for linux-4.4.7
- Added patch to fix spi nor fifo and dma support
- Added patch to configure watchdog barktime

2)Testing

Tested on IPQ AP148 Board:
 a. NOR boot and NAND boot
 b. ethernet network and ath10k wifi
 c. ubi sysupgrade

UnTested
 dwc3 usb has not been validated on IPQ board(AP148)

3)Known Issues:
 Once we flash ubi image on AP148, and if we reset the board, uboot on
 first boot creates PEB and LEB for dynamic sized partitions, which is incorrect
 and not what linux expects which causes errors when trying to mount rootfs.
 In order to test this, we can use the below steps:
  a. Flash the ubi image on board and don't reset the board
  b. load the kernel fit image in RAM and boot from there.

Signed-off-by: Ram Chandra Jangir <rjangi@codeaurora.org>
2016-05-27 15:50:17 +02:00
John Crispin
b8ab6af1a9 global: change my email address
Signed-off-by: John Crispin <john@phrozen.org>
2016-05-12 03:29:36 +02:00
Adrián Panella
e1041e1bc0 ipq806x: enable fpu
Enable hardfloat to use all the cpu power

Signed-off-by: Adrian Panella <ianchi74@outlook.com>
2016-05-12 03:29:36 +02:00
John Crispin
dc92917409 image / basefiles: make console password configurable
Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com>
Signed-off-by: John Crispin <john@phrozen.org>
2016-04-18 21:53:07 +02:00
Hauke Mehrtens
85e523e126 kernel: update kernel 3.18 to 3.18.26
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 48496
2016-01-25 21:43:26 +00:00
Felix Fietkau
57776e68ce base-files: remove default /etc/config/network, generate it via board.d instead
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48493
2016-01-25 16:30:41 +00:00
John Crispin
78a6a9aec3 ipq806x: Add support for Netgear D7800
Signed-off-by: Tathagata Das <tathagata@alumnux.com>

SVN-Revision: 48360
2016-01-19 10:16:36 +00:00
Jonas Gorski
25ce154605 ipq806x: fix sysupgrade for AP148
AP148 uses lowercase name as boardname, so we need to use this in
platform.sh as well.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 48304
2016-01-18 10:46:58 +00:00
Felix Fietkau
2499a57d92 targets: add kernel image dependencies on device tree files
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48146
2016-01-06 18:39:06 +00:00
Jo-Philipp Wich
67e1c87012 all: drop old uci-defaults.sh
Replace former uci-defaults.sh implementation with the uci-defaults-new.sh one
and update all users accordingly.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47867
2015-12-11 15:26:06 +00:00
Jo-Philipp Wich
08848936dd all: remove redundant board.d/00_model files
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47753
2015-12-04 11:07:06 +00:00
Jo-Philipp Wich
527ec2af59 all: remove dummy ucidef_set_interface_loopback() from board.d
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47744
2015-12-03 23:13:00 +00:00
Jo-Philipp Wich
80a3e65a9d kirkwood, ipq806x: fix board.d script permissions
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47735
2015-12-03 22:42:13 +00:00
Jo-Philipp Wich
4615944c71 ipq806x: switch from uci-defaults to board.d
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47730
2015-12-03 21:13:12 +00:00
Jonas Gorski
e9390dcf23 ipq806x: ap148/r7500: fix eth0 for non gige speeds
Eth0 is attached to mac0 of the switch with a fixed link and and not to
phy4 in single phy mode, so configuring it to anything but 1000FD will
break the connection, which will happen if a only 100 Mbit capapble device
is plugged into the wan port.

Fix this by not taking the state from phy4 and just configuring a fixed link
for eth0.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47695
2015-12-02 22:16:23 +00:00
Felix Fietkau
c52d6d4f45 ipq806x: another fix to the stmmac DMA configuration to fix remaining data corruption issues
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47603
2015-11-22 21:59:22 +00:00
Felix Fietkau
a32f301b62 ipq806x: fix a nasty stmmac data corruption bug caused by faulty DMA initialization
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47594
2015-11-22 19:07:00 +00:00
Felix Fietkau
3789b1f5a0 ipq806x: update stmmac to the version from linux 4.3
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47593
2015-11-22 19:06:51 +00:00
Felix Fietkau
4018f15e21 ipq806x: fix PCIe reset gpio handling - the core already handles the active-low flag
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47547
2015-11-21 10:55:29 +00:00
Felix Fietkau
155469b1f9 ipq806x: assert AHB PCIe reset during init
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47546
2015-11-21 10:55:17 +00:00
Felix Fietkau
9c114740ef ipq806x: reduce PCIe buffer size setting to fix potential data corruption issues
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47545
2015-11-21 10:55:05 +00:00
Felix Fietkau
49d4a980d7 ipq806x: fix pcie reset gpio definions and move them to the common .dtsi file
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47544
2015-11-21 10:54:58 +00:00
Felix Fietkau
575413a779 ipq806x: fix pcie tx0-term-offset setting
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47543
2015-11-21 10:54:53 +00:00
Felix Fietkau
44b8472f16 ipq806x: fix device tree nodes for PCI to get rid of I/O and memory offsets
Fixes QCA99x0 detection issues

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47542
2015-11-21 10:54:48 +00:00
Felix Fietkau
06f79fe841 ipq806x: enable vfpv4 support and set cpu type to cortex-a9
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 47468
2015-11-14 14:22:24 +00:00
Jonas Gorski
d9197d8b0c ipq806x: fix BOARD_NAME spellings
the board names used by the upgrade check differ from the device names
in case, so always set them. We can't rely on tolower or similar since
different locales might have different rules for lower case letters, so
set them explicitily.

Fixes sysupgrade rejecting *-sysupgrade.tar because of the difference.

Signed-off-by: Kaspar Schleiser <kaspar@schleiser.de>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 47381
2015-11-04 11:33:31 +00:00
Hauke Mehrtens
55a912f43e kernel: update kernel 3.18 to version 3.18.23
Changelog:
 * https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.22
 * https://cdn.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.23

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 47334
2015-11-01 13:45:57 +00:00
Hauke Mehrtens
da94b00df5 kernel: update kernel 4.1 to version 4.1.11
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.11

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 47252
2015-10-25 17:32:01 +00:00
Hauke Mehrtens
0cd478518f kernel: update 4.1 to 4.1.10
Fixes a regression on spi flash devices (upstream commit 1583eaece6fa).

Changelogs:
* https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.7
* https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.8
* https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.9
* https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.10

096-ipv4-off-by-one-in-continuation-handling-in-proc-net.patch was applied
upstream and dropped.

Signed-off-by: Mathias Kresin <openwrt@kresin.me>
[update from 4.1.9 to 4.1.10]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 47104
2015-10-04 11:34:39 +00:00
Rafał Miłecki
ffcb268437 ipq806x: add platform_pre_upgrade for sysupgrade
We're in process of cleaning nand_do_platform_check. Currently is leaves
a special mark in /tmp/sysupgrade-nand-path triggering some diffent code
path in nand_upgrade_stage1. This can be a bit confusing.

The plan is to have the check function only check the image and nothing
else. Then platform code (platform_pre_upgrade) should trigger NAND
specific upgrade path. This is what this patch implements.

This follows ar71xx, lantiq and partially bcm53xx.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 46945
2015-09-15 16:05:10 +00:00
Jonas Gorski
82fb27917b ipq806x: fix uninitialized variable usage in cpufreq-krait
In krait_cpufreq_probe, both freq and max_cpu_freq are never
initialized, so the max_cpu_freq will have a random value at the end.
Fix this by properly initializing max_cpu_freq to 0 and storing the clk
frequency in freq as well, to make it similar to how it's calculated in
krait_set_target.

Fixes the following warnings:

In file included from include/linux/clk.h:16:0,
                 from drivers/cpufreq/cpufreq-krait.c:13:
drivers/cpufreq/cpufreq-krait.c: In function 'krait_cpufreq_probe':
include/linux/kernel.h:714:24: warning: 'freq' may be used uninitialized in this function [-Wmaybe-uninitialized]
  _max1 > _max2 ? _max1 : _max2; })
                        ^
drivers/cpufreq/cpufreq-krait.c:217:25: note: 'freq' was declared here
  unsigned long freq_Hz, freq, max_cpu_freq;
                         ^
In file included from include/linux/clk.h:16:0,
                 from drivers/cpufreq/cpufreq-krait.c:13:
include/linux/kernel.h:714:24: warning: 'max_cpu_freq' may be used uninitialized in this function [-Wmaybe-uninitialized]
  _max1 > _max2 ? _max1 : _max2; })
                        ^
drivers/cpufreq/cpufreq-krait.c:217:31: note: 'max_cpu_freq' was declared here
  unsigned long freq_Hz, freq, max_cpu_freq;

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46839
2015-09-10 10:09:42 +00:00
Jonas Gorski
bebff6364d ipq806x: modules: fix typo in usb-dwc3-qcom dependencies
The phy driver has its qcom-dwc3 order switched in contrast to the usb
controller driver.

Signed-off-by: Kaspar Schleiser <kaspar@schleiser.de>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46838
2015-09-10 10:09:36 +00:00
Jonas Gorski
a752ff1f8e ipq806x: fix R7500 kernel generation
Obviously the dummy rootfs must be after the kernel (uImage), not
included in it.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46837
2015-09-10 10:09:26 +00:00
Jonas Gorski
8b4df1efd5 ipq806x: add support for Netgear Nighthawk X4 R7500
Add support for the Netgear Nighthawk X4 R7500 and build
appropariate sysupgrade and factory images.

Known issues:
 * 5 GHz wifi not working - there is no quantenna driver
 * One of the USB ports is not working

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46796
2015-09-04 14:46:06 +00:00
Jonas Gorski
6ec4c4b6b9 ipq806x: enable ide led trigger
To use gpio leds as ide leds, we need to enable the trigger to be
included in the kernel.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46795
2015-09-04 14:45:49 +00:00
Jonas Gorski
05e4d736d1 ipq806x: add support for retrieving macs from mtd
Add support for mtd-mac-address for stmac.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46793
2015-09-04 14:45:40 +00:00
Jonas Gorski
89815d4645 ipq806x: build images and add sysupgrade support for AP148
Add full ubi and sysupgrade images for AP148 and add sysupgrade support
for ipq806x to allow updating the current installation.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46789
2015-09-04 14:45:00 +00:00
Jonas Gorski
e3f6876623 ipq806x: clear IMAGES for devices
Ensure that IMAGE-less devices won't keep the IMAGES of any previous
devices.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46788
2015-09-04 14:44:51 +00:00
Jonas Gorski
7a962fb55a ipq806x: wrap legacy image in uImage
Wrap the zImage in a uImage header so we can easily boot it from legacy
u-boots.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46787
2015-09-04 14:44:48 +00:00
Jonas Gorski
5686d67d1c ipq806x: rename "rootfs" to "ubi" on nand
OpenWrt expects the ubi paritition to be named "ubi", not "rootfs".

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46786
2015-09-04 14:44:44 +00:00
Jonas Gorski
9f44a347ea ipq806x: enable smem-parser for nand on AP148
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46785
2015-09-04 14:44:36 +00:00
Jonas Gorski
556d483a6f ipq806x: enable ubiblock support
To allow squashfs on ubi, enable ubiblock support in the kernel.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46782
2015-09-04 14:44:04 +00:00
John Crispin
b0b59a8e75 ipq806x: switch AP148 to using SMEM based MTD parser
*Enable SMEM MTD parser and its dependencies (SMEM & HW spinlocks) in
 the kernel config
*Replaces the MTD layout in DT by the dynamic layout provided by the
 SMEM parser for AP148

Using the OF based parser is still possible on platforms which have a
fixed MTD partition layout.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46658
2015-08-17 06:18:15 +00:00
John Crispin
0e33ae8e5d ipq806x: add QCOM SMEM based MTD parser
This patch adds a new parser which uses the SMEM available on IPQ and
some other QCOM platforms to map the MTD partitions.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46657
2015-08-17 06:18:04 +00:00
John Crispin
6529d23267 ipq806x: add SMEM support
2 patches are cherry-picked from the following LKML thread:
*https://lkml.org/lkml/2015/4/11/208

The last patch (036-soc-qcom-add-smem-to-IPQ806x-platforms.patch) is
adding the corresponding DT nodes required for IPQ806x.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46656
2015-08-17 06:17:58 +00:00
John Crispin
6b775f4517 ipq806x: add hwspinlock support
This change cherry-picks the following 3 changes from linux-next:
*fb7737 hwspinlock/core: add device tree support
*19a0f6 hwspinlock: qcom: Add support for Qualcomm HW Mutex block
*bd5717 hwspinlock: qcom: Correct msb in regmap_field

We're also adding a patch to add the hardware spinlock device nodes on
IPQ806x platforms (033-soc-qcom-Add-sfbp-device-to-IPQ806x-dts.patch).

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46655
2015-08-17 06:17:47 +00:00
Jonas Gorski
c7d8377931 ipq806x: switch to new image build system
Switch ipq806x to the new image build system. Image files might change
slightly their names, but the generated files should not change.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46602
2015-08-14 15:10:54 +00:00
Jonas Gorski
1c56854639 ipq806x: disable dma for spi on linux 4.1 as well
Linux 4.1 is also affected from the dma issue, so remove the dma
proprties there as well.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46599
2015-08-14 15:10:11 +00:00
Felix Fietkau
6cc5919e8a ipq806x: disable DMA on the SPI flash
Previous patch 6f2905eeb6ce5ddec8d12d677e1f377a940b537b enabled ADM in
the kernel, which causes a kernel panic when accessing the SPI flash.

As a workaround, We'll disable DMA for the flash for now. It was not
enabled previously anyway so we'll just leave it as is.

Reported-by: Jonas Gorski <jogo@openwrt.org>
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46587
2015-08-13 19:02:16 +00:00
Felix Fietkau
3e52c8c357 ipq806x: enable NAND flash support in the kernel
Previous patch set backported the recently posted NAND flash driver to
3.18 and 4.1 kernel. This patch now enables it in the kernel config.

There is no change to the partition layout and init yet. But the NAND
flash can be seen in the mtd list on an AP148:

root@OpenWrt:/# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 10000000 00020000 "qcom-nandc"
...

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46569
2015-08-07 08:36:36 +00:00
Felix Fietkau
d523866eb3 ipq806x: add NAND flash controller support
These patches add support for ipq806x NAND flash controller. Most of
these are cherry-picked & backported from LKML:
*https://lkml.org/lkml/2015/8/3/16

This patch just modifies the kernel code, but doesn't change the config.
It should be harmless.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46568
2015-08-07 08:36:31 +00:00
Felix Fietkau
c7bf2accc9 ipq806x: Add ADM support
These are cherry-picked & backported from LKML:
*https://lkml.org/lkml/2015/3/17/19

They are enabled on both 3.18 and 4.1 kernel. Patches 150 to 154 are
applying changes merged since 3.18; they enable mechanisms used by the
ADM driver.

ADM engine is used by the NAND controller, so it is necessary to
bring-up NAND flash support.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46567
2015-08-07 08:36:16 +00:00
Jonas Gorski
caa73eb95c kernel: update 4.1 to 4.1.4
Changelog:
 * https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.4

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
[jogo: fix brcm2708 patches, refresh target patches]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46560
2015-08-05 13:55:14 +00:00
Felix Fietkau
0b15f91ed6 ipq806x: add ethernet (stmmac) support
We forgot to enable the stmmac driver for 4.1 kernel, so ethernet
interfaces don't show-up on this kernel.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46559
2015-08-04 23:10:18 +00:00
Felix Fietkau
04154f3d33 ipq806x: refresh kernel configs
Remove options which have been moved into the generic config ever since.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46558
2015-08-04 23:10:12 +00:00
Felix Fietkau
0f7de49fa3 ipq806x: fix freeze in PCIe code when booting with an old u-boot
Old bootloader (same ones which have DT disabled) don't perform any PCIe
initialization. The consequence is a freeze during PCIe bring-up on
these old u-boot. Same kernel with a newer bootloaders works fine as
they contain the corresponding PCIe init code.

In this change, we'll add the missing init and make sure the kernel
doesn't rely on some preexisting init to get PCIe to work. That includes
the following changes:
*GPIOs: set function & drive strength
*Clocks: add init code for aux & ref clocks
*PCIe driver: additional init of the hardware controller

Tested 3.18 and 4.1 on an AP148 with bootloader branch 0.0.1

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46557
2015-08-04 23:10:03 +00:00
Felix Fietkau
f7651fdba5 ipq806x: fix pcie pinmux naming in ipq806x dts
PCIe controller nodes are numbers 0/1/2 in the chipset dtsi file, but
the pinmux nodes are numbers 1/2/3. We'll make it consistent by changing
the pinmux numbering to match the controller's one.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46556
2015-08-04 23:09:55 +00:00
Felix Fietkau
c4c986e419 ipq806x: add support for non-dt enabled ap148 bootloader
Certain AP148 platforms (and derivative) use bootloaders which did not
have DT enabled.
In order to support these old platforms, we'll now make the following
modifications:
*explicitely add the memory node in the AP148 DT: this used to be added
 by new u-boot through a run-time patch mechanism. We'll now add it
 explicitely so it works on boots which don't support that feature. New
 boots will have the node twice, the second one will be ignored.
*add the zImage generation next to the FIT image for AP148.

Other platforms using non-DT enabled bootloaders may want to leverage
this zImage code to generate their own firmare as well.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46555
2015-08-04 23:09:43 +00:00
Felix Fietkau
4d1656e813 ipq806x: update bleeding-edge kernel from 4.0 to 4.1
Default kernel doesn't change and stays on 3.18 for now.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 46554
2015-08-04 23:09:38 +00:00
John Crispin
096b3759a9 build: Prevent more gzip timestamps
To improve reproducibility, prevent the inclusion of timestamps
in the gzip header.

Signed-off-by: Reiner Herrmann <reiner@reiner-h.de>

SVN-Revision: 46361
2015-07-14 09:57:45 +00:00
Jonas Gorski
0f5b1a3eca kernel: update 4.0 to 4.0.5
Changelog:
* https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.5

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46063
2015-06-19 11:12:43 +00:00
Jonas Gorski
9a59b350b7 kernel: update 3.18 to 3.18.16
Changelogs:

* https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.15
* https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.16

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 46011
2015-06-17 09:54:55 +00:00
Felix Fietkau
b9ebf29fbd kernel: move a symbol from the ipq806x config to generic to prevent it from being nuked by make kernel_oldconfig
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 45920
2015-06-07 07:32:35 +00:00
John Crispin
f9f093baa3 ipq806x: missing symbol
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 45880
2015-06-03 13:58:30 +00:00
John Crispin
ff324050c3 ipq806x: move stmmac support in the kernel binary
Ethernet GMAC is built-in the SoC, so there is no need to enable it as a
module. We'll just assume we need it. That's what is done for other
platform where this driver is used so it'll make things more consistent.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45871
2015-06-01 20:11:35 +00:00
John Crispin
d2a2eb7e48 ipq806x: replace caf nss-gmac driver by upstream stmmac
This driver has been cherry-picked and backported from the following
LKML thread:
*https://lkml.org/lkml/2015/5/26/744

It also updates the DT accordingly.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45831
2015-05-29 12:26:01 +00:00
John Crispin
72369c2976 ipq806x: enable kernel support for Fixed PHY emulation
Most ipq806x platforms use an ethernet switch, and the new upstream
GMAC driver makes use of the Fixed PHY emulation to force the link
settings despite the lack of PHY.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45830
2015-05-29 12:25:44 +00:00
John Crispin
30bbe0b388 ipq806x: move arm-gic include into pcie patch
This include is necessary starting at the PCIe patch, which has a lower
number. So in order to keep the patches consistent, we'll move the
arm-gic include in the first patch who needs it.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45827
2015-05-29 12:25:15 +00:00
John Crispin
12772b66fe ipq806x: fix imagebuilder
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 45823
2015-05-29 11:28:44 +00:00
John Crispin
71621ca702 ipq806x: add missing symbol
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 45794
2015-05-27 20:05:03 +00:00
John Crispin
b4494d9713 ipq806x: enable cpu idle support in kernel conf
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45731
2015-05-23 15:28:11 +00:00
John Crispin
8e49b4b902 ipq806x: add & enable cpufreq support
This change set enables frequency scaling on ipq806x, which speeds-up
the CPU and allows it to achieve its max frequency.

These patches are cherry-picked & backported from the following location:
*130-132: linux-next
*133-143: LKML - https://lkml.org/lkml/2015/3/21/15
*144: derived from other qcom similar dts
*145: derived from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/chromeos-3.14/drivers/cpufreq/cpufreq-krait.c

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45730
2015-05-23 15:28:02 +00:00
John Crispin
0b24527e4d ipq806x: add power regulators support
Patches are cherry-picked from linux-next. We're also adding the
corresponding config option to the kernel.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45729
2015-05-23 15:27:54 +00:00
John Crispin
f74477de48 ipq806x: disable i2c device on gsbi4
Patch cherry-picked from the following location:
https://chromium-review.googlesource.com/#/c/269931/

Disable the i2c device on gsbi4 and mark gsbi4_h and gsbi4_qup clks as
unused. If they are enabled, clock framework will turn them off at end
of probe. On ipq806x by design gsbi4_qup, gsbi4_h clks and i2c on gsbi4
are meant for RPM usage. So turning them off in kernel is incorrect.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45728
2015-05-23 15:27:45 +00:00
John Crispin
1c6d332d8f ipq806x: refresh kernel patches
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45727
2015-05-23 15:27:28 +00:00
Jonas Gorski
76d079204d kernel: update 3.18 to 3.18.14
Changelogs:

* https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.12
* https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.13
* https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.14

Build tested on brcm63xx and ipq806x, runtested on brcm63xx.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 45711
2015-05-21 19:32:46 +00:00
Felix Fietkau
cfb56b4811 ipq806x: add pcie support to ipq806x based platforms
This change adds PCIe support to IPQ806x based platforms. The driver is
actually cherry-picked from the following LKML thread:
*https://lwn.net/Articles/643086/ (patches 110-111)

We also add here an additional fix to support multiple PCI controllers
on the same platform (patch 112), and to patch the ap148 & dbs149 DTS
files (patch 113).

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45663
2015-05-10 11:47:09 +00:00
Felix Fietkau
3c4bc0cd77 ipq806x: add support for zImage kernel
This change enable zImage+appended dtb support in ipq806x kernel
options. The zImage will now be generated as part of the kernel
binaries. Platforms which do not have DT support enabled in U-boot
can now make use of it by generating zImage files and appending dtb
to it.

It is not used yet but it is done as a stepping stone for early IPQ806x
platforms, which did not include DT support in U-boot.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45662
2015-05-10 11:47:02 +00:00
Felix Fietkau
bdcba36442 ipq806x: fix boot freeze on zImage kernel
ARCH_QCOM is using the ARCH_MULTIPLATFORM option, as now recommended
on most ARM architectures. This automatically calculate ZRELADDR by
masking PHYS_OFFSET with 0xf8000000.

On IPQ806x though, the first ~20MB of RAM is reserved for the hardware.
In newer bootloader, when DT is used, this is not a problem, we just
reserve this memory in the device tree. But if the bootloader doesn't
have DT support, then ATAGS have to be used. In this case, the ARM
decompressor will position the kernel in this low mem, which will not be
in the RAM section mapped by the bootloader, which means the kernel will
freeze in the middle of the boot process trying to map the memory.

As a work around, this patch allows disabling AUTO_ZRELADDR when
ARCH_QCOM is selected. It makes the zImage usage possible on bootloaders
which don't support device-tree, which is the case on certain early
IPQ806x based designs.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45661
2015-05-10 11:46:56 +00:00
John Crispin
0ddebefc74 ipq806x: add db149 support to OpenWrt init scripts
DB149 is a IPQ8064 based platform. This patch adds the init scripts to
detect it, configure the network accordingly, and generate a flashable
image for it.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45537
2015-04-21 07:15:47 +00:00
John Crispin
0fd202f3e5 ipq806x: add db149 dts files
DB149 is an IPQ806x based development platform. This patch adds the dts
files to support it.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45536
2015-04-21 07:15:37 +00:00
John Crispin
be5f3b9016 ipq806x: enable AT803x driver
Certain IPQ806x based platforms are making use of this PHY. So we'll
enable it so it gets detected as such.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45535
2015-04-21 07:15:30 +00:00
John Crispin
6adf864770 ipq806x: automatically select kmod-usb-phy-qcom-dwc3
kmod-usb-phy-qcom-dwc3 is required to get USB working on ipq806x. It was
missed in previous commit so let's enable it automatically.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45345
2015-04-10 08:28:44 +00:00
John Crispin
bf26426fd8 ipq806x: another missing symbol
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 45277
2015-04-05 07:53:32 +00:00
John Crispin
4ad0ad9817 ipq806x: enable usb3 packages in default profile
Default profile already enables usb2 so we'll do the same for usb3 now
that we have support for it.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45262
2015-04-03 19:06:38 +00:00
John Crispin
5d52f4b51d ipq806x: add platform usb support
This change adds DWC3 QCOM USB phys and TCSR drivers. These are
cherry-picked from the following LKML threads:
*dwc3 qcom: https://lkml.org/lkml/2014/9/12/599
*tcsr: https://lkml.org/lkml/2015/2/9/579

We're also adding an additional patch to add the corresponding dev nodes
in the IPQ806x and AP148 dts files.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45261
2015-04-03 19:06:30 +00:00
John Crispin
114338003a kernel: add package for dwc3 usb driver used on ipq806x
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45260
2015-04-03 19:06:21 +00:00
John Crispin
654312267c ipq806x: enable usb support
This change doesn't make USB functional but it does make it selectable
from a configuration perspective.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45259
2015-04-03 19:06:11 +00:00
John Crispin
e26f0d86e8 ipq806x: another missing symbol
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 45257
2015-04-03 19:05:57 +00:00
Felix Fietkau
4869387480 ipq806x: clean-up kernel config file
Options that used to be in target config have been added to the generic
config file, so remove them.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45255
2015-04-03 18:47:51 +00:00
John Crispin
bb0e931298 ipq806x: add missing symbol
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 45228
2015-04-01 22:57:54 +00:00
John Crispin
bf7eeea7ee ipq806x: clean up kernel conf
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45211
2015-04-01 08:32:29 +00:00
John Crispin
d3a9fc4586 ipq806x: add support for 4.0 kernel
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45210
2015-04-01 08:32:03 +00:00
John Crispin
2d74104b52 ipq806x: move 020-add-ap148-bootargs.patch in patches-3.18
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 45209
2015-04-01 08:31:52 +00:00
John Crispin
7f3013a480 ipq806x: fix AP148 boot from NOR
This patch allows AP148 to boot from NOR flash.

As we're using a FIT image as kernel (which includes kernel bin + DTB)
we enable the MTD_SPLIT_FIT_FW kernel option, which will detect the FIT
image and automatically split the "firmware" partition into 2 MTD parts
(kernel + rootfs).

The rootfs will then be parsed and split between rootfs + rootfs_data,
as usual.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44794
2015-03-15 19:39:41 +00:00
John Crispin
582232cd7b ipq806x: add ap148 bootargs to DT
Only one bootargs is really needed: the tty port. All the other
information will use the OpenWrt mechanisms.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44793
2015-03-15 19:39:33 +00:00
John Crispin
1e3915a6c4 ipq806x: add 2 missing symbols that broke a full build
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 44639
2015-03-10 11:02:52 +00:00
John Crispin
3ddd2b49a9 ipq806x: rename patches in patches-3.18
This will allow ipq806x to support multiple kernel version more easily.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44616
2015-03-06 07:56:58 +00:00
John Crispin
d15ac306fa kernel: move KERNFS to generic config
KERNFS symbol is selected by SYSFS, so place it in generic config.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 44615
2015-03-06 07:56:47 +00:00
John Crispin
f04a268a04 kernel: disable ARCH_NEEDS_CPU_IDLE_COUPLED
Disable ARCH_NEEDS_CPU_IDLE_COUPLED by-default in generic config, since
only one platfrom (omap) needs them.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 44614
2015-03-06 07:56:34 +00:00
John Crispin
6617845711 kernel: move MTD_SPLIT_SUPPORT to generic config
CONFIG_MTD_SPLIT_SUPPORT symbol default value is 'y' and many platform
specific configs explicitly enables it, while no one platform disables
this symbol. So place it in generic config and remove from platform
specific configs.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>

SVN-Revision: 44612
2015-03-06 07:56:08 +00:00
John Crispin
7c24d8627f ipq806x: add ahci to default packages
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 44525
2015-02-24 12:00:22 +00:00
John Crispin
458c37fb14 ipq806x: add default package selection
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 44523
2015-02-24 12:00:09 +00:00
John Crispin
de7100d818 ipq806x: initialize the network on AP148
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44522
2015-02-24 12:00:04 +00:00
John Crispin
9b6adc2d3a ipq806x: enable GMAC support in DTS
This adds the GMAC entries in the ipq806x dtsi file as well as in the
ap148 specific dts file.

This also adds the MDIO change as well.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44520
2015-02-24 11:59:51 +00:00
John Crispin
8eda29f12c ipq806x: enable ar8xxx switch family support
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44519
2015-02-24 11:59:47 +00:00
John Crispin
a45a5f7cf0 ipq806x: fix spi read issues observed with SMP enabled
This change is fixing the issues observed when booting from NOR flash
with SMP enabled.

Error logs below:
building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of
xref (0 dead, 0 orphan) found.
m25p80 spi32766.0: SPI transfer failed: -110
spi_master spi32766: failed to transfer one message from queue
jffs2: Write of 873 bytes at 0x019001e8 failed. returned 0, retlen 792

Patch is cherry-picked from here:
https://www.codeaurora.org/cgit/quic/qsdk/oss/kernel/linux-msm/commit/drivers/spi/spi-qup.c?h=coconut_20140924&id=4faba89e3ffbb1c5f6232651375b9b3212b50f02

More details in the patch file.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44518
2015-02-24 11:59:41 +00:00
John Crispin
6aab00fa44 ipq806x: delete config-3.14 file
ipq806x target has been upgraded to 3.14. There is no need to maintain
this file anymore.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44505
2015-02-22 08:29:18 +00:00
John Crispin
565a6f2a27 ipq806x: fix "reboot" command
The watchdog driver already registers a restart notifier, we just have
to enable it in the config and in the DT to fix the "reboot" command.

This is done by integratin the following patch-set:
https://lkml.org/lkml/2015/2/20/610

I'm copy-pasting the description below:
qcom-wdt is currently assuming the presence of a dedicated node in DT
to gets its configuration. However, on msm architecture, the watchdog is
usually part of the timer block. So this patch-set is changing the driver
and slightly enhancing the timer DT bindings to provide the relevant clocks
and interrupts.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44504
2015-02-22 08:29:14 +00:00
John Crispin
5072954cd0 ipq806x: enable watchdog kernel option
Some bootloaders seem to trigger the watchdog during the boot process,
therefore the lack of watchdog driver trigger a reboot a few seconds
after boot. So we'll enable it here to avoid it.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44503
2015-02-22 08:29:07 +00:00
John Crispin
88ddb37461 ipq806x: update target to v3.18
Patches in the ipq806x/patches folder were out of tree in v3.14. The
newest patch at the time was from June, so we can safely assume that
either the patches have been merged, or they have been rejected for
a good reason. If patches are seen missing, we'll cherry-pick them
on a per-needed basis.

This new kernel have been tested on AP148, which seems to works fine.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 44386
2015-02-11 10:09:23 +00:00
Jo-Philipp Wich
d70a9343e3 ipq806x: declare missing config symbols
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 44144
2015-01-25 20:52:50 +00:00
Hauke Mehrtens
f22aeccdd2 ipq806x: refresh patches
This makes the patchs apply again.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 43792
2014-12-28 19:31:40 +00:00
Felix Fietkau
c288d2d6d9 kernel: makefiles: make use of new var KERNEL_PATCHVER
replace all occurences of LINUX_VERSION with the cleaner
approach. future kernel upgrades must mostly touch only
one file. the only platform left is netlogic, because it
uses a intermediate kernel 3.14.16

Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>

SVN-Revision: 43047
2014-10-24 19:34:02 +00:00
Felix Fietkau
f35da063bc targets: remove useless quotes around KERNELNAME
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 42780
2014-10-05 20:17:19 +00:00
Luka Perkov
02629d8f87 kernel: update 3.14 to 3.14.18
Targets were build tested and patches are refreshed.

Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 42463
2014-09-10 21:40:19 +00:00
John Crispin
f11bd56f31 ipx806x: bump to 3.14.16
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 42336
2014-08-30 09:59:30 +00:00
John Crispin
4d96ccd87a target: set myself as maintainer
Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 42335
2014-08-30 09:59:18 +00:00
John Crispin
3c1f6e358d ipq806x: Add support for IPQ806x chip family
Patches are generated using the "format-patch" command from the
following location:
*https://www.codeaurora.org/cgit/quic/kernel/galak-msm/log/?h=apq_ipq_base
*rev=0771849495b4128cac2faf7d49c85c729fc48b20
Patches numbered 76/77/102/103 have already been integrated in 3.14.12,
so they're not in this list.

All these patches are either integrated are pending integration into
kernel.org, therefore these patches should go away once the kernel
gets upgraded to 3.16.

Support is currently limited to AP148 board but can be extended to other
platforms in the future.

These changes do not cover ethernet connectivity.

Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>

SVN-Revision: 42334
2014-08-30 09:32:58 +00:00