Commit Graph

2252 Commits

Author SHA1 Message Date
Rafał Miłecki
c170848254 kernel: backport support for BCM54810 PHY
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-28 19:12:42 +01:00
Rafał Miłecki
2ee7bc0a5e kernel: backport support for BCM54612E PHY
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-28 17:34:17 +01:00
Felix Fietkau
0b2991a8ed kernel: make ledtrig-netdev use a work queue for updates
This fixes hangs in igb that happen if the update call interrupts an
already existing dev_get_stats call. In that case the calling CPU
deadlocks because it's trying to acquire the same spinlock recursively.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-16 09:52:59 +01:00
Rafał Miłecki
ee6cce6b31 kernel: fix bcma serial console regression
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-15 23:10:54 +01:00
Felix Fietkau
1708644f19 kernel: backport MIPS changes introducing a separate IRQ stack
Prevents crashes when IRQs arrive when the current kernel stack context
already contains deeply nested function calls, e.g. when stacking lots
of network devices on top of each other

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-15 18:25:54 +01:00
Imre Kaloz
f24ffb901e mvsw61xx: add support for MV88E6352
MV88E6352 is used on Linksys WRT3200ACM

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
2017-01-13 17:12:40 +01:00
Felix Fietkau
b7bee2858b kernel: remove linux 4.1 support
The only target still referencing it is omap24xx, and it is marked as
broken.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-11 13:09:33 +01:00
Felix Fietkau
80dbaa4ef3 kernel: backport a MIPS SMP icache flush fix
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-11 10:05:08 +01:00
Rafał Miłecki
7c8a36340c kernel: update bcm47xxpart failsafe partition patches
V2 using helper function was sent for upstream kernel

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-11 09:54:47 +01:00
Jo-Philipp Wich
7480d3309c kernel: add missing config symbols
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-01-10 22:02:40 +01:00
Felix Fietkau
e9b49a41e2 kernel: add missing config symbol
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-10 17:49:47 +01:00
Felix Fietkau
c9dd40f628 kernel: remove gpiommc patches / driver
This code was marked as incompatible to Linux 4.4 well over a year ago
and nobody cared, and now it's breaking builds.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-10 15:45:33 +01:00
Rafał Miłecki
1a5cb4ac1b kernel: add pending bcm47xxpart support for failsafe TRX partition
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-10 15:37:22 +01:00
Rafał Miłecki
ef9208c51e kernel: update spi-nor.h include fix with upstream accepted version
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-10 15:37:22 +01:00
Rafał Miłecki
b4d2575add kernel: rename bcm47xxpart patches to fit more of them
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2017-01-10 15:37:21 +01:00
Felix Fietkau
10f7a8d648 kernel: add missing config symbol
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-10 13:44:25 +01:00
Felix Fietkau
43a528eb96 kernel: add missing config symbol
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-10 12:37:13 +01:00
Felix Fietkau
acd0c8c178 kernel: move the gateworks system controller driver to an out-of-tree package
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-10 12:10:20 +01:00
Felix Fietkau
018d80007e kernel: remove ubifs xz decompression support
It has been unused, and less useful than squashfs for cases where flash
space usage matters.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-09 14:07:06 +01:00
Hauke Mehrtens
88ca6390ea kernel: bump to 4.4.40
Refresh patches on all 4.4 supported platforms.
Compile & run tested: lantiq/xrx200

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-01-06 19:38:55 +01:00
Vladimir Zahradnik
f277f45bd6 yaffs: fix to detect MLC/TLC NAND flash
Signed-off-by: Vladimir Zahradnik <vladimir.zahradnik@gmail.com>
2017-01-06 15:34:13 +01:00
Felix Fietkau
5f9e367127 kernel: spi: allow setting chipselect gpio to sleep
Fixes issues on some ar71xx MikroTik RouterBoard devices

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-05 11:09:13 +01:00
Victor Shyba
e2f866d63a generic: mtd: add lock/unlock support for f25l32pa
This chip has write protection enabled on power-up, so this flag is
necessary to support write operations.

Signed-off-by: Victor Shyba <victor1984@riseup.net>
2017-01-03 20:09:41 +01:00
Victor Shyba
d6c831e0e5 generic: mtd: backport SPI_NOR_HAS_LOCK
This flag was added to 4.9 with upstream commit
76a4707de5e18dc32d9cb4e990686140c5664a15.

