Commit graph

346 commits

Author SHA1 Message Date
Gabor Juhos
188908e885 ar71xx: make rb750_nand driver compatible with 3.7
Also add compatibility patches for the currently
supported kernels.

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

SVN-Revision: 34279
2012-11-20 16:29:43 +00:00
Gabor Juhos
8194237789 ar71xx: make ar934x_nfc driver compatible with 3.7
Also add compatibility patches for the currently
supported kernels.

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

SVN-Revision: 34278
2012-11-20 16:29:42 +00:00
Gabor Juhos
46a3b818b9 ar71xx: remove buffer verification reference from rb4xx_nand.c
It is a dead code.

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

SVN-Revision: 34276
2012-11-20 14:40:22 +00:00
Gabor Juhos
d833ca527d ar71xx: restore rb4xx kernel partition size to the original value
The new lzma compressed elf kernel image fits into
that, even on devices with large page NAND chips.

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

SVN-Revision: 34274
2012-11-20 12:17:45 +00:00
Gabor Juhos
a6549ac1cb ar71xx: remove NO_AUTOINCR flag from the NAND drivers
The flag is not present in 3.6.
Also add compatibility patches for 3.3.

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

SVN-Revision: 33971
2012-10-28 12:21:15 +00:00
Gabor Juhos
e2ec99889e ar71xx: ag71xx: fix build_skb arguments for 3.6
Also add a compatibility patch for 3.3

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

