Commit graph

15169 commits

Author SHA1 Message Date
Felix Fietkau
fcfc7eb2ae kernel: fix uninitialized variable in bridge multicast-to-unicast patch on 4.4
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48327
2016-01-18 20:16:37 +00:00
Felix Fietkau
e620f4d6f8 arc: clean-up and move CFLAGS to include/target.mk
Most of currently mentioned CFLAGS in arc770/Makefile
are not really required because:
 [1] "-Os -pipe" are set by default in include/target.mk
 [2] "-fno-caller-saves" gets enabled via menuconfig
     as an extra compiler flag for developers

So the only one that makes sense is "-matomic" and
that one is really essential. Without it many software
packges won't build complainin on unresolved atomic ops.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Felix Fietkau <nbd@openwrt.org>
Cc: Jo-Philipp Wich <jow@openwrt.org>
Cc: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 48326
2016-01-18 17:52:03 +00:00
Felix Fietkau
018e84f58d arc770/axs101: fix console output
While bumping kernel version kernel command line was
unintentionally modified in attempt to make it closer
to upstream version.

In case of AXS that has not only serial port but HDMI/USB
both capable of being debug console we have 2 entries in
kernel's command line:
------------------->8-----------------
console=tty0 console=ttyS3,115200n8
------------------->8-----------------

But as it turned out OpenWRT uses procd as init instead of
Busybox. And in its turn procd gets the first "console"
entry from kernel command line (/proc/cmdline) and uses it
if default inittab is used:
------------------->8-----------------
...
::askconsole:/bin/ash --login
------------------->8-----------------

So what we got is non-functional serial console.
That change removes "console=tty0" which brings serial
console back to life.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Felix Fietkau <nbd@openwrt.org>
Cc: Jo-Philipp Wich <jow@openwrt.org>
Cc: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 48325
2016-01-18 17:51:54 +00:00
Felix Fietkau
85ba5805e4 kernel: fix a build regression in the ld-version script fix
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48324
2016-01-18 17:40:40 +00:00
Felix Fietkau
e7846156f2 lantiq: drop linux 4.1 support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48323
2016-01-18 15:54:23 +00:00
Felix Fietkau
9b4b2b4e17 lantiq: switch to linux 4.4
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48322
2016-01-18 15:54:18 +00:00
Felix Fietkau
6cec31da3c lantiq: fix VDSL device detection with Linux 4.4
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48319
2016-01-18 15:35:17 +00:00
Felix Fietkau
3c3fb1dfc0 ramips: delete the broken sound driver
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48318
2016-01-18 13:40:15 +00:00
Felix Fietkau
63aa7023d8 ramips: mark kmod-sound-mtk as broken, it does not compile properly
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48317
2016-01-18 13:22:38 +00:00
Felix Fietkau
fa61e3fbba ramips: fix kernel config handling for mt7620/mt7628 sound module
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48316
2016-01-18 13:22:34 +00:00
Felix Fietkau
edb3c1780c brcm2708: fix RPi model B plus support
Not sure if B+ is used or not (mine has B Plus) so leave both

Signed-off-by: Roman Yeryomin <roman@advem.lv>

SVN-Revision: 48311
2016-01-18 12:42:03 +00:00
Felix Fietkau
a168e972fb kernel: fix MIPS linux-4.4 build on non-GNU systems
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48310
2016-01-18 11:40:49 +00:00
Felix Fietkau
f577cb25c0 lantiq: Add support for linux 4.4
The following patches were dropped because they are already applied
upstream:
- 0038-MIPS-lantiq-fpi-on-ar9.patch
- 0039-MIPS-lantiq-initialize-usb-on-boot.patch
- 0042-USB-DWC2-big-endian-support.patch
- 0043-gpio-stp-xway-fix-phy-mask.patch

All other patches were simply refreshed, except the following:
- 0001-MIPS-lantiq-add-pcie-driver.patch
  Changes to arch/mips/lantiq/xway/sysctrl.c (these changes disabled
  some PMU gates for the vrx200 / VR9 SoCs) were removed since the
  upstream kernel disables unused PMU gates automatically (since
  95135bfa7ead1becc2879230f72583dde2b71a0c
  "MIPS: Lantiq: Deactivate most of the devices by default").
- 0025-NET-MIPS-lantiq-adds-xrx200-net.patch
  Since OpenWrt commit 55ba20afcc2fe785146316e5be2c2473cb329885 drivers
  should use of_get_mac_address(). of_get_mac_address_mtd is not
  available for drivers anymore since it's called automatically within
  of_get_mac_address().
