aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/files/drivers/net/ramips.c
Commit message (Collapse)AuthorAgeFilesLines
* ramips: move the ethernet driver into a separate directoryGabor Juhos2012-02-211-1025/+0
| | | | | | Also clean up the Kconfig symbols. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30670 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: separate ring allocation and setupGabor Juhos2012-02-161-44/+90
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30573 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: add a helper function for skb allocationGabor Juhos2012-02-151-6/+16
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30555 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: use netdev_alloc_skbGabor Juhos2012-02-151-2/+3
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30554 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: use 're' instead of 'priv' everywhereGabor Juhos2012-02-151-73/+73
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30552 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: force link down in ramips_phy_stopGabor Juhos2012-02-151-7/+6
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30550 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: serialize ramips_link_adjust callsGabor Juhos2012-02-151-0/+8
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30549 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: add PHYLIB supportGabor Juhos2012-02-151-7/+216
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30547 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: enable MDIO code for RT3883Gabor Juhos2012-02-131-2/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30497 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: add MDIO bus support for RT288XGabor Juhos2012-02-111-2/+150
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30455 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: make debugging messages configurableGabor Juhos2012-02-111-3/+9
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30450 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: use device pointer in DMA API callsGabor Juhos2012-02-111-11/+12
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30449 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: add netdev pointer to private structureGabor Juhos2012-02-111-0/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30448 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: cleanup DMA API usage in ramips_eth_hard_start_xmitGabor Juhos2012-02-111-5/+4
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30447 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: unmap rx DMA address in ramips_cleanup_dmaGabor Juhos2012-02-111-1/+4
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30446 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: add rx_dma array to store the DMA address of the rx packetsGabor Juhos2012-02-111-10/+16
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30445 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: use dma_addr_t for the descriptorsGabor Juhos2012-02-111-7/+7
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30444 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: unmap DMA memory when a packet is receivedGabor Juhos2012-02-111-0/+4
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30443 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: add a temporary pktlen variableGabor Juhos2012-02-111-3/+6
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30442 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: raeth: indicate dropped packets in statsGabor Juhos2012-02-111-0/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30440 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: Rework ramips_eth to not require irqsave locking anymoreJohn Crispin2012-01-171-6/+9
| | | | | | | | | | | | | | | | | Previously the tx housekeeping was done in a spin_lock_irqsave critical section which causes irqs to be disabled during that time. Since the housekeeping is already prepared to be scheduled as a tasklet process the housekeeping only in softirq context and revise the locking between the tx path and the housekeeping tasklet by using a normal spin_lock which in most situations will be a NOP anyway. This makes sure that interrupts are only disabled for a short time since in the worst case the housekeeping might have to free up to 256 skbs. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29762 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: convert it to be a platform driverGabor Juhos2010-12-081-4/+18
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24331 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: Use NET_IP_ALIGN instead of hardcoding 2Gabor Juhos2010-11-241-4/+5
| | | | | | Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24124 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: DMA map the correct RX skb sizeGabor Juhos2010-11-241-2/+2
| | | | | | | | | | The skb_reserve call prior to DMA mapping the RX skb reduced the skb data len by 2. To not allow DMA to write behind the skb we should pass the correct skb data len to the device. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24123 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: Don't trigger BUG_ON due to skb allocation failureGabor Juhos2010-11-241-16/+19
| | | | | | | | | Instead just drop the rx'ed frame silently and reuse the already available buffer. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24122 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: Remove unnecessary skb_putGabor Juhos2010-11-241-1/+1
| | | | | | Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24121 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: Allow ethernet interface to be taken down and up againGabor Juhos2010-10-051-0/+4
| | | | | | | | | | Taking the ramips ethernet interface down and up again resulted in the driver not receiving any frames anymore. Fix this by correctly disabling interrupts in the hw on ifdown. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23243 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: add mdio_cfg configuration for the ethernet driverGabor Juhos2010-07-151-0/+49
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22211 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: Fix bridging in ramips ethernet driverGabor Juhos2010-07-131-1/+1
| | | | | | | | | | | | | | | | | | | Bridging between the ramips ethernet driver and rt2800pci was somewhat broken. Frames received by the ethernet driver which were passed to the wifi driver for transmission were sometimes corrupted or sent out with huge delays. The reason for this is the missing assignment of skb->tail in the ramips ethernet driver's rx path resulting in skb->tail pointing to skb->data. Since skb->tail is used by mac80211 it writes into skb->data which messes up the frames content. Fix this by using skb_put to correctly set skb->len and skb->tail. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22172 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: cleanup mac_address changingGabor Juhos2010-01-311-19/+12
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19464 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: pass sys_clk via platform_dataGabor Juhos2010-01-311-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19462 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: add helper functions to {ed,dis}able interruptsGabor Juhos2010-01-311-6/+21
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19446 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: remove unnecessary typecastsGabor Juhos2010-01-311-2/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19445 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: simplify tx_next computationGabor Juhos2010-01-311-5/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19444 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: simplify tx descriptor initializationGabor Juhos2010-01-311-3/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19443 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: pass 'raeth_priv' struct directly to dma specific functionsGabor Juhos2010-01-311-39/+35
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19442 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: convert to use netdev_opsGabor Juhos2010-01-311-6/+12
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19440 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: fix invalid register writesGabor Juhos2010-01-301-4/+5
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19417 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: move memset call out from the loopGabor Juhos2010-01-301-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19416 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: coding style cleanupGabor Juhos2010-01-301-54/+66
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19414 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [ramips] missing header file changes, and fix mtu valueJohn Crispin2009-10-301-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18220 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [ramips] fixes rx path for eth, spinlock it, increases buffer size, board ↵John Crispin2009-10-291-28/+23
| | | | | | now survives ping -f git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18212 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [ramips] hopefully fixes dma issues seen on ethernet driver when under high loadJohn Crispin2009-10-291-2/+7
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18203 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: move 'arch/mips/include/asm/mach-ralink/eth.h' to ↵Gabor Juhos2009-10-261-1/+1
| | | | | | 'drivers/net/ramips_eth.h' git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18176 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: move ramips_eth_platform_data into a separate fileGabor Juhos2009-10-261-0/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18174 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: request_irq prior to dma allocation, and handle the case if it failsGabor Juhos2009-10-261-2/+10
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18173 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: add error handling to ramips_alloc_dmaGabor Juhos2009-10-261-7/+29
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18172 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: free allocated skbs in ramips_cleanup_dmaGabor Juhos2009-10-261-0/+5
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18171 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: add ramips_setup_dma helper to the ethernet driverGabor Juhos2009-10-261-6/+15
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18170 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: add ramips_cleanup_dma helperGabor Juhos2009-10-261-4/+13
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18169 3c298f89-4303-0410-b956-a3cf2f4a3e73