SVN-Revision: 33969
2012-10-27 17:11:06 +00:00
Gabor Juhos
269872fe1e ar71xx: use mtd_read in wrt160nl_part
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 33951
2012-10-27 07:57:58 +00:00
Gabor Juhos
973eda6077 ar71xx: use mtd_read in tplinkpart
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 33950
2012-10-27 07:57:57 +00:00
Gabor Juhos
7c85646176 ar71xx: ar934x_nfc: remove unused oob parameter of ar934x_nfc_send_read
SVN-Revision: 33454
2012-09-17 20:30:55 +00:00
Gabor Juhos
3bdf0bc36f ar71xx: ar934x_nfc: increase DMA retry count
SVN-Revision: 33453
2012-09-17 20:30:54 +00:00
Gabor Juhos
b7cb43f6a6 ar71xx: ar934x_nfc: optimize READOOB operation on large page devices
SVN-Revision: 33452
2012-09-17 20:30:53 +00:00
Gabor Juhos
96dde2e591 ar71xx: ar934x_nfc: fix RNDOUT operation
SVN-Revision: 33451
2012-09-17 20:30:51 +00:00
Gabor Juhos
338b698fb6 ar71xx: ar934x_nfc: fix READ{0,1} operation on large page devices
SVN-Revision: 33450
2012-09-17 20:30:50 +00:00
Gabor Juhos
1e5fdbeae5 ar71xx: ar934x_nfc: experimental NAND Flash Controller driver for AR934x
SVN-Revision: 33385
2012-09-13 07:26:22 +00:00
Gabor Juhos
7592057774 ar71xx: add dynamic MDIO clock calculation
SVN-Revision: 33342
2012-09-09 14:05:17 +00:00
Gabor Juhos
b8618fd3f2 ar71xx: improve MDIO busy wait code
SVN-Revision: 32586
2012-07-03 15:24:02 +00:00
Felix Fietkau
a9cd8446f3 ar71xx: do not override the mdio clock for ar9330. the override value (obtained from an atheros driver) seems to break ethernet functionality
SVN-Revision: 31956
2012-05-28 20:39:50 +00:00
Felix Fietkau
367e4b3994 ar71xx: improve rx performance of the ethernet driver by using build_skb to deliver a cache-hot skb to the network stack
SVN-Revision: 31934
2012-05-28 02:55:59 +00:00
Felix Fietkau
8039a1bbb2 ar71xx: fix MII clock settings for various chips, improves ethernet stability on AR934x
SVN-Revision: 31925
2012-05-27 21:02:41 +00:00
Felix Fietkau
a3f2fd187b ar71xx: remove AG71XX_RX_PKT_RESERVE, it is no longer necessary (found by Eric Dumazet)
SVN-Revision: 31736
2012-05-15 10:36:39 +00:00
Felix Fietkau
0ff3c396d3 kernel: rewrite the phy packet hook, put it in the network stack to avoid having to keep non-upstream ethernet driver changes
SVN-Revision: 31637
2012-05-06 21:19:14 +00:00
Gabor Juhos
3e3a4d3d6b ar71xx: allow to disable link polling on unused PHYs
SVN-Revision: 31533
2012-04-29 18:29:24 +00:00
Gabor Juhos
a447f1810c ar71xx: enable MIB counters in the built-in switch of the AR934x
SVN-Revision: 31476
2012-04-25 13:02:11 +00:00
Gabor Juhos
5348f46c80 ar71xx: add latch_change field to rb750_led_platform_data
SVN-Revision: 31023
2012-03-19 15:57:01 +00:00
Gabor Juhos
8a471efe01 ar71xx: add platform data for the RB750 NAND driver
SVN-Revision: 31022
2012-03-19 15:56:59 +00:00
Gabor Juhos
c00b53f3d0 ar71xx: move micrel PHY driver to the generic linux target
SVN-Revision: 30946
2012-03-15 09:25:53 +00:00
Gabor Juhos
ff909edf94 ar71xx: ag71xx: fix ARP frame reception on AR934x switch ports
SVN-Revision: 30926
2012-03-13 17:29:38 +00:00
Gabor Juhos
cd6a4cde13 ar71xx: ag71xx: start aneg on switch PHYs after reset
SVN-Revision: 30925
2012-03-13 17:29:37 +00:00
Gabor Juhos
7c9534cfd7 ar71xx: ag71xx: poll PHY status of all available switch ports
SVN-Revision: 30924
2012-03-13 17:29:36 +00:00
Gabor Juhos
8449eecf5f ar71xx: ag71xx: allow to use port 5 of the AR934x built-in switch
SVN-Revision: 30923
2012-03-13 17:29:34 +00:00
Gabor Juhos
c455a0f7be ar71xx: ag71xx: fix get_port_link callback
SVN-Revision: 30841
2012-03-07 16:32:35 +00:00
Gabor Juhos
5a83b3a5c7 ar71xx: ag71xx: use the generic get_port_link implementation
SVN-Revision: 30840
2012-03-07 16:32:34 +00:00
Gabor Juhos
7052847972 ar71xx: ag71xx: keep VLAN tags if VLAN is not enabled
SVN-Revision: 30768
2012-03-01 19:49:05 +00:00
Gabor Juhos
766999085a ar71xx: ag71xx: add BQL support
It will be usable only from linux-3.3.

Based on a patch by Dave Taht <dave.taht@bufferbloat.net>

SVN-Revision: 30417
2012-02-10 14:56:47 +00:00
Gabor Juhos
32a18a05f8 ar71xx: add preliminary support for 3.3
SVN-Revision: 30410
2012-02-10 11:53:56 +00:00
Gabor Juhos
fe0c7aac66 ar71xx: merge 3.2 fixes
SVN-Revision: 30406
2012-02-10 08:19:33 +00:00
Gabor Juhos
d72bde99cd ar71xx: merge files-3.2 to files
SVN-Revision: 30405
2012-02-10 08:19:31 +00:00
Gabor Juhos
d5d37febb4 ar71xx: use dynamically allocated partitions in wrt160nl_part
SVN-Revision: 29970
2012-01-31 18:36:51 +00:00
Gabor Juhos
386cbfe45b ar71xx: move arch specific files to files-2.6.39
SVN-Revision: 29867
2012-01-22 22:38:11 +00:00
Gabor Juhos
e7dee3aeed ar71xx: wrt160nl_part: include module.h and fix compiler warnings
SVN-Revision: 29856
2012-01-22 17:55:38 +00:00
Gabor Juhos
a7d344565b ar71xx: tplinkpart: include module.h
SVN-Revision: 29855
2012-01-22 17:55:36 +00:00
Gabor Juhos
6c2638c5e2 ar71xx: rename vsc7385 spi driver
SVN-Revision: 29853
2012-01-22 13:51:57 +00:00
Gabor Juhos
bb16739db9 ar71xx: rename ap81 spi driver
SVN-Revision: 29852
2012-01-22 13:51:56 +00:00
Gabor Juhos
5ef8b922fa ar71xx: rename rb4xx spi drivers
SVN-Revision: 29851
2012-01-22 13:51:54 +00:00
Gabor Juhos
aad175d5b6 ar71xx: rename the nxp_74hc153 driver
SVN-Revision: 29850
2012-01-22 13:51:52 +00:00
Gabor Juhos
f90e578903 ar71xx: include linux/module.h in the micrel phy driver
SVN-Revision: 29848
2012-01-22 13:51:49 +00:00
Gabor Juhos
88d8cdd503 ar71xx: pb44_spi: add shutdown handler
This allows to access the flash from a kexec'd kernel.