- 0028-NET-lantiq-various-etop-fixes.patch
  Same changes as in 0025-NET-MIPS-lantiq-adds-xrx200-net.patch

While refreshing the kernel configuration SPI support had to be moved to
config-4.4 because otherwise M25P80 was disabled.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48307
2016-01-18 11:40:19 +00:00
Jonas Gorski
a78bb9590f brcm63xx: add support for Huawei HG622
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 48305
2016-01-18 10:47:23 +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
Jonas Gorski
74aca7d913 brcm63xx: fix platform gpio lookups for gpios < 32
Overwriting static strings is never a good idea, especially expecting
identical strings to be stored in different memory locations.

This caused the lookups to always return the second chip's name. Fix
this by just initializing the lookup with the right values, so we
don't need to modify the strings at all.

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

SVN-Revision: 48303
2016-01-18 10:46:50 +00:00
Jonas Gorski
2b3b4c95f1 b53: update header register difinitions
BCM531x5 has two pontential cpu ports, and header mode can be enabled
independently on both.

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

SVN-Revision: 48302
2016-01-18 10:46:47 +00:00
Luka Perkov
cdfeab0931 imx6: drop 4.1 support
Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 48300
2016-01-18 06:43:50 +00:00
Luka Perkov
c4de2dfd2d imx6: drop 4.3 support
Signed-off-by: Luka Perkov <luka@openwrt.org>

SVN-Revision: 48299
2016-01-18 06:43:48 +00:00
Luka Perkov
85bdde7cf2 imx6: move to 4.4 kernel
Signed-off-by: Pushpal Sidhu <psidhu@gateworks.com>

SVN-Revision: 48298
2016-01-18 06:40:16 +00:00
Felix Fietkau
93a2b8a6c4 mpc85xx: update to linux 4.4, remove unnecessary patches
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48297
2016-01-17 21:05:19 +00:00
Felix Fietkau
d64465556c lantiq: Remove incorrect PCIe compatible strings
Re-defining the compatible property is not required since the correct
value is inherited from vr9.dtsi.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48295
2016-01-17 19:56:16 +00:00
Felix Fietkau
720f599c9a lantiq: Remove the old SPI driver patch
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48294
2016-01-17 19:56:10 +00:00
Felix Fietkau
04ad02d132 lantiq: Switch to the new SPI driver
Compared to the "old" driver:
- Each device must assign a pinctrl setting to the SPI node to allow the
  new SPI driver to configure the SPI pins.
  While here we are also using separate input and output settings so we
  are independent of whether the bootloader configures the pins correctly.
- We use the new "compatible" strings to make the driver choose the
  correct number of chip-selects for each SoC.
- The new driver starts counting the chip-selects at 1 (instead of 0, like
  the old one did). Thus we have to adjust the devices accordingly.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48293
2016-01-17 19:56:03 +00:00
Felix Fietkau
5985c56ec6 lantiq: Add a rewritten version of the SPI driver
The new driver provides a few improvements over the old one:
- Separate compatible strings per SoC type (this allows removing some
  hardcoded of_device_is_compatible() checks)
- It does not rely upon spi-bitbang anymore
- chip-selects are numbered as in the datasheet (= starting at 1 instead
  of 0)

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48292
2016-01-17 19:55:55 +00:00
Felix Fietkau
af857db692 lantiq: Disable CONFIG_SPI_GPIO
All devices are now using the HW SPI driver, so this is not necessary
anymore.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48291
2016-01-17 19:55:48 +00:00
Felix Fietkau
d5c5928d6b lantiq: Enable the hardware SPI driver on the DGN3500/DGN3500B
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48290
2016-01-17 19:55:42 +00:00
Felix Fietkau
d8b74320bd lantiq: Enable SPI for the EASY80920 board again
Also switch to the SPI definition provided by vr9.dtsi

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48289
2016-01-17 19:55:37 +00:00
Felix Fietkau
be8f9ad6f4 lantiq: Switch FRITZ3370 from spi-gpio to the hardware SPI driver
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48288
2016-01-17 19:55:31 +00:00
Felix Fietkau
9d558fb48e lantiq: Re-use the SPI node from vr9.dtsi in TDW89X0.dtsi
This removes the duplicate SPI register definition.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48287
2016-01-17 19:55:25 +00:00
Felix Fietkau
a5c177943b lantiq: Add the SPI node to ar9.dtsi and vr9.dtsi
This allows devices to use SPI without having to re-define (and thus
duplicating) the whole SPI node.
By default SPI is disabled (as before) because only few devices need it.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48286
2016-01-17 19:55:17 +00:00
Felix Fietkau
3f8a426056 lantiq: Configure the PCIe reset GPIO using OF
After the latest pinctrl backports there are only 50 (instead of 56 as
before) GPIOs/pins exported (thus the first GPIO on VRX200 SoCs is now
462, before it was 456). This means that any hardcoded GPIOs have to be
adjusted.
This broke the PCIe driver (which seems to be the only driver which uses
hardcoded GPIO numbers), it only reports:
	ifx_pcie_wait_phy_link_up timeout
	ifx_pcie_wait_phy_link_up timeout
	ifx_pcie_wait_phy_link_up timeout
	ifx_pcie_wait_phy_link_up timeout
	ifx_pcie_wait_phy_link_up timeout
	pcie_rc_initialize link up failed!!!!!

