summaryrefslogtreecommitdiffstats
path: root/drivers (follow)
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] ehea: IBM eHEA Ethernet Device DriverJan-Bernd Themann2006-09-1312-0/+5849
| | | | | | | | | | | | | | | | | | | | | | | | | | Hi Jeff, I fixed the __iomem issue and tested the driver with sparse. Looks good so far. Thanks for your effort. Jan-Bernd Themann Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com> drivers/net/Kconfig | 9 drivers/net/Makefile | 1 drivers/net/ehea/Makefile | 6 drivers/net/ehea/ehea.h | 447 ++++++ drivers/net/ehea/ehea_ethtool.c | 294 ++++ drivers/net/ehea/ehea_hcall.h | 51 drivers/net/ehea/ehea_hw.h | 287 ++++ drivers/net/ehea/ehea_main.c | 2654 ++++++++++++++++++++++++++++++++++++++++ drivers/net/ehea/ehea_phyp.c | 705 ++++++++++ drivers/net/ehea/ehea_phyp.h | 455 ++++++ drivers/net/ehea/ehea_qmr.c | 582 ++++++++ drivers/net/ehea/ehea_qmr.h | 358 +++++ 12 files changed, 5849 insertions(+) Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pcnet32: NAPI implementationDon Fry2006-09-132-28/+121
| | | | | | | | | | | | | | | | | | | | | | Implement NAPI changes to pcnet32 driver. Compile default is off. Listed as experimental. Len and Don both worked on a NAPI implementation and have both tested these changes. An e1000 blasting short packets to the pcnet32 will lockup Don's system until the receive storm stops. Without NAPI Len's system watchdog would expire causing the system to reboot. With NAPI the system will stay operational. Tested ia32 and ppc64. Tested '970A, '971, '972, '973, '975, '976, and '978. The Kconfig changes came from Len. Don is to blame for all the others. Signed-off-by: Len Sorensen <lsorense@csclub.uwaterloo.ca> Signed-off-by: Don Fry <brazilnut@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pcnet32: break receive routine into two pieces.Don Fry2006-09-131-161/+141
| | | | | | | | | Breaking the receive frame processing into two routines for greater clarity. Tested ia32 and ppc64. Signed-off-by: Don Fry <brazilnut@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pcnet32: move/create receive and transmit routinesDon Fry2006-09-131-256/+259
| | | | | | | | | Move the receive routine and create the transmit routine. Tested ia32 and ppc64. Signed-off-by: Don Fry <brazilnut@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pcnet32: magic number cleanupDon Fry2006-09-131-30/+30
| | | | | | | | | Change some magic numbers to clearer names. A few whitespace changes. Tested ia32 and ppc64. Signed-off-by: Don Fry <brazilnut@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* [PATCH] pcnet32: remove unnecessary save/restore register accesses.Don Fry2006-09-131-6/+1
| | | | | | | | | Delete unnecessary save/restore of rap in interrupt handler and statistics. tested ia32 and ppc64. Signed-off-by: Don Fry <brazilnut@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* Merge branch 'upstream-fixes' into upstreamJeff Garzik2006-09-131-0/+2
|\
| * [PATCH] mv643xx_eth: Unmap DMA buffers in receive pathDale Farnsworth2006-09-131-0/+2
| | | | | | | | | | | | | | | | | | Fix a missing call to dma_unmap_single() in the receive path. Without this call, errors have been observed on non-cache-coherent systems. Signed-off-by Dale Farnsworth <dale@farnsworth.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | Merge branch 'upstream-fixes' into upstreamJeff Garzik2006-09-1320-58/+85
|\|
| * Merge branch 'master' into upstream-fixesJeff Garzik2006-09-1320-58/+85
| |\
| | * Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvbLinus Torvalds2006-09-1317-49/+74
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: V4L/DVB (4608c): Fix I2C dependencies for saa7146 modules V4L/DVB (4608b): i2c deps fix on DVB V4L/DVB (4605): Fixes an issue with V4L1 and make headers-install V4L/DVB (4520): Fix an error when loading bttv driver on PV M4900. V4L/DVB (4511): Restore tuner_ymec_tvf66t5_b_dff_pal_ranges[] to fix UHF switch functionality V4L/DVB (4494a): Fix compilation when V4L1 support is not present
| | | * V4L/DVB (4608c): Fix I2C dependencies for saa7146 modulesMauro Carvalho Chehab2006-09-101-4/+4
| | | | | | | | | | | | | | | | Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
| | | * V4L/DVB (4608b): i2c deps fix on DVBAndrew de Quincey2006-09-1010-30/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Several DVB modules depends on I2C Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
| | | * V4L/DVB (4605): Fixes an issue with V4L1 and make headers-installMauro Carvalho Chehab2006-09-103-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | V4L1 support should be disabled when no CONFIG_VIDEO_V4L1_COMPAT is defined, to allow checking for broken V4L2 ports. This is very important during the migration phase for V4L2 API. However, userspace apps should be capable of using both APIs, since they need to test at runtime, via VIDIOCGCAP ioctl, if V4L1 is supported. So, when __KERNEL__ is not defined, those ioctls and corresponding structs should be visible. This patch also removes the obsolete defines HAVE_V4L1 and HAVE_V4L2, that where causing some confusion, and were replaced by CONFIG_VIDEO_V4L1_COMPAT and CONFIG_VIDEO_V4L2. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
| | | * V4L/DVB (4520): Fix an error when loading bttv driver on PV M4900.Mauro Carvalho Chehab2006-09-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, this were reported: Ooops: IR config error [card=139] Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
| | | * V4L/DVB (4511): Restore tuner_ymec_tvf66t5_b_dff_pal_ranges[] to fix UHF ↵Hermann Pitton2006-09-101-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | switch functionality The tena_9533_di_pal_ranges use 0x04 instead the original 0x08 for the UHF (range 2) switching. This is wrong and therefore nothing happens. Restore tuner_ymec_tvf66t5_b_dff_pal_ranges[] to make the UHF switch working again. Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
| | | * V4L/DVB (4494a): Fix compilation when V4L1 support is not presentMauro Carvalho Chehab2006-09-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | VIDIOCGMBUF should be compiled only when V4L1 support is selected, since this ioctl is from the obsoleted API. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
| | * | Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6Linus Torvalds2006-09-132-7/+9
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB: Fix unload oops and memory leak in yealink driver usbserial: Reference leak
| | | * | USB: Fix unload oops and memory leak in yealink driverHenk Vergonet2006-09-121-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes a memory leak and a kernel oops when trying to unload the driver, due to an unbalanced cleanup. Thanks Ivar Jensen for spotting my mistake. Signed-off-by: Henk Vergonet <henk.vergonet@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| | | * | usbserial: Reference leakMatthias Urlichs2006-09-121-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A sufficiently-large number of USB serial devices causes a reference leak when /proc/tty/drivers/usbserial is read. Signed-Off-By: Matthias Urlichs <smurf@smurf.noris.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| | * | | sh64: Trivial build fixes.Paul Mundt2006-09-121-2/+2
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While we've been sorting out the toolchain fiasco, some of the code has suffered a bit of bitrot. Building with GCC4 also brings up some more build warnings. Trivial fixes for both issues. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* | | | [PATCH] e1000: revert 'e1000: Remove 0x1000 as supported device'Auke-Jan H Kok2006-09-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit 'e1000: Remove 0x1000 as supported device' (Jeff Kirsher, 673a052fde79ab5e9dce569b0336358812ddba2d) Removes PIC device ID 8086:1000 from the list of supported devices. A fix was submitted for the original issue (commit 6a9516989f94df10d9a27ba543c6b53b3e69c84a). This commit reverts commit 673a052fde79ab5e9dce569b0336358812ddba2d and re-enables 82542rev3 chips completely. Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | | Merge tag 'r8169-20060912-00' of ↵Jeff Garzik2006-09-131-276/+380
|\ \ \ \ | | | | | | | | | | | | | | | git://electric-eye.fr.zoreil.com/home/romieu/linux-2.6 into tmp
| * | | | r8169: quirk for the 8110sb on arm platformFrancois Romieu2006-09-111-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Inverting the write ordering of the TxDescAddr{High/Low} registers suffices to trigger a sabbat of PCI errors which make the device completely dysfunctional. The issue has not been reported on a different platform. Switching from MMIO accesses to I/O ones as done in Realtek's own driver fixes (papers over ?) the bug as well but I am not thrilled to see everyone pay the I/O price for an obscure bug. This is the minimal change to handle the issue. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Reported-by: Lennert Buytenhek <buytenh@wantstofly.org>
| * | | | r8169: the 0x8136 needs a 8 bytes alignmentFrancois Romieu2006-08-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported by Darren Salt. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: add basic MII ioctl supportFrancois Romieu2006-08-311-0/+28
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: use standard #defines from mii.h instead of declaring private onesFrancois Romieu2006-08-311-62/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some unused stuff goes away btw. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: trim trailing whitespaces and convert whitespaces to tabsFrancois Romieu2006-08-311-33/+32
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: udelay() removalFrancois Romieu2006-08-311-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No need to chew CPU cycles as there is no heavy timing requirement and the delays are always requested from a sleepable context. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: use NETDEV_TX_{BUSY/OK}Francois Romieu2006-08-311-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: sync with vendor's driverFrancois Romieu2006-07-261-74/+144
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - add several PCI ID for the PCI-E adapters ; - new identification strings ; - the RTL_GIGA_MAC_VER_ defines have been renamed to closely match the out-of-tree driver. It makes the comparison less hairy ; - various magic ; - the PCI region for the device with PCI ID 0x8136 is guessed. Explanation: the in-kernel Linux driver is written to allow MM register accesses and avoid the IO tax. The relevant BAR register was found at base address 1 for the plain-old PCI 8169. User reported lspci show that it is found at base address 2 for the new Gigabit PCI-E 816{8/9}. Typically: 01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd.: Unknown device 8168 (rev 01) Subsystem: Unknown device 1631:e015 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0, cache line size 20 Interrupt: pin A routed to IRQ 16 Region 0: I/O ports at b800 [size=256] Region 2: Memory at ff7ff000 (64-bit, non-prefetchable) [size=4K] ^^^^^^^^ So far I have not received any lspci report for the 0x8136 and Realtek's driver do not help: be it under BSD or Linux, their r1000 driver include a USE_IO_SPACE #define but the bar address is always hardcoded to 1 in the MM case. :o/ - the 8168 has been reported to require an extra alignment for its receive buffers. The status of the 8167 and 8136 is not known in this regard. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: remove rtl8169_init_boardFrancois Romieu2006-07-261-105/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rationale: - its signature is not exactly pretty; - it has no knowledge of pci_device_id; - kiss 23 lines good bye. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: hardware flow controlFrancois Romieu2006-07-261-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The datasheet suggests that the device handles the hardware flow control almost automagically. User report a different story, so let's try to twiddle the mii registers. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: RX fifo overflow recoveryFrancois Romieu2006-07-261-4/+9
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | r8169: mac address change supportFrancois Romieu2006-07-261-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix for http://bugzilla.kernel.org/show_bug.cgi?id=6032. Cc: Tim Mattox <tmattox@gmail.com> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
* | | | | Merge tag '8139cp-20060912-00' of ↵Jeff Garzik2006-09-131-63/+51
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | git://electric-eye.fr.zoreil.com/home/romieu/linux-2.6 into tmp
| * | | | | 8139cp: ring_info removal for the transmit pathFrancois Romieu2006-09-121-19/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As long as the descriptor fits on a single cacheline, the change should be almost free. Now ring_info is not used at all. Remove it. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | | 8139cp: use PCI_DEVICE() to shorten the PCI device tableFrancois Romieu2006-08-311-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | | 8139cp: pci_get_drvdata(pdev) can not be NULL in suspend handlerFrançois Romieu2006-08-311-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) pci_set_drvdata() is used in cp_{init/remove}_one to initialize/reset driver_data to the relevant value (resp. net_device * and NULL). 2) each of the 3 relevant functions is issued under (device *)->sem: 2.1) pci_unregister_driver -> driver_unregister -> bus_remove_driver -> driver_detach (takes (device *)->sem) -> __device_release_driver(dev) -> dev->bus-remove(dev) (== pci_device_remove) -> drv->remove(pdev) (== cp_remove_one) [...] pci_dev->driver = NULL; 2.2) pci_register_driver -> __pci_register_driver -> driver_register -> bus_add_driver -> driver_attach -> __driver_attach (takes (device *)->sem) -> driver_probe_device(drv, dev) -> dev->bus->probe(dev) (== pci_device_probe) -> _pci_device_probe(drv, pci_dev) -> pci_call_probe(drv, pci_dev, id) -> drv->probe(dev, id) (== cp_init_one) [...] pci_dev->driver = drv; 2.3) suspend_device (takes (device *)->sem) -> dev->bus->suspend(dev) (== pci_device_suspend) checking for drv = pci_dev->driver != NULL [...] -> drv->suspend(pci_dev, state) (== cp_suspend) dev->sem and the state of pci_dev->driver provide the expected result. St Mary's day was a bit rainy here. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | | 8139cp: removal of useless BUG_ON() checkFrancois Romieu2006-08-311-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | netdev_priv() will provide a nice oops a few lines before the BUG_ON() check. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | | 8139cp: sync the device private data with its r8169 counterpartFrancois Romieu2006-08-311-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | struct cp_private is reorganized to be more easily compared between the r8169 and the 8139cp drivers. The alignment should not be impacted. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | | 8139cp: ring_info removal for the receive pathFrancois Romieu2006-08-311-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ring_info.len field is not used at all. cp_private.rx_skb is turned into an array of sk_buff *. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | | 8139cp: remove gratuitous indirectionFrancois Romieu2006-08-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dev is an argument of the current function. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
| * | | | | 8139cp: trim ring_infoFrancois Romieu2006-08-311-17/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fat removal: the mapping address is available from the Rx/Tx descriptors. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
* | | | | | Merge branch 'upstream-fixes' into upstreamJeff Garzik2006-09-121-4/+4
|\ \ \ \ \ \ | | |_|/ / / | |/| | | |
| * | | | | [PATCH] e1000: fix TX timout hang regression for 82542rev3Auke Kok2006-09-121-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 581d708eb47cccb5f41bc0817e50c9b004011ba8 (oct. 5 2005) introduced partial Multiqueue support for e1000 which broke macro smartness in setting up head/tail registers for 82542 rev3 chipsets, making these adapters completely non-working since 2.6.15. This commit sets the proper head and tail registers for read and write descriptor rings. Ths fix was tested on an 82542 rev3 NIC and newer NICs. Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | | | | Merge branch 'tmp' into upstreamJeff Garzik2006-09-1232-102/+38
|\ \ \ \ \ \
| * | | | | | [PATCH] Remove more unnecessary driver printk'sAndy Gospodarek2006-09-1232-102/+38
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As I promised last week, here is the first pass at removing all unnecessary printk's that exist in network device drivers currently in promiscuous mode. The duplicate messages are not needed so they have been removed. Some of these drivers are quite old and might not need an update, but I did them all anyway. I am currently auditing the remaining conditional printk's and will send out a patch for those soon. Signed-off-by: Andy Gospodarek <andy@greyhouse.net> Signed-off-by: Jeff Garzik <jeff@garzik.org>
* | | | | | Merge branch 'upstream' of ↵Jeff Garzik2006-09-1211-48/+169
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream
| * | | | | | [PATCH] hostap_cs: added support for Proxim Harmony PCI W-Lan cardChristian Steineck2006-09-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | hostap_cs driver - added support for Proxim Harmony PCI W-Lan Card (uses pd6729 based pcmcia2pci bridge) Signed-off-by: Christian Steineck <memphis@machzwo.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>