SVN-Revision: 29710
2012-01-11 09:14:18 +00:00
Gabor Juhos
e1b7995aef ar71xx: pb44_spi: call pb44_spi_{en,dis}able from probe/remove
SVN-Revision: 29709
2012-01-11 09:14:17 +00:00
Gabor Juhos
67444c7795 ar71xx: pb44_spi: introduce pb44_spi_{en,dis}able helpers
SVN-Revision: 29708
2012-01-11 09:14:15 +00:00
Gabor Juhos
0f566a376c ar71xx: ar71xx_spi: add shutdown handler
This allows to access the flash from a kexec'd kernel.

SVN-Revision: 29707
2012-01-11 09:14:14 +00:00
Gabor Juhos
09a6e3f662 ar71xx: ar71xx_spi: save and restore regs from probe/remove
SVN-Revision: 29706
2012-01-11 09:14:13 +00:00
Gabor Juhos
714a9bd641 ar71xx: ar71xx_wdt: add shutdown handler
SVN-Revision: 29705
2012-01-11 09:14:11 +00:00
Gabor Juhos
8eb0b7ab3d ar71xx: fix sections mismatch warnings in the nand drivers
SVN-Revision: 29667
2012-01-05 18:08:33 +00:00
Gabor Juhos
8c2482f76e ar71xx: ag71xx: implement get_port_{link,stats} callbacks
SVN-Revision: 29626
2011-12-31 15:02:26 +00:00
Felix Fietkau
db0a1db257 ar71xx: set a reserved bit that resets to 1 when writing the address table control register on the ar7240 switch (should fix #10547)
SVN-Revision: 29598
2011-12-22 05:43:53 +00:00
Gabor Juhos
36bc2c2c80 ar71xx: ag71xx: fix switch port setup for AR934X
SVN-Revision: 29554
2011-12-15 22:25:32 +00:00
Gabor Juhos
00667c3846 ar71xx: ag71xx: allow to connect PHY4 to the CPU on AR934X
SVN-Revision: 29553
2011-12-15 22:25:30 +00:00
Gabor Juhos
0540970345 ar71xx: ag71xx: setup switch interface mode on AR934X
SVN-Revision: 29552
2011-12-15 22:25:29 +00:00
Gabor Juhos
44014110b8 ar71xx: ag71xx: detect the built-in switch of the AR934X SoCs
SVN-Revision: 29551
2011-12-15 22:25:28 +00:00
Gabor Juhos
9ae65588d8 ar71xx: introduce ar71xx_switch_data
SVN-Revision: 29549
2011-12-15 22:25:11 +00:00
Gabor Juhos
850be54b72 ar71xx: tplinkpart: allow to detect JFFS2 as well
SVN-Revision: 29543
2011-12-15 22:03:40 +00:00
Gabor Juhos
b7d7481b07 ar71xx: ag71xx: check PHY IDs before accessing the switch registers
SVN-Revision: 29541
2011-12-15 13:25:23 +00:00
Gabor Juhos
0655552860 ar71xx: ag71xx: don't use port 4 of the switch, it is not connected on ar724x
SVN-Revision: 29540
2011-12-15 13:25:21 +00:00
Gabor Juhos
204fc6bed5 ar71xx: ag71xx: nuke ar7240sw_init
SVN-Revision: 29539
2011-12-15 13:25:20 +00:00
Gabor Juhos
3e7a6d182a ar71xx: check squashfs signature in TP-Link mtd parser
SVN-Revision: 29446
2011-12-05 14:52:33 +00:00
Gabor Juhos
514b1167c9 ar71xx: add mtd partition parser for the TP-Link boards
SVN-Revision: 29415
2011-12-03 18:13:27 +00:00
Gabor Juhos
aa0c8c4885 ar71xx: add AR71XX_ prefix to GPIO_REG_* defines
SVN-Revision: 29123
2011-11-14 17:43:11 +00:00
Gabor Juhos
62a7795afd ar71xx: merge nand scan patch
SVN-Revision: 29122
2011-11-14 17:43:10 +00:00
Gabor Juhos
d2316b2a45 ar71xx: ag71xx: add support for getting switch port link status
SVN-Revision: 29017
2011-11-13 11:27:04 +00:00
Gabor Juhos
34015ed6e8 ar71xx: ag71xx: remove unused mii_ctrl field from struct ag71xx
SVN-Revision: 29015
2011-11-13 11:27:01 +00:00
Gabor Juhos
2d882cff23 ar71xx: ag71xx: remove unused mii_cfg related functions and defines
SVN-Revision: 29014
2011-11-13 11:27:00 +00:00
Gabor Juhos
538a9493b9 ar71xx: set MII interface speed from the set_speed callbacks
SVN-Revision: 29013
2011-11-13 11:26:59 +00:00
Gabor Juhos
93cd46be13 ar71xx: rename set_pll callback to set_speed in ag71xx_platform_data
Also rename the corresponding callback functions.

SVN-Revision: 29012
2011-11-13 11:26:57 +00:00
Gabor Juhos
9579bb4267 ar71xx: ag71xx: remove MII interface setup code
SVN-Revision: 29011
2011-11-13 11:26:56 +00:00
Gabor Juhos
2f9e535e89 ar71xx: ag71xx: use fixed link parameters if the mii bus is not registered
SVN-Revision: 28977
2011-11-12 10:54:16 +00:00
Felix Fietkau
7a2efd8c28 ar71xx: remove dead code
SVN-Revision: 28851
2011-11-08 00:33:20 +00:00
Felix Fietkau
94309039b7 ar71xx: on ar7240, exclude ports from their own port vlan destination mask
SVN-Revision: 28850
2011-11-08 00:33:15 +00:00
Jonas Gorski
c674c874b7 ag71xx: close a race between the phy state machine and link state
A fast stop/start cycle could leave the ag71xx interrupts and tx engine
disabled when using a phy driver with a fixed link and the start/stop
happens between two phy state machine polls.

Prevent this by always forcing the link down on stop regardless of phy
state and having a phy connected.

SVN-Revision: 28380
2011-10-08 11:37:14 +00:00
Felix Fietkau
1bdf65f580 ar71xx: fix register range check for DMA stuck checks (thx, Frédéric Moulins)
SVN-Revision: 28213
2011-09-11 17:44:12 +00:00
Felix Fietkau
12c84f8eeb ar71xx: add some code to detect DMA stuck conditions on ar7240
SVN-Revision: 27975
2011-08-13 22:30:14 +00:00
Felix Fietkau
85ccc74e1b ar71xx: on ar724x only reset the link status in the restart handler, the fast reset takes care of DMA stuck issues
SVN-Revision: 27973
2011-08-13 21:49:46 +00:00
Felix Fietkau
4b75394056 ar71xx: fix ethernet FIFO state corruption on ar7240
When starting/stopping DMA sometimes the FIFO state gets corrupted,
leading to wildly fluctuating latencies or packet data corruption.
Fix this by issuing a fast MAC reset as soon as the link is detected
as up. Fixes #9689, #9405

SVN-Revision: 27896
2011-08-04 17:36:31 +00:00
Felix Fietkau
d2aeca6b6d ag71xx: fix memory corruption issues on ar7240 on ethernet start/stop
When the DMA engine state gets corrupted due to a hardware issues, it
often won't stop rx until a full reset is issued. In that case the hardware
must keep a valid descriptor, otherwise it will write to random places in
system RAM, triggering random crashes. To fix this, keep a dummy descriptor
without a buffer that keeps the DMA engine in a sane state until the reset
is done

SVN-Revision: 27895
2011-08-04 17:36:27 +00:00
Felix Fietkau
500c3a1475 ar71xx: fix MAC/MDIO reset mask handling
SVN-Revision: 27894
2011-08-04 17:36:23 +00:00
Felix Fietkau
c7173a211d ar71xx: reinitialize global switch settings after reset on ar7240
SVN-Revision: 27705
2011-07-20 14:39:47 +00:00
Felix Fietkau
ca473833c4 ar71xx: configure address aging on ar7240
SVN-Revision: 27704
2011-07-20 14:39:42 +00:00
Felix Fietkau
fefc79f3cb ar71xx: reset the phy in the ethernet init on ar724x
SVN-Revision: 27703
2011-07-20 12:04:34 +00:00
Felix Fietkau
005fe5d1fd ar71xx: make sure that rx and interrupts are disabled before issuing the hardware reset
SVN-Revision: 27702
2011-07-20 12:04:29 +00:00
Felix Fietkau
e7ab000008 ar71xx: increase the delay after the ethernet MAC reset
SVN-Revision: 27701
2011-07-20 12:04:25 +00:00
Felix Fietkau
255dcaa3a6 ar71xx: fix an unused variable warning
SVN-Revision: 27700
2011-07-20 12:04:20 +00:00
Felix Fietkau
f3d693c0ee ar71xx: do not reset the hardware on transmit timeout - this would mess up the up the PHY state
SVN-Revision: 27568
2011-07-09 06:30:13 +00:00
Felix Fietkau
2806c75c07 ag71xx: keep the rx engine stopped while the link is not up, should hopefully fix stability issues from #9405
SVN-Revision: 27567
2011-07-09 06:29:46 +00:00
Gabor Juhos
d98476c6bd ar71xx: merge 2.6.39 patches
Also remove the old UART driver for ar933x.

SVN-Revision: 27314
2011-06-29 08:57:37 +00:00
Gabor Juhos
6627574e57 ar71xx: add 2.6.39 support
SVN-Revision: 27310
2011-06-29 08:57:32 +00:00
Gabor Juhos
e6af77a1c8 ar71xx: cleanup AR933X UART driver
SVN-Revision: 27222
2011-06-19 13:17:51 +00:00
Gabor Juhos
b7e016ba42 ar71xx: use ar933x_uart.h in the AR933X serial driver
SVN-Revision: 27166
2011-06-13 08:12:40 +00:00
Gabor Juhos
13363d9129 ar71xx: setup wdt_clock for AR913X to avoid a kernel bug
Signed-off-by: Jonas Gorski <jonas.gorski+openwrt@gmail.com>

SVN-Revision: 27102
2011-06-04 12:30:10 +00:00
Felix Fietkau
31dd60689e Revert "ar71xx: only enable the rx engine after the link is up..."
It messes up the DMA state when the link goes down

SVN-Revision: 27088
2011-06-01 18:15:43 +00:00
Gabor Juhos
b460bc6f12 ar71xx: add serial driver for the AR933X UART
SVN-Revision: 27065
2011-05-31 22:53:40 +00:00
Gabor Juhos
88c45e3130 ar71xx: the watchdog uses the reference clock on the AR933x SoCs
SVN-Revision: 27060
2011-05-31 22:53:34 +00:00