summaryrefslogtreecommitdiffstats
path: root/target/linux/ramips/files/drivers/net
Commit message (Collapse)AuthorAgeFilesLines
* ramips: Rework ramips_eth to not require irqsave locking anymoreblogic2012-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: initial support for Sitecom WL-351 v1 002juhosg2011-12-231-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This add support for the Sitecom WL-351 v1 002. In principle the Engenius ESR9850 should also work with this, but I don't have the hardware to test it. Since an external gigabit switch (RTL8366RB) is used, I had to modify the ramips_esw driver to add a 'bypass' mode, which just configures it to not filter the vlan tags. Also two initialization words (FCT2 and FPA2) are set to different values by u-boot than what the driver is using and it only seems to work correctly when they not overridden by the driver, so I added them to the platform specific data as reg_initval_fct2 and reg_initval_fpa2. With this wired lan works as expected, however I'm still having some trouble with the wireless lan: It only works after I rmmod & re-insmod rt2800pci and then reconfigure it in the webinterface, but not directly after rebooting. The symptom of this is wpad saying: Dec 20 15:45:09 OpenWrt daemon.info hostapd: wlan1: STA <notebookmac> IEEE 802.11: associated (aid 1) Dec 20 15:45:09 OpenWrt daemon.info hostapd: wlan1: STA <notebookmac> WPA: pairwise key handshake completed (RSN) Dec 20 15:45:22 OpenWrt daemon.info hostapd: wlan1: STA <notebookmac> IEEE 802.11: authenticated But wpa_supplicant on the client saying: Authentication with <wl351mac> timed out. Signed-off-by: Tobias Diedrich <ranma+openwrt@tdiedrich.de> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29604 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: add support for the Senao/EnGenius ESR-9753 boardjuhosg2011-12-231-0/+12
| | | | | | Signed-off-by: Artur Wronowski <arteqw@gmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29603 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: allow to specify port layout for the switch of the RT305x/RT3350juhosg2011-08-151-13/+44
| | | | | | Based on a patch by Roman Yeryomin <roman@advem.lv> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27990 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: fix a section mismatch warningjuhosg2011-07-031-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27382 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: fix typosjuhosg2011-01-041-2/+2
| | | | | | Patch from #8577. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24898 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: add more definitionsjuhosg2010-12-081-3/+49
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24340 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: add helper function to set pvidjuhosg2010-12-081-1/+17
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24339 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: add helper function to set vlan membersjuhosg2010-12-081-1/+31
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24338 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: add helper function to set VLAN idjuhosg2010-12-081-2/+17
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24337 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: introduce rt305x_esw_rmw{,_raw} functionjuhosg2010-12-081-0/+23
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24336 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: use rt305x_esw prefix in function namesjuhosg2010-12-081-33/+33
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24335 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: coding style cleanupjuhosg2010-12-081-24/+31
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24334 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: add defines for switch register offsetsjuhosg2010-12-081-24/+52
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24333 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: don't touch GPIO_PURPOSE registerjuhosg2010-12-081-20/+0
| | | | | | It must have been set by the board initialization code. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24332 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: convert it to be a platform driverjuhosg2010-12-082-11/+91
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24331 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: move hardware initialization into a separate functionjuhosg2010-12-081-8/+14
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24330 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: ramips_esw: use a private structure for the functionsjuhosg2010-12-081-36/+43
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24329 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: Use NET_IP_ALIGN instead of hardcoding 2juhosg2010-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 sizejuhosg2010-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 failurejuhosg2010-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_putjuhosg2010-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 againjuhosg2010-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 driverjuhosg2010-07-152-0/+81
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22211 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: Fix bridging in ramips ethernet driverjuhosg2010-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 changingjuhosg2010-01-311-19/+12
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19464 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: update register offsetsjuhosg2010-01-311-8/+8
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19463 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: pass sys_clk via platform_datajuhosg2010-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 interruptsjuhosg2010-01-311-6/+21
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19446 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: remove unnecessary typecastsjuhosg2010-01-311-2/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19445 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: simplify tx_next computationjuhosg2010-01-311-5/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19444 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: simplify tx descriptor initializationjuhosg2010-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 functionsjuhosg2010-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_opsjuhosg2010-01-311-6/+12
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19440 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: fix invalid register writesjuhosg2010-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 loopjuhosg2010-01-301-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19416 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: header file cleanupjuhosg2010-01-301-144/+146
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19415 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips_eth: coding style cleanupjuhosg2010-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 valueblogic2009-10-302-1/+2
| | | | 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 ↵blogic2009-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 loadblogic2009-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 ↵juhosg2009-10-262-1/+204
| | | | | | '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 filejuhosg2009-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 failsjuhosg2009-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_dmajuhosg2009-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_dmajuhosg2009-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 driverjuhosg2009-10-261-6/+15
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18170 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: add ramips_cleanup_dma helperjuhosg2009-10-261-4/+13
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18169 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: remove unnecessary includes in the ethernet driverjuhosg2009-10-261-6/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18168 3c298f89-4303-0410-b956-a3cf2f4a3e73
* ramips: fix dma api usage in the ethernet driverjuhosg2009-10-261-7/+7
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18167 3c298f89-4303-0410-b956-a3cf2f4a3e73