Commit Graph

220 Commits

Author SHA1 Message Date
Tim Harvey
79366b8194 cns3xxx: fix GPIO controller interrupt enable
The cns3xxx interrupt controller uses a single register and as such
the 'mask' reg/functions must be used as opposed to the 'enable'/'disable'
reg/functions.

This fixes an issue that occurs if more than one GPIO on a specific controller
(there is GPIOA and GPIOB each having 32 GPIO's) uses interrupts. When one
would get enabled all others would be disabled prior to this patch.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Acked-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-09-11 17:03:21 +02:00
Mathias Kresin
e0b9ec8e96 treewide: drop target board_name functions
They are not used any longer.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Mathias Kresin
78cf5eed6e treewide: do board detection during preinit
Do the board detection during preinit to unify it across all targets.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00
Koen Vandeputte
cd54b2d42b kernel: update kernel 4.9 to 4.9.37
- Refreshed all patches
- Removed upstreamed
- Adapted 4 patches:

473-fix-marvell-phy-initialization-issues.patch
-----------------------------------------------
Removed hunk 5 which got upstreamed

403-net-phy-avoid-setting-unsupported-EEE-advertisments.patch
404-net-phy-restart-phy-autonegotiation-after-EEE-advert.patch
--------------------------------------------------------------
Adapted these 2 RFC patches, merging the delta's from an upstream commit
(see below) which made it before these 2.

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-
stable.git/commit/?h=v4.9.36&id=97ace183074d306942b903a148aebd5d061758f0

180-usb-xhci-add-support-for-performing-fake-doorbell.patch
-----------------------------------------------------------
- Moved fake_doorbell bitmask due to new item

Compile tested on: cns3xxx, imx6
Run tested on: cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-07-15 00:13:05 +02:00
Stijn Tintel
880f73c327 kernel: cleanup CONFIG_SCHED_HRTICK
Remove CONFIG_SCHED_HRTICK from target configs, as it was added to the
generic config in b47fd76563.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-29 04:46:59 +02:00
Koen Vandeputte
69649a1b45 kernel: update kernel 4.9 to 4.9.34
- Refreshed all patches
- Adapted 1 (0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch)

Compile tested on: brcm2708, cns3xxx, imx6
Run tested on: brcm2708, cns3xxx, imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
[Compile and run tested on brcm2708]
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-06-27 07:21:03 +02:00
Sergey Ryazanov
68e7a2a0b7 kernel: disable CONFIG_SG_POOL by default
CONFIG_SG_POOL symbol is selected only by CONFIG_SCSI, since the last
one is disabled by default then disable CONFIG_SG_POOL by default too.
And explicitly enable it only for platforms that use CONFIG_SCSI.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
2017-06-07 18:31:10 +02:00
Koen Vandeputte
06997d2635 cns3xxx: enable mpcore watchdog
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-12 12:13:16 +02:00
Koen Vandeputte
84acff2865 cns3xxx: fix mpcore watchdog
The original implementation loaded the count register with (wrong) semi-
random values due to its implemenation nature.

If the wrongly calulated value was below the kickrate,
the WD was triggered and rebooted the system.

Rework this, partly based on upstream patches, to dynamically fetch the
current clockrate and calculate the proper offset for the WD countdown
register.

Before:

[  143.800000] count val: 27219720
[  148.820000] count val: 50623201
[  153.830000] count val: 96425250
[  158.830000] count val: 89735401
[  163.840000] count val: 4756110

After:

[    0.700000] MPCore WD init. clockrate: 299984500 prescaler: 256
countrate: 1171814 timeout: 60s
[  358.530000] count val: 35154751
[  363.540000] count val: 35154750
[  368.540000] count val: 35154751
[  373.550000] count val: 35154750

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-12 12:13:15 +02:00
Koen Vandeputte
6f8a552796 cns3xxx: refresh kernel config
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-12 12:13:15 +02:00
Koen Vandeputte
2611f67423 cns3xxx: remove linux 4.4 support
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-04-12 12:12:49 +02:00
Hauke Mehrtens
c3778f2647 kernel: update kernel 4.4 to 4.4.59
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-04-02 12:48:00 +02:00
Hauke Mehrtens
fb7ea71c15 kernel: update kernel 4.9 to 4.9.17
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-03-26 12:23:19 +02:00
Hauke Mehrtens
236840eb47 kernel: update kernel 4.9 to version 4.9.10
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2017-02-16 00:46:23 +01:00
Felix Fietkau
fcea190b8b cns3xxx: disable watchdog until it is fixed
It has been reported to cause random reboots on some devices

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-13 11:30:56 +01:00
Felix Fietkau
e9f76f0f46 cns3xxx: clean up patches
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 21:18:42 +01:00
Felix Fietkau
73ea3c3f9c cns3xxx: add back watchdog support
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-02-11 15:36:35 +01:00
Koen Vandeputte
2c416b1db0 cns3xxx: switch to linux 4.9
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-10 11:05:57 +01:00
Koen Vandeputte
1db4135e32 cns3xxx: add preliminary 4.9 support
Adds preliminary kernel 4.9 support for this target.

- Refreshed/Updated all patches

Added 3 new patches:
- 093 --> Add virtual PCI MMIO mapping
- 230 --> Remove deprecated code
- 240 --> Rework AT24 eeprom code to use the new NVMEM API

Compiled & tested on cns3xxx (gw2388)

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-10 11:05:57 +01:00
Koen Vandeputte
597ea08038 cns3xxx: use proper macro's for ID handling
Compiled & tested on cns3xxx

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-07 11:39:08 +01:00
Stijn Tintel
d2c4041f02 kernel: update kernel 4.4 to version 4.4.47
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, except arc770 and arch38 due to broken toolchain.

Runtime-tested on ar71xx, octeon, ramips and x86/64.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-02-06 03:23:06 +01:00
Koen Vandeputte
3becadd56c kernel: bump to 4.4.46
Refreshed patches for all supported targets.

Compile-tested on ar71xx, cns3xxx, imx6, mt7621, oxnas and x86/64.
Run-tested on ar71xx, cns3xxx, imx6 and mt7621.

Tested-by: Stijn Segers <francesco.borromini@inventati.org>
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-02-02 20:59:57 +01:00
Koen Vandeputte
4d1515070b kernel: bump to 4.4.45
Refreshed patches for all supported targets.

Compiled & tested on cns3xxx & imx6

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2017-01-27 23:17:49 +01:00
Felix Fietkau
7d985f0925 kernel: split up 980-arm_openwrt_machtypes.patch and move to target folders
This is only required for non-DT platforms

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2017-01-27 11:18:27 +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
Koen Vandeputte
347884b345 cns3xxx: fix UART resource overlap
Port 1 registers the same IO resources as port 2 in the kernel resource
tree, which is wrong.
Fix this by using it's own resources as indicated in the overview
(cns3xxx.h).

Compiled & Tested on several GW2388-4 laguna boards which utilizes all 3
ports.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2016-11-05 10:18:27 +01:00
Felix Fietkau
0b3a64f862 cns3xxx: eliminate hardcoded kernel/rootfs partition split
This changes the sysupgrade format. To support upgrades from the old
firmware to the new one, legacy images are provided. Because of the old
partition split, these have to be specific to the NOR or SPI device.

The new sysupgrade images are suitable for begin put on flash directly,
and they are independent of NOR vs SPI flash variant.

Flashing back to old firmware is supported via using the old full-flash
images instead of the old sysupgrade images.

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-09-19 14:27:26 +02:00
Felix Fietkau
58fbe07560 cns3xxx: move laguna.c changes out of patches, update it in files/
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-09-19 14:27:26 +02:00
Koen Vandeputte
88ee275562 cns3xxx: Enable driver support for onboard m25p80 SPI flash
This device is present on the Gateworks Laguna cns3xxx family.

As the SPI bus master is enabled, also enable driver support for
this typical slave.

[    3.920000] m25p80 spi1.0: found m25p32, expected m25p80
[    3.930000] m25p80 spi1.0: m25p32 (4096 Kbytes)
[    3.930000] Creating 4 MTD partitions on "spi1.0":
[    3.940000] 0x000000000000-0x000000040000 : "uboot"
[    3.940000] 0x000000040000-0x000000080000 : "params"
[    3.950000] 0x000000080000-0x000000200000 : "kernel"
[    3.950000] 0x000000200000-0x000000400000 : "rootfs"

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2016-09-15 13:11:21 +02:00
Álvaro Fernández Rojas
d14c28fc80 kernel: update kernel 4.4 to version 4.4.20
Refresh patches for all targets that support kernel 4.4.
Compile-tested on brcm2708 only.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-09-15 08:10:55 +02:00
Tim Harvey
1974ad5a96 cns3xxx: add GW2386 support
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2016-09-08 13:40:02 +02:00
Tim Harvey
1419087a35 cns3xxx: add GW2394 Support
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2016-09-08 13:40:02 +02:00
Felix Fietkau
aa53f78038 build: fix subtarget descriptions
Move Target/Description above the target.mk include

Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-09-04 13:35:11 +02:00
Felix Fietkau
cd243b1090 cns3xxx: remove obsolete jffs2 image build code
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2016-07-20 10:13:50 +02:00
Koen Vandeputte
f532191c1c cns3xxx: fix RX softIRQ loop
Already reschedule when 1 or more frames came in.

Checking for a full queue could produce a re-schedule loop as
the checked RX ring location could contain undefined values
depending on activity in previous loops.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
2016-06-17 04:13:07 +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
Álvaro Fernández Rojas
e32b2f92b1 kernel: update kernel 4.4 to version 4.4.10
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-05-11 21:34:27 +02:00
Álvaro Fernández Rojas
b062266ad6 kernel: update kernel 4.4 to version 4.4.9
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2016-05-10 10:43:17 +02:00
John Crispin
687ab51fb2 cns3xxx: set both MPS 'and' MRSS to 128
Fixes some DMA issues with this platform. Because this isn't currently accepted,
and can potentially disrupt other platforms (as read in commit log), I will
leave this cns3xxx specific.

Original Patch: https://patchwork.ozlabs.org/patch/600024/

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

SVN-Revision: 49249
2016-04-26 11:44:00 +00:00
John Crispin
6a111b41bc cns3xxx: backport pci fix for cns3xxx_write_config
Fix is required to properly set pci config bits.
Original Patch: https://patchwork.ozlabs.org/patch/596170/

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

SVN-Revision: 49248
2016-04-26 11:43:57 +00:00
Hauke Mehrtens
b3aae4c672 kernel: update kernel 4.4 to version 4.4.6
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 49032
2016-03-17 21:41:07 +00:00
Felix Fietkau
5ab4db376a cns3xxx: enable CONFIG_PROC_STRIPPED to improve network performance
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48581
2016-01-31 12:35:33 +00:00
Felix Fietkau
9ab08d665f cns3xxx: improve ethernet performance by using the page fragment allocation API
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48580
2016-01-31 12:35:20 +00:00
Felix Fietkau
3d4444f257 cns3xxx: fix ethernet DMA ring allocation issues
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48579
2016-01-31 12:35:07 +00:00
Felix Fietkau
82939c3f52 Revert "cns3xxx: re-enable CONFIG_CPU_SW_DOMAIN_PAN"
There seem to be some remaining SMP issues with it

This reverts commit r48336

SVN-Revision: 48367
2016-01-19 16:52:17 +00:00
Felix Fietkau
10220cd7e9 cns3xxx: re-enable CONFIG_CPU_SW_DOMAIN_PAN
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48336
2016-01-18 23:20:38 +00:00
Felix Fietkau
87e4f9f009 cns3xxx: update to linux 4.4
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48334
2016-01-18 22:38:23 +00:00
Felix Fietkau
91278df70e cns3xxx: fix a ethernet driver napi poll handling bug
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48333
2016-01-18 22:38:14 +00:00
Felix Fietkau
136747c564 cns3xxx: clean up SMP related code
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48332
2016-01-18 22:38:09 +00:00
Felix Fietkau
8ecfa0e773 cns3xxx: fix adding twd local timers
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 48331
2016-01-18 22:38:03 +00:00