To prevent more of these issues in the future we remove the hardcoded
PCIe reset GPIO definition and simply pass it via device-tree (like the
PCI driver does).

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48285
2016-01-17 19:55:10 +00:00
Felix Fietkau
1204a1b1e5 lantiq: Use the new pinctrl compatible strings
These were introduced in upstream commit
be14811c03cf "pinctrl/lantiq: introduce new dedicated devicetree
bindings" and finally allow us to use the individual pins within our dts
(for example spi_clk, etc.).
Please note that this changes the number of GPIOs which are available for
some SoCs. VRX200 SoCs for example only have 50 pins, but previously 56
pins were exposed. This means that all places which are using hardcoded
GPIO numbers (which are not passed via device-tree) need to be adjusted
(because the first GPIO number is now 462, instead of 456).

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48284
2016-01-17 19:55:04 +00:00
Felix Fietkau
ee03fc430d lantiq: Backport upstream pinctrl-xway patches from 4.5
Upstream commit be14811c03cf2 "pinctrl/lantiq: introduce new dedicated
devicetree bindings" allows us to use each pin in the pinmux. This is
useful for example in the "spi" group which contains some pins which
are inputs, and some which are outputs.
These can only be used once the new compatible strings for the pinctrl
node are used.
Additionally 0150-lantiq-pinctrl-xway.patch and the "GPIO PORT3 fix"
(which was part of 0012-pinctrl-lantiq-fix-up-pinmux.patch) were
replaced with their upstream variants which are also in 4.5.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48283
2016-01-17 19:54:59 +00:00
Gabor Juhos
55b0e261a4 ar71xx/lzma-loader: fix O32 ABI conformance
According to the calling convention of the o32 ABI the caller
function must reserve stack space for $a0-$a3 registers in case
the callee needs to save its arguments.

The assembly code of the loader does not reserve stack space for
these registers thus when the 'loader_main' function needs to save
its arguments, those will be stored in the 'workspace' area instead
of the stack.

Because the workspace area is also used by other part of the code, the
saved register values gets overwritten and this often leads to failed
kernel boots.

Fix the code to reserve stack space for the registers to avoid this
error.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 48279
2016-01-17 15:29:03 +00:00
Felix Fietkau
b7aab03486 ar71xx: Use full 128MB flash on Netgear WNDR4300 and WNDR3700v4
Change MTD on WNDR4300 and WNDR3700v4 to fully utilize the 128MB flash.

Credit to @Tuochenlyu on GitHub.

Signed-off-by: Chris Marchesi <chrism@vancluevertech.com>

SVN-Revision: 48276
2016-01-17 11:16:56 +00:00
Felix Fietkau
271a348cda mpc85xx: Add PTP node for TL-WD4900 in device tree
PTP requires at least one timer to be 1PPS so describe it.
For testing, load kernel module gianfar_ptp and use ptp4l
from linuxptp.

Copied from FSL P1010RDB reference design.

Signed-off-by: Wojciech Dubowik <Wojciech.Dubowik@neratec.com>

SVN-Revision: 48275
2016-01-17 11:16:52 +00:00
Felix Fietkau
deb4c31da4 lantiq: Fixed brnImage signature for the VGV7510KW22BRN images
The old signature only worked because brnboot ignores the leading "5" in
the signature. We can see the correct signature when flashing a brnImage
via recovery web-interface, in this case brnboot reports:
	[CGI-Signature Check] buf:[BRNDA6431], sigInFlash:[BRNDA6431]

Thanks to Mathias Kresin for reporting this.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48269
2016-01-17 10:47:10 +00:00
Felix Fietkau
f8d2ec6e9d ar8327: add IGMP Snooping support
This add support for IGMP Snooping on atheros switches (disabled by default),
which avoids flooding the network with multicast data.