Signed-off-by: Victor Shyba <victor1984@riseup.net>
[refresh and adjust platform patches, fix commit message]
Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-03 19:58:00 +01:00
Mathias Kresin
b35a41c139 generic: backport dwc2 kernel panic fix
In case the soft reset in dwc2_core_reset() timeouts, the
hsotg->core_params are freed albeit it is owned by the core. This
results into a kernel panic as shown in FS#351.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-01-02 19:16:54 +01:00
Jo-Philipp Wich
29cc927ef5 generic: ar8216: fix invalid bounds check imported from ChromeOS (FS#347)
The priv->vlan_id member is of size AR8X16_MAX_VLANS, not AR8X16_MAX_PORTS,
so check for the proper maximum value in order to avoid capping valid VLAN IDs
to 7 (AR8X16_MAX_PORTS - 1).

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-23 19:24:14 +01:00
John Crispin
87522a7bf2 linux: drop deprected hifn795x patch
this was needed years ago by the OCF

Signed-off-by: John Crispin <john@phrozen.org>
2016-12-20 13:43:30 +01:00
John Crispin
f7319244cb linux: drop HSO support patch
This patch is part of a series adding support for 0x9200 and 0x9300. The
prior was merged into the upstream kernel while the latter was not due
to lack of testers. Drop the patch as it is untested and most likely
unused.

Signed-off-by: John Crispin <john@phrozen.org>
2016-12-20 09:57:55 +01:00
Giuseppe Lippolis
96a7ee3c80 ramips: adding registration for si3210
The si3210 is a SLIC device providing a complete analog telephone
interface and therefore frequently used in soho router.
The si3210 have a native spi interface to be controlled by the CPU
but currently there is no dedicated driver in lede.
Adding a registration for this device in spidev allow to control the
device in user space.
This way of patching is also in line with the rationale of the spidev
driver, see: http://marc.info/?t=148145791900001&r=1&w=2
The si3210 has been also added in the DWR-512 DT to properly describe
the HW.

Signed-off-by: Giuseppe Lippolis <giu.lippolis@gmail.com>
2016-12-20 09:35:37 +01:00
Kevin Darbyshire-Bryant
79abb8f140 kernel: bump to 4.4.39
Bump & refresh patches for all 4.4 targets.

Compile & run tested: ar71xx Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2016-12-20 09:35:36 +01:00
Huan Truong
fd62fa752b ar71xx: Add support for Netgear WNR2000v1
This patch adds supports for the WNR2000v1 board with 4MB flash, and
produces device-specific factory, rootfs, and sysupgrade files for the
WNR2000v1. This board is errorneously claimed as supported on the OpenWRT
wiki as AP81, but AP81 image would not work because of APT81 image
requiring having 8MB of flash, while WNR2000v1 has only 4MB.

The image requires the u-boot bootloader to be modified to fuhry's
bootloader first.

Short specification:

- CPU: Atheros AR9132
- 4x 10/100 Mbps Ethernet, 1x WAN 10/100 Mbps
- 4 MB of Flash
- 32 MB of RAM
- UART header (J1) on board
- 1x button

Factory/Initial flash instructions:

- Set up a TFTP server on your local machine.
- Download the uImage for ar71xx-generic and the rootfs image for
  ar71xx-generic-wnr2000 and save in the tftp server root.
- Gain serial access to the router via the UART port (telnetenable over
  the network only won't work!).
- Upgrade the u-boot bootloader to fuhry's version by running the
  script: http://fuhry.com/b/wnr2000/install-repart.sh
- When the router restarts, interrupt u-boot and gain access to u-boot command line.
- Repartititon the board and flash initial uImage and rootfs as follow.

Commands to type in u-boot:

	# tells u-boot that we have a tftp server on 192.168.1.10
	setenv serverip 192.168.1.10

	# tells u-boot that the router should take the address 192.168.1.1
	setenv ipaddr 192.168.1.1

	# erase the region from 0x050000-0x3f0000
	erase 0xbf050000 +0x3A0000

	# loads sqfs.bin on TFTP server, and put it to memory address 0x81000000
	tftpboot 0x81000000 sqfs.bin
	# it will tell you the length of sqfs.bin in hex, let's say ZZZZZZ
	# copy bit by bit 0xZZZZZZ bytes from offset 0x050000
	cp.b 0x81000000 0xbf050000 0xZZZZZZ

	# same to the uImage.bin, write it right next to sqfs.bin
	# again, 0xYYYYYY is the length that tftpboot reports
	tftpboot 0x81000000 uImage.bin
	cp.b 0x81000000 0xbf2a0000 0xYYYYYY

	# We need to tell the kernel what board it is booting into, and where to find the partitions
	setenv bootargs "board=WNR2000 console=ttyS0,115200 mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,3712k(firmware),64k(art)ro rootfstype=squashfs,jffs2 noinitrd"

	# Tell u-boot where to find the uImage
	setenv bootcmd "bootm 0xbf2a0000"

	# Tell u-boot to save parameters to the u-boot-env partitions
	saveenv

	# Reset the board
	reset

Tested on:

- WNR2000v1 board.
- Initial flash works.

Known bugs:

- I don't know why factory image doesn't work on initial flash on stock
  firmware in u-boot recovery mode while it should.
- Sysupgrade does not yet work, if you do -f it will mess up your
  installation (requiring a reinstall of sqfs and uImage).

Signed-off-by: Huan Truong <htruong@tnhh.net>
2016-12-14 10:37:01 +01:00
Jo-Philipp Wich
e2f8d200f5 netfilter: drop proprietary xt_id match
The xt_id match was used by the firewall3 package to track its own rules but
the approach has been changed to use xt_comment instead now, so we can drop
this nonstandard extension.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2016-12-14 01:05:06 +01:00
Rafał Miłecki
d6ef917bdb kernel: backport ubifs support for dirty_writeback_interval
These patches were queued for 4.10. For possible use cases see added:
[PATCH] ubifs: Use dirty_writeback_interval value for wbuf timer

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2016-12-13 09:40:46 +01:00
Kevin Darbyshire-Bryant
f5b833b8fe kernel: bump to 4.4.38
Bump & refresh patches for all 4.4 supported targets.

Compile & run tested: ar71xx - Archer C7 v2

Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2016-12-13 08:28:28 +01:00
Rafał Miłecki
0422f8bcec kernel: backport LED patch which will allow better DT integration
It's not used by any driver yet, it may just simplify development and
testing new features.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2016-12-06 19:50:20 +01:00
Rafał Miłecki
4b3f9bc28d kernel: fix potential crash in usbport LED trigger driver
This backports upstream accepted fix.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
2016-12-06 19:50:20 +01:00
Álvaro Fernández Rojas
758ef7aa99 kernel: bump to 4.4.36
Refresh patches on all 4.4 supported platforms.
Compile & run tested: brcm2708/bcm2710 - Raspberry Pi 3

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-12-04 12:31:30 +01:00
Florian Fainelli
7e38cd7a8d kernel: Add missing kernel config symbol
Add CONFIG_DW_DMAC_PCI

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
2016-12-04 11:41:52 +01:00
Felix Fietkau
832fb99da2 kernel: Add check to of_scan_flat_dt() before accessing initial_boot_params
Fixes a bug that affects rt288x

Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-04 11:41:50 +01:00
Felix Fietkau
b3c5db79eb kernel: Fix alloc_node_mem_map with ARCH_PFN_OFFSET
Fixes a bug that affects rt288x

Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-04 11:41:50 +01:00
Felix Fietkau
feb25f1a5b kernel: add support for the AT8032 PHY
This PHY is used on the Ubiquiti Networks NanoStation Loco XW

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-04 11:41:50 +01:00
Felix Fietkau
06a21e12ee kernel: backport some upstream at803x fixes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-04 11:41:49 +01:00
Pavel Kubelun
94e4ee5395 net: ar8327: modify some configuration of switch
Imported from https://source.codeaurora.org/quic/qsdk/system/openwrt/commit/?h=korg/linux-3.4.y/release/arugula_bb_cs&id=2be4f8a8b205ae1a37db44839864451ebe893e6e
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>

Enable flow control of LAN and WAN ports to
get better performance.
Setup pvid as 0 for all ports during initialisation
to avoid confusion during system or switch INIT.
Disable PORT MAC before config MAC to avoid it work abnormal.
This change is for IR-054144, IR-057315.

Change-Id: I345f3dffa59ad3f97150e09692723da12a7b1067
Signed-off-by: Zou Shunxiang <shunxian@codeaurora.org>
Signed-off-by: xiaofeis <xiaofeis@codeaurora.org>
2016-12-01 15:47:43 +01:00
Pavel Kubelun
5a69f59602 net: ar8216: address security vulnerabilities in swconfig & ar8216
Imported from e1aaf7ec00%5E%21/#F0
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>

CHROMIUM: net: ar8216: address security vulnerabilities in swconfig & ar8216

This patch does the following changes:
*address the security vulnerabilities in both swconfig framework and in
 ar8216 driver (many bound check additions, and turned swconfig structure
 signed element into unsigned when applicable)
*address a couple of whitespaces and indendation issues

BUG=chrome-os-partner:33096
TEST=none

Change-Id: I94ea78fcce8c1932cc584d1508c6e3b5dfb93ce9
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
Reviewed-on: https://chromium-review.googlesource.com/236490
Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
Commit-Queue: Toshi Kikuchi <toshik@chromium.org>
Tested-by: Toshi Kikuchi <toshik@chromium.org>
2016-12-01 15:47:43 +01:00
Pavel Kubelun
a3454d1929 net: ar8216: prevent device duplication in ar8xxx_dev_list
Import from fd7b89dd46%5E%21/#F0
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>

CHROMIUM: drivers: ar8216: prevent device duplication in ar8xxx_dev_list

If probe is called twice, once for PHY0 and a second time for PHY4,
the same switch device will be added twice to ar8xxx_dev_list, while
supposedly this list should have one element per hardware switch present
in the system.

While no negative impact have been observed, it does happen if a
platform instanciates these two PHYs from device-tree, as an example.

Change-Id: Iddcbdf7d4adacb0af01975b73f8e56b4582e894e
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
Reviewed-on: https://chromium-review.googlesource.com/234790
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
Tested-by: Toshi Kikuchi <toshik@chromium.org>
2016-12-01 15:47:43 +01:00
Pavel Kubelun
eb049d3777 net: ar8216: hold ar8xxx_dev_list_lock during use_count--
Import from c3fd96a7b8%5E%21/#F0
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>

CHROMIUM: drivers: ar8216: hold ar8xxx_dev_list_lock during use_count--

It is possible for the remove() callback to run twice in parallel, which
could result into --use_count returning only 1 in both cases and the
rest of the unregistration path to never be reached.

This case has never been observed in practice, but we will fix
preventively to make the code more robust.

BUG=chrome-os-partner:33096
TEST=none

Change-Id: If09abe27fdb2037f514f8674418bafaab3cbdef6
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
Reviewed-on: https://chromium-review.googlesource.com/232870
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
Tested-by: Toshi Kikuchi <toshik@chromium.org>
2016-12-01 15:47:43 +01:00
Pavel Kubelun
65b20d8b64 net: ar8327: replace sprintf() by scnprintf()
Import from fd0c41c7b9%5E%21/#F0
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>

CHROMIUM: drivers: ar8216: replace sprintf() by scnprintf()

BUG=chrome-os-partner:33096
TEST=none

Change-Id: Ib82035c9f2769a86d3e90f9573a09e5700ff5676
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
Reviewed-on: https://chromium-review.googlesource.com/232829
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Tested-by: Toshi Kikuchi <toshik@chromium.org>
Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
2016-12-01 15:47:43 +01:00
Pavel Kubelun
9aa734f8f5 net: ar8327: remove unnecessary spinlocks
Import from 541c15f8dd%5E%21/#F0
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>

CHROMIUM: drivers: ar8216: remove unnecessary spinlocks

BUG=chrome-os-partner:33096
TEST=none

Change-Id: Ia1b51258504501863fd3298717cc923a1baf34ca
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
Reviewed-on: https://chromium-review.googlesource.com/232828
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
Tested-by: Toshi Kikuchi <toshik@chromium.org>
2016-12-01 15:47:43 +01:00
Pavel Kubelun
7de8d5322e net: ar8216: sync mib_work cancellation
Import from c05af20272
Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>

CHROMIUM: drivers: ar8216: sync mib_work cancellation

ar8xxx_mib_stop() is called from ar8xxx_phy_remove(), so we want to make
sure the work doesn't run after priv is freed / the device ceases to
exist.

BUG=chrome-os-partner:33096
TEST=none

Change-Id: Iafb44ce93a87433adc4576e5fea5fda58d1f43a9
Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
Reviewed-on: https://chromium-review.googlesource.com/232827
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
Reviewed-by: Grant Grundler <grundler@chromium.org>
Tested-by: Toshi Kikuchi <toshik@chromium.org>
2016-12-01 15:47:43 +01:00
Felix Fietkau
b2443838e6 kernel: add missing config symbols
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-12-01 15:05:03 +01:00