summaryrefslogtreecommitdiffstats
path: root/target/linux/cns3xxx
Commit message (Collapse)AuthorAgeFilesLines
* cns3xxx: ethernet - clean the tx ring only in the poll function, not in the ↵nbd2013-03-111-6/+11
| | | | | | xmit handler git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35952 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: increase number of ethernet driver rx buffersnbd2013-03-101-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35951 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: prevent the ethernet driver from accessing uninitialized dma ↵nbd2013-03-101-1/+2
| | | | | | descriptor entries git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35950 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: minor ethernet driver cleanupnbd2013-03-101-35/+19
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35949 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: use kmalloc instead of kzalloc for ethernet rx buffersnbd2013-03-101-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35943 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: fix an rx irq handling corner casenbd2013-03-101-5/+5
| | | | | | | | | | | | | | | | When an rx interrupt comes in, rx interrupts are disabled and NAPI polling is scheduled. During the NAPI poll, the driver first processes received frames in the ring, then fills the dma descriptor slots with new buffers and calls tx complete, before finally re-enabling rx interrupts and completing NAPI (if below the budget). If the hardware rx queue overflows before the napi complete is called, the hardware will not throw any further rx interrupts and rx processing stops completely. Fix this by keeping NAPI polling scheduled until it completes a poll without receiving any packets, and also handle NAPI completion before refilling rx or completing tx. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35942 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: fix ethernet driver memory barrier usagenbd2013-03-101-5/+8
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35941 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: reduce buffer allocation size to 2048 bytes, improves ethernet ↵nbd2013-03-101-1/+1
| | | | | | performance git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35917 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: remove linux 3.3 supportnbd2013-03-1023-1558/+0
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35916 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: disable CONFIG_PROC_STRIPPED and add an init script to set the ↵nbd2013-03-102-0/+22
| | | | | | ethernet cpu affinity (improves lan<->wlan bridging performance) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35915 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: add linux 3.8 support and use it by defaultnbd2013-03-0931-25/+1543
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35908 3c298f89-4303-0410-b956-a3cf2f4a3e73
* Revert "[cns3xxx]: clean up PCI bus topology" (r35079)nbd2013-03-021-27/+0
| | | | | | It breaks PCIe IRQ mapping and possibly other things git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35842 3c298f89-4303-0410-b956-a3cf2f4a3e73
* target: enable XZ BCJ decompressor code after r35097florian2013-01-141-0/+2
| | | | | | | | | Required to actually be able to mount squashfs xz compressed filesystems. Signed-off-by: Florian Fainelli <florian@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35156 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: clean up PCI bus topologykaloz2013-01-101-0/+27
| | | | | | | | | This makes the PCI bus topology more standard for devices behind a bridge Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35079 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: clean up PCI bus topologykaloz2013-01-101-2/+2
| | | | | | | | | This makes the PCI bus topology more standard for devices behind a bridge Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35078 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: add nol2x0 cmdline to disable l2x0 cachekaloz2012-12-232-2/+47
| | | | | | | | | | | | L2 cache via L2X0 cache controller available on some ARM boards can provide a performance boost in some situations but decrease performance in others. This adds a kernel cmdline to disable L2X0 for cns3xxx based boards. Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34874 3c298f89-4303-0410-b956-a3cf2f4a3e73
* kernel: add missing USB configuration symbols after r34501florian2012-12-071-0/+2
| | | | | | Signed-off-by: Florian Fainelli <florian@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34568 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: fix dwc_otg driver compat with udc-coreflorian2012-12-042-94/+0
| | | | | | | | | | | function. This removes those from the dwc_otg driver and removes the patch that comments out the linkage of udc-core so that the dwc_otg driver can co-exist happily with other USB Device Controllers. Signed-off-by: Tim Harvey <tharvey@gateworks.com> Signed-off-by: Florian Fainelli <florian@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34475 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: advertise pcie usb usbgadget featuresflorian2012-12-041-1/+1
| | | | | | | Signed-off-by: Tim Harvey <tharvey@gateworks.com> Signed-off-by: Florian Fainelli <florian@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34474 3c298f89-4303-0410-b956-a3cf2f4a3e73
* remove common symbols from 3.3 configsjuhosg2012-11-291-2/+0
| | | | | | | | The removed symbols are present in the generic configuration. Signed-off-by: Gabor Juhos <juhosg@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34403 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: merge gpio patchesluka2012-11-122-206/+35
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34174 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: fix build failure after r34168luka2012-11-121-0/+16
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34173 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: reorder, rename and refresh patcheskaloz2012-11-1222-36/+25
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34169 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: split spi patch, follow mainline file namingkaloz2012-11-122-469/+450
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34168 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: split the i2c patch, merge the retry fixupkaloz2012-11-123-462/+396
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34167 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: generate single images for tftp flashing as well as sysupgrade ↵kaloz2012-11-111-12/+33
| | | | | | images for boards with old u-boot git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34163 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: convert dwc_otg patches to filesluka2012-11-1120-22807/+22735
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34162 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: convert ethernet patches to filesluka2012-11-1110-2090/+1400
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34161 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: clean up pcie patcheskaloz2012-11-094-118/+25
| | | | | | | | | | Combine two pcie patches (2nd patch undid the 1st patch) together and refresh the other affected patches Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34132 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: exit from laguna late_initcall if not running on laguna boardluka2012-11-081-0/+3
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34120 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: add PPS support for lagunakaloz2012-11-082-0/+27
| | | | | | | | | | | Many Laguna products have on-board GPS with Pulse-per-second (PPS) support. This patch adds kernel support (statically) and adds the platform data in laguna board support. Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34115 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: fixup symbol selectionkaloz2012-11-083-25/+3
| | | | | | | | | SMP already selects HAVE_ARM_TWD and HAVE_ARM_SCU, ARCH_CNS3XXX already selects MIGHT_HAVE_PCI git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34114 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: fix coding style in board scriptluka2012-11-071-4/+4
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34113 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: refresh kernel config fileluka2012-11-061-2/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34102 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: use files directoryluka2012-11-0618-2352/+1907
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34101 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: refresh patcheskaloz2012-11-062-2/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34095 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: add default packageskaloz2012-11-061-1/+3
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34094 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: move PCIe init to subsys init callkaloz2012-10-311-0/+156
| | | | | | | | | | | | | | | | ARM Linux PCI/PCIe hardware intialization needs to occur before device_init as it does not support hotplug. I have modeled the cns3xxx PCIe init after other ARM platforms. Registering it early resolves resource issues occuring during bus enumeration that occur when a device driver is linked static in the kernel. Instead of passing in a bitmask to enable the 2 available ports, link detect is used to enable ports that have a valid link. Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34044 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: update FIQ header file and disable RWFOnbd2012-10-172-6/+5
| | | | | | | | | | | | | | | | Update header file appropriately and disable read for ownership Note that the FIQ support implements a workaround that provides a performance boost over the traditional upstream workaround which ensures cache lines are exclusive on driver CPU using 'read for ownership'. Signed-off-by: Tim Harvey <tharvey@gateworks.com> target/linux/cns3xxx/config-3.3 | 2 +- target/linux/cns3xxx/patches-3.3/460-cns3xxx_fiq_support.patch | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33827 3c298f89-4303-0410-b956-a3cf2f4a3e73
* drop GPIODEV platform codeblogic2012-10-171-6/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33825 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: fix (really this time) laguna UART configkaloz2012-10-111-1/+1
| | | | | | | | | Properly terminate the correct platform resource for laguna UARTs Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33721 3c298f89-4303-0410-b956-a3cf2f4a3e73
* The Gateworks System Controller (GSC) is an i2c device that provides systemkaloz2012-10-112-340/+1
| | | | | | | | | | | level monitoring and control of Gateworks boards. It is used on several product families spanning several different target architectures (ixp4xx, cns3xxx, davinci). Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33720 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [cns3xxx]: fix non terminated uart resources for lagunakaloz2012-10-111-1/+2
| | | | | | | | | | Resolves crashes when probing multiple serial devices Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33719 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: Fix GPIO configuration for Gateworks Laguna boardsnbd2012-10-101-0/+23
| | | | | | | | | The Laguna boards do not use all the same pins for SDHCI as the Cavium reference board. Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33684 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: Fix laguna arm11mpcore watchdognbd2012-10-101-1/+1
| | | | | | | | | | | | | | | | | The ARM11MPCore Timer/Watchdog registers start at offset 0x600 which is where all mpcore-wdt boards point the driver base too. I believe this is wrong because 0x600 is aliased to the timer/watchdog of the 'current CPU' where 0x700 is CPU0's timer/watchdog, and 0x800 is CPU1's timer/watchdog. Thus if your timer/watchdog application is switching between CPU's it can end up writing to the wrong CPU's registers which results in random board resets from watchdog timeouts etc. This patch forces the timer/watchdog driver to use CPU0's registers always. Its my opinion that other mpcore-wdt boards should be doing the same thing. Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33683 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: add sysupgrade supportnbd2012-10-073-4/+159
| | | | | | | | | | | Signed-off-by: Tim Harvey <tharvey@gateworks.com> target/linux/cns3xxx/base-files/lib/cns3xxx.sh | 22 ++ target/linux/cns3xxx/base-files/lib/upgrade/platform.sh | 122 ++++++++++++++++ target/linux/cns3xxx/image/Makefile | 19 +- 3 files changed, 159 insertions(+), 4 deletions(-) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33650 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: add GW2383 board supportnbd2012-10-071-1/+17
| | | | | | | | | | | Add GPIO/LED support for Gateworks GW2383 Signed-off-by: Tim Harvey <tharvey@gateworks.com> target/linux/cns3xxx/patches-3.3/300-laguna_support.patch | 18 +++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33649 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: fix gpio access and add gpio IRQ supportnbd2012-10-071-0/+536
| | | | | | | | | Signed-off-by: Tim Harvey <tharvey@gateworks.com> target/linux/cns3xxx/patches-3.3/470-gpio_irq.patch | 536 ++++++++++++++++++++ 1 file changed, 536 insertions(+) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33648 3c298f89-4303-0410-b956-a3cf2f4a3e73
* cns3xxx: add missing kernel config symbolnbd2012-09-301-0/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33603 3c298f89-4303-0410-b956-a3cf2f4a3e73
* Add FIQ support for cns3xxxkaloz2012-09-282-1/+430
| | | | | | | Signed-off-by: Tim Harvey <tharvey@gateworks.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33581 3c298f89-4303-0410-b956-a3cf2f4a3e73