Tested on TL-WDR4300: disabling IGMP Snooping results in multicast flooding
on each specific port, enabling it back again prevents each port from
receiving all multicast packets.

Partially based on: http://patchwork.ozlabs.org/patch/418122/

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 48268
2016-01-17 10:42:46 +00:00
Felix Fietkau
4224b52c3a brcm2708: add linux 4.4 support
- random-bcm2708 and spi-bcm2708 have been removed.
- sound-soc-bcm2708-i2s has been upstreamed as sound-soc-bcm2835-i2s.

Let's keep linux 4.1 for a while, since linux 4.4 appears to have some issues
with multicast traffic on RPi ethernet:
https://gist.github.com/Noltari/5b1cfdecce5ed4bc08fd

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 48266
2016-01-17 10:42:23 +00:00
Felix Fietkau
cad399c87b uml: update to linux 4.4
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48265
2016-01-17 10:41:52 +00:00
Felix Fietkau
7c0260117f lantiq: Switch to the generic mtdsplit parser implementations
This removes the arch-specific mtdsplit parsers and enables the generic
implementations for brnImage, EVA and TP-Link instead.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48264
2016-01-17 10:41:46 +00:00
Felix Fietkau
7703e14bc4 kernel: mtdsplit_squashfs: Align with the erase-block size
On most image types the rootfs ends at an erase-block. However, at least
with brnImages this is not the case: while the partitions are aligned
with the erase-block size there is a 12 byte footer at the end of the
partition which must not be touched by any filesystem. This lead to a
rootfs_data partition which was not aligned properly (and thus ended up
being readonly):
	0x000000480000-0x00000085a800 : "rootfs_data" (128 KiB EB)

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48263
2016-01-17 10:41:30 +00:00
Felix Fietkau
651083bbd9 kernel: mtdsplit: add support for EVA images
This allows splitting EVA images (usually found in fritz devices). The
firmware will be split into a kernel and a separate rootfs partition.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48262
2016-01-17 10:41:08 +00:00
Felix Fietkau
bdd2772f1d kernel: mtdsplit: add support for brnImages
This adds brnImage (used with the brnboot bootloader) firmware parsing
support. brnboot verifies the integrity of the firmware stored on the
"Code Image" partitions by looking at the 12 byte footer at the very end
of the partition. This footer contains the checksum of the original
brnImage (kernel + rootfs/squashfs) and must not be touched (by our JFFS2
rootfs_data - otherwise the image will not be bootable anymore).

Big thanks to Mathias Kresin for analyzing the brnImage structure and
finding out the information how to keep images valid even when adding a
nested rootfs_data partition.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

SVN-Revision: 48261
2016-01-17 10:40:51 +00:00
Felix Fietkau
3348279eca kernel: disable bogus DEVTMPFS config overrides
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48260
2016-01-17 10:40:36 +00:00
Felix Fietkau
e0de7275f9 imx6: kernel: Add Micrel PHY used on Apalis SOM
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Cc: Luka Perkov <luka@openwrt.org>

SVN-Revision: 48249
2016-01-15 15:18:23 +00:00
Felix Fietkau
321823ba05 imx6: add 4.4 support
Build and boot tested on the following hardware:
 * GW54xx
 * GW53xx
 * GW52xx
 * GW51xx
 * GW552x
 * GW551x

Signed-off-by: Pushpal Sidhu <psidhu@gateworks.com>

SVN-Revision: 48248
2016-01-15 15:18:18 +00:00
Felix Fietkau
d475624f64 arc770: move arc patches to target/linux/generic
Given those patches are relevant to any ARC platform and even
ISA version it makes perfect sense for patches to exist
in one place instead of being duplicated for each new ARC-based ASIC.

Note this is a prerequisite for upstreaming of ARC HS38 support in
OpenWRT.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Felix Fietkau <nbd@openwrt.org>
Cc: Jo-Philipp Wich <jow@openwrt.org>
Cc: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 48241
2016-01-15 10:49:11 +00:00
Felix Fietkau
4514589182 arc770: bump linux kernel from 4.3 to 4.4
This switch involved:
 [1] Regeneration of config (few options went away)
 [2] Regeneration of patches so they apply cleanly (different offsets)
 [3] Update of .dts files because we now explicitly specify
     memory regions in use as opposed to previously used offset
     from 0x8000_0000

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Felix Fietkau <nbd@openwrt.org>
Cc: Jo-Philipp Wich <jow@openwrt.org>
Cc: Jonas Gorski <jogo@openwrt.org>

SVN-Revision: 48240
2016-01-15 10:49:01 +00:00