openwrt/staging/blogic.git
19 years ago[ALSA] hdspm - Fix module parameter description
Takashi Iwai [Tue, 16 Aug 2005 14:55:13 +0000 (16:55 +0200)]
[ALSA] hdspm - Fix module parameter description

RME9652 driver
Fix the module parameter description after proofreading.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] nm256 - Fix PM and irq handling
Takashi Iwai [Tue, 16 Aug 2005 14:54:12 +0000 (16:54 +0200)]
[ALSA] nm256 - Fix PM and irq handling

NM256 driver
- Fixed the PCM resume - restoring the rate setting
- Fixed the handling of buggy irqs
- Dynamically acquire/release irq handler to make the driver more robust
  to unknown irq storms (as OSS driver does).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] intel8x0 - Fix PM
Takashi Iwai [Tue, 16 Aug 2005 14:52:24 +0000 (16:52 +0200)]
[ALSA] intel8x0 - Fix PM

Intel8x0 driver
Fixed the PCM resume of intel8x0.
Restores the requested register setting.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] ALSA timer - fixed compilation
Jaroslav Kysela [Tue, 16 Aug 2005 11:05:43 +0000 (13:05 +0200)]
[ALSA] ALSA timer - fixed compilation

Timer Midlevel

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
19 years ago[ALSA] Timer API - SNDRV_TIMER_EVENT_RESUME - val is resolution in ns
Jaroslav Kysela [Tue, 16 Aug 2005 09:32:04 +0000 (11:32 +0200)]
[ALSA] Timer API - SNDRV_TIMER_EVENT_RESUME - val is resolution in ns

ALSA Core

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
19 years ago[ALSA] Timer API - added SUSPEND/RESUME events
Jaroslav Kysela [Tue, 16 Aug 2005 09:09:05 +0000 (11:09 +0200)]
[ALSA] Timer API - added SUSPEND/RESUME events

PCM Midlevel,Timer Midlevel,ALSA Core
- added SNDRV_TIMER_EVENT_SUSPEND / RESUME events
- changed timer events from PAUSE / CONTINUE in PCM midlevel to SUSPEND / RESUME

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
19 years ago[ALSA] hda-intel: Suspend/resume fixes for PCM devices
Jaroslav Kysela [Mon, 15 Aug 2005 18:53:07 +0000 (20:53 +0200)]
[ALSA] hda-intel: Suspend/resume fixes for PCM devices

HDA Intel driver
- removed SNDRV_PCM_INFO_RESUME (the driver cannot do PCM resume at the time)
- fixed chip->pcm_devs initialization

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
19 years ago[ALSA] hda-patch-realtek - added pci subdevice ID for Acer TravelMate 8100 (3 stack...
Jaroslav Kysela [Mon, 15 Aug 2005 18:01:40 +0000 (20:01 +0200)]
[ALSA] hda-patch-realtek - added pci subdevice ID for Acer TravelMate 8100 (3 stack model + digital out)

HDA Codec driver

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
19 years ago[ALSA] via82xx - Fix SPDIF sample rates
Takashi Iwai [Mon, 15 Aug 2005 13:02:28 +0000 (15:02 +0200)]
[ALSA] via82xx - Fix SPDIF sample rates

VIA82xx driver
Fixed the sample rates set in the fourth DXS channel with Non-VRA mode.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] Fix PCM 32bit compat layer
Takashi Iwai [Mon, 15 Aug 2005 13:01:10 +0000 (15:01 +0200)]
[ALSA] Fix PCM 32bit compat layer

PCM Midlevel
Fixed the handling of boundary in PCM 32bit compat layer.
Positions in hwsync are bound in the 32bit boundary size.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] opl3sa2 - use different name for PnP BIOS driver
Jaroslav Kysela [Mon, 15 Aug 2005 11:08:04 +0000 (13:08 +0200)]
[ALSA] opl3sa2 - use different name for PnP BIOS driver

OPL3SA2 driver
- use different name (opl3sa2-pnpbios) for PnP BIOS driver
- don't print warning when manual config of resources fails (PnP BIOS)

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
19 years ago[ALSA] ac97: make patch_wolfson_wm97??_specific() functions static
Clemens Ladisch [Mon, 15 Aug 2005 07:13:32 +0000 (09:13 +0200)]
[ALSA] ac97: make patch_wolfson_wm97??_specific() functions static

AC97 Codec
Make the patch_wolfson_wm97??_specific() functions static again.
This patch was accidentally reverted in rev. 1.92.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: use vmalloc for the PCM buffer
Clemens Ladisch [Mon, 15 Aug 2005 06:35:25 +0000 (08:35 +0200)]
[ALSA] usb-audio: use vmalloc for the PCM buffer

USB generic driver
With the double buffering, we no longer need contiguous memory for the
PCM buffer, so we can use vmalloc() instead of the preallocation
functions, and increase the maximum size to 256 KB.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: use usb_buffer_alloc/free
Clemens Ladisch [Mon, 15 Aug 2005 06:34:16 +0000 (08:34 +0200)]
[ALSA] usb-audio: use usb_buffer_alloc/free

USB generic driver
Use the USB buffer allocation functions to avoid repeated DMA mappings
of our buffers, which are re-used quite a lot.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: properly lock hwptr_done accesses
Clemens Ladisch [Mon, 15 Aug 2005 06:25:50 +0000 (08:25 +0200)]
[ALSA] usb-audio: properly lock hwptr_done accesses

USB generic driver
Take the substream lock when reading hwptr_done to avoid a race
condition with the updates in the URB callbacks.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: actually schedule playback URBs at frame boundaries
Clemens Ladisch [Mon, 15 Aug 2005 06:25:24 +0000 (08:25 +0200)]
[ALSA] usb-audio: actually schedule playback URBs at frame boundaries

USB generic driver
Change prepare_playback_urb() not to stop preparing packets before a
frame boundary has been reached.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: double-buffer all playback data
Clemens Ladisch [Mon, 15 Aug 2005 06:24:44 +0000 (08:24 +0200)]
[ALSA] usb-audio: double-buffer all playback data

USB generic driver
We always had to use double buffering when capturing, and when playback
data for one URB crosses a buffer boundary.  The latter would make hwptr
updates less precise because the double-buffered data is read from the
buffer much earlier than the other data is read by the host controller.

Double-buffering all data allows to update hwptr immediately after the
data was copied to the USB buffer(s), which has the additional benefit
of avoiding the latency imposed by the host controller's delay of up to
one frame when interrupting.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: optimize handling of capture URBs
Clemens Ladisch [Mon, 15 Aug 2005 06:22:39 +0000 (08:22 +0200)]
[ALSA] usb-audio: optimize handling of capture URBs

USB generic driver
When preparing capture URBs, we don't need to stop when we cross a
period boundary because we now never handle more than one millisecond of
data per URB anyway.

When handling captured data, use an extra flag to call
snd_pcm_period_elapsed() no more than once.  This allows us to move the
period boundary checking code before the copying of the data which
avoids a second locking of the substream's lock.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] Add new card ID. Fixes ALSA bug #1297
James Courtier-Dutton [Fri, 12 Aug 2005 21:54:58 +0000 (23:54 +0200)]
[ALSA] Add new card ID. Fixes ALSA bug #1297

EMU10K1/EMU10K2 driver

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
19 years ago[ALSA] Add new ID. Fixes ALSA bug #1298
James Courtier-Dutton [Fri, 12 Aug 2005 21:50:13 +0000 (23:50 +0200)]
[ALSA] Add new ID. Fixes ALSA bug #1298

CA0106 driver

Signed-off-by: James Courtier-Dutton <James@superbug.co.uk>
19 years ago[ALSA] opl3sa2 - fixed typo in PnP BIOS IDs (YMF0021 -> YMH0021)
Jaroslav Kysela [Fri, 12 Aug 2005 15:35:09 +0000 (17:35 +0200)]
[ALSA] opl3sa2 - fixed typo in PnP BIOS IDs (YMF0021 -> YMH0021)

OPL3SA2 driver

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
19 years ago[ALSA] opl3sa2 driver - added support for PnP BIOS devices
Jaroslav Kysela [Fri, 12 Aug 2005 15:24:24 +0000 (17:24 +0200)]
[ALSA] opl3sa2 driver - added support for PnP BIOS devices

OPL3SA2 driver
The driver has been extended to support also PnP BIOS devices.
The detection path is:

1) detect PnP BIOS devices
2) detect ISA PnP devices

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
19 years ago[ALSA] via82xx - Add DXS entry for MSI K8MM-V
Takashi Iwai [Fri, 12 Aug 2005 14:47:49 +0000 (16:47 +0200)]
[ALSA] via82xx - Add DXS entry for MSI K8MM-V

VIA82xx driver
Added the DXS entry for MSI K8MM-V.
Also fixed a typo in last patch for Acer Aspire 1524 WLMi.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] Add VT1617A codec support
Philip Prindeville [Fri, 12 Aug 2005 14:46:17 +0000 (16:46 +0200)]
[ALSA] Add VT1617A codec support

AC97 Codec
Added (minimal) support of VT1617A codec with SPDIF.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] hda-intel - Add SiS966 support
Takashi Iwai [Fri, 12 Aug 2005 14:44:04 +0000 (16:44 +0200)]
[ALSA] hda-intel - Add SiS966 support

HDA Intel driver
Added SiS966 pci id to snd-hda-intel driver.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] usb-audio: schedule high speed URBs with 1 ms alignment
Clemens Ladisch [Fri, 12 Aug 2005 13:19:39 +0000 (15:19 +0200)]
[ALSA] usb-audio: schedule high speed URBs with 1 ms alignment

USB generic driver
The EHCI driver doesn't interrupt more than once per millisecond, and
organizes all iso transfers with frame-sized ITDs, so we can (try to)
be more efficient by aligning all URBs on frame boundaries.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: make nrpacks parameter writeable
Clemens Ladisch [Fri, 12 Aug 2005 13:18:00 +0000 (15:18 +0200)]
[ALSA] usb-audio: make nrpacks parameter writeable

USB generic driver
The nrpacks module parameter is used only when initializing a playback
stream, so it doesn't hurt to make it writeable.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: fix packets per URB calculation for playback
Clemens Ladisch [Fri, 12 Aug 2005 06:28:27 +0000 (08:28 +0200)]
[ALSA] usb-audio: fix packets per URB calculation for playback

USB generic driver
When determining how many packets are needed for one period, we cannot
assume that all packets have their maximum size -- we always use the
nominal sample rate when sending data, and could use an even lower rate
when the endpoint uses frequency feedback.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] usb-audio: use 1 ms URBs when capturing
Clemens Ladisch [Fri, 12 Aug 2005 06:25:26 +0000 (08:25 +0200)]
[ALSA] usb-audio: use 1 ms URBs when capturing

USB generic driver
When capturing audio data, we do not know beforehand how many samples
the device sends per frame, so we have to use URBs that are as short as
possible to make sure that we can handle period boundaries without any
additional latencies.

Furthermore, the total count of URBs submitted doesn't matter when
capturing, so we can just use the maximum number.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] make local objects static
Clemens Ladisch [Thu, 11 Aug 2005 13:59:17 +0000 (15:59 +0200)]
[ALSA] make local objects static

Memalloc module,PCM Midlevel,Timer Midlevel,GUS Library,AC97 Codec
ALI5451 driver,RME9652 driver
Make some functions/variables that are used in only one file static.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] hda-codec - support for Si3054/5 HDA modems
Sasha Khapyorsky [Thu, 11 Aug 2005 09:18:38 +0000 (11:18 +0200)]
[ALSA] hda-codec - support for Si3054/5 HDA modems

HDA generic driver,HDA Codec driver
Support for Si3054/5 HDA modem codecs.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years agoALSA CVS update
Sasha Khapyorsky [Thu, 11 Aug 2005 09:00:16 +0000 (11:00 +0200)]
ALSA CVS update
HDA Codec driver,HDA generic driver
Summar: hda-codec - MFG support

This adds Modem Functional Group (MFG) support and option for 9600
sample rate.

Signed-off-by: Sasha Khapyorsky <sashak@smlink.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] ALSA's struct _snd_pcm_substream: Obsolete open_flag
Karsten Wiese [Wed, 10 Aug 2005 09:18:19 +0000 (11:18 +0200)]
[ALSA] ALSA's struct _snd_pcm_substream: Obsolete open_flag

PCM Midlevel,ALSA<-OSS emulation,USB USX2Y
This patch removes open_flag from struct _snd_pcm_substream.
All of its uses are substituted by querying struct _snd_pcm_substream's
member ffile instead.

Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] ymfpci: add per-voice volume controls
Clemens Ladisch [Wed, 10 Aug 2005 08:21:43 +0000 (10:21 +0200)]
[ALSA] ymfpci: add per-voice volume controls

YMFPCI driver
Implements mixer controls for the volume of each playback substream of
the main PCM device.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] Fix compiler warnings in PXA2XX-AC97
Dirk Opfer [Mon, 8 Aug 2005 14:29:43 +0000 (16:29 +0200)]
[ALSA] Fix compiler warnings in PXA2XX-AC97

ARM PXA2XX driver
-  change pxa2xx_ac97_do_suspend and pxa2xx_ac97_do_resume to use
   the expected arguments

Signed-off-by: Dirk Opfer <dirk@do13.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] WM9713 modem detection
Liam Girdwood [Fri, 5 Aug 2005 08:25:08 +0000 (10:25 +0200)]
[ALSA] WM9713 modem detection

AC97 Codec
This patch fixes a problem whereby the WM9713 has modem functionality
incorrectly detected after an AC97 cold reset.

Changes:-

  o Cleared AC97_SCAP_MODEM in wm9713 scaps

Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] PXA27x AC97 warm reset
Liam Girdwood [Fri, 5 Aug 2005 08:24:36 +0000 (10:24 +0200)]
[ALSA] PXA27x AC97 warm reset

ARM PXA2XX driver
This patch extends the period of an AC97 warm reset on the PXA27x from
50uS to 500uS. The shorter reset didn't always guarantee that the codec
would wake up.

Changes:-

  o Change pxa27x warm reset period to 500uS
  o Removed double semi-colon.

Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] ad1816a - Add clockfreq module option
Takashi Iwai [Wed, 3 Aug 2005 12:02:47 +0000 (14:02 +0200)]
[ALSA] ad1816a - Add clockfreq module option

Documentation,AD1816A driver
Added clockfreq module option for the card with a different clock frequency
than 33kHz.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] use PCM interface for IEC958 controls
Clemens Ladisch [Wed, 3 Aug 2005 11:50:30 +0000 (13:50 +0200)]
[ALSA] use PCM interface for IEC958 controls

Digigram VX core,ENS1370/1+ driver,CA0106 driver,EMU10K1/EMU10K2 driver
RME HDSP driver,RME9652 driver
For consistency, use the PCM interface instead of MIXER for IEC958
default/mask/stream mixer controls.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] use SNDRV_CTL_NAME_IEC958 macro
Clemens Ladisch [Wed, 3 Aug 2005 11:40:08 +0000 (13:40 +0200)]
[ALSA] use SNDRV_CTL_NAME_IEC958 macro

CMI8330 driver,ENS1370/1+ driver,FM801 driver,VIA82xx driver,AC97 Codec
ALI5451 driver,CS46xx driver,EMU10K1/EMU10K2 driver,HDA Codec driver
ICE1712 driver,ICE1724 driver
Where appropriate, use the SNDRV_CTL_NAME_IEC958 instead of a literal
string.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] ad1816a - Add clockfreq module option
Takashi Iwai [Wed, 3 Aug 2005 12:02:47 +0000 (14:02 +0200)]
[ALSA] ad1816a - Add clockfreq module option

Documentation
Added clockfreq module option for the card with a different clock frequency
than 33kHz.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] adds __init and in snd_memory_init()
Henrik Kretzschmar [Fri, 29 Jul 2005 14:59:31 +0000 (16:59 +0200)]
[ALSA] adds __init and in snd_memory_init()

ALSA Core
This patch adds the __init macro to snd_memory_init().

Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] AC97 bus interface for ad-hoc drivers
Liam Girdwood [Fri, 29 Jul 2005 14:13:36 +0000 (16:13 +0200)]
[ALSA] AC97 bus interface for ad-hoc drivers

AC97 Codec,PCI drivers
I've made the review changes and as requested I've pasted the RFC by
Nicolas below:-

'I would like to know what people think of the following patch.  It
allows for a codec on an AC97 bus to be shared with other drivers which
are completely unrelated to audio.  It registers a new bus type, and
whenever a codec instance is created then a device for it is also
registered with the driver model using that bus type.  This allows, for
example, to use the extra features of the UCB1400 like the touchscreen
interface and the additional GPIOs and ADCs available on that chip for
battery monitoring.  I have a working UCB1400 touchscreen driver here
that simply registers with the driver model happily working alongside
with audio features using this.'

Changes over RFC:-

  o Now matches codec name within codec group.
  o Added ac97_dev_release() to stop kernel complaining about no release
method for device.
  o Added 'config SND_AC97_BUS' to sound/pci/Kconfig and moved 'config
SND_AC97_CODEC' out with the PCI=n statement.
  o module is now called snd-ac97-bus

Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] sound - fix .iface field of mixer control elements
Clemens Ladisch [Fri, 29 Jul 2005 13:32:58 +0000 (15:32 +0200)]
[ALSA] sound - fix .iface field of mixer control elements

Documentation,CS46xx driver,EMU10K1/EMU10K2 driver,AD1848 driver
SB16/AWE driver,CMIPCI driver,ENS1370/1+ driver,RME32 driver
RME96 driver,ICE1712 driver,ICE1724 driver,KORG1212 driver
RME HDSP driver,RME9652 driver
This patch changes .iface to SNDRV_CTL_ELEM_IFACE_MIXER whre _PCM or
_HWDEP was used in controls that are not associated with a specific PCM
(sub)stream or hwdep device, and changes some controls that got
inconsitent .iface values due to copy+paste errors.  Furthermore, it
makes sure that all control that do use _PCM or _HWDEP use the correct
number in the .device field.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
19 years ago[ALSA] via82xx - Add dxs entry for Acer Aspire 1524 WMLi
Takashi Iwai [Fri, 29 Jul 2005 12:18:39 +0000 (14:18 +0200)]
[ALSA] via82xx - Add dxs entry for Acer Aspire 1524 WMLi

VIA82xx driver
Added the dxs entry for Acer Aspire 1524 WMLi.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] hda-codec - Fix LFE volume/switch
Nicolas Graziano [Fri, 29 Jul 2005 10:17:20 +0000 (12:17 +0200)]
[ALSA] hda-codec - Fix LFE volume/switch

HDA Codec driver
Fixed LFE volume/switch control.

Signed-off-by: Nicolas Graziano <nicolas.graziano@wanadoo.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] hda-codec - Add default config for ASUS P5AD2
Takashi Iwai [Fri, 29 Jul 2005 09:56:41 +0000 (11:56 +0200)]
[ALSA] hda-codec - Add default config for ASUS P5AD2

HDA Codec driver
Added the default config for ASUS P5AD2.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] hda-codec - Fix reordering of surround channels
Takashi Iwai [Fri, 29 Jul 2005 09:54:32 +0000 (11:54 +0200)]
[ALSA] hda-codec - Fix reordering of surround channels

HDA Codec driver
- Fixed the reordering of surround channels.
  Originally reported by Nicolas GRAZIANO <nicolas.graziano@wanadoo.fr>.

- Show the selected ssid when debug option is set.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years ago[ALSA] WM97xx AC97 codec controls
Liam Girdwood [Fri, 29 Jul 2005 09:41:55 +0000 (11:41 +0200)]
[ALSA] WM97xx AC97 codec controls

AC97 Codec
o Enhanced current WM97xx support to provide additional controls and
  use the kcontrol suffix naming convention.
o Added AC97_HAS_NO_MIC, AC97_HAS_NO_TONE and AC97_HAS_NO_STD_PCM.
o Cleaned up WM97xx related comments.
o Removed some wm9713 double mono controls and replaced with stereo
  controls.

Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
19 years agoMerge refs/heads/upstream-fixes from master.kernel.org:/pub/scm/linux/kernel/git...
Linus Torvalds [Tue, 30 Aug 2005 05:05:21 +0000 (22:05 -0700)]
Merge refs/heads/upstream-fixes from /linux/kernel/git/jgarzik/netdev-2.6

19 years agoMerge refs/heads/upstream from master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Tue, 30 Aug 2005 05:04:58 +0000 (22:04 -0700)]
Merge refs/heads/upstream from /linux/kernel/git/jgarzik/libata-dev

19 years agoMerge HEAD from master.kernel.org:/pub/scm/linux/kernel/git/paulus/ppc64-2.6
Linus Torvalds [Tue, 30 Aug 2005 04:44:33 +0000 (21:44 -0700)]
Merge HEAD from /linux/kernel/git/paulus/ppc64-2.6

19 years ago[PATCH] s2io build fix
Andrew Morton [Fri, 26 Aug 2005 00:14:46 +0000 (17:14 -0700)]
[PATCH] s2io build fix

Damir Perisa <damir.perisa@solnet.ch> reports:

 drivers/net/s2io.h:765: error: invalid lvalue in assignment
 drivers/net/s2io.h:766: error: invalid lvalue in assignment

That's a gcc4 error.  I don't see why the casts are there anyway..

Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
19 years ago[PATCH] Remove nested feature sections
David Gibson [Wed, 27 Jul 2005 05:47:23 +0000 (15:47 +1000)]
[PATCH] Remove nested feature sections

The {BEGIN,END}_FTR_SECTION asm macros used in ppc64 to nop out
sections of code at runtime cannot be nested.  However, we do nest
them in hash_low.S.  We get away with it there, because there is
nothing between the BEGIN markers for each section.  However, that's
confusing to someone reading the code.

This patch removes the nested ifset and ifclr feature sections,
replacing them with a single feature section in the full mask/value
form.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] ppc64: lparconfig.c memory leak
Joel Schopp [Fri, 12 Aug 2005 19:34:58 +0000 (14:34 -0500)]
[PATCH] ppc64: lparconfig.c memory leak

This patch fixes a rare memory leak found by Coverity.

Signed-off-by: Joel Schopp <jschopp@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] ppc64: of_device.c remove useless code
Joel Schopp [Thu, 11 Aug 2005 22:39:28 +0000 (17:39 -0500)]
[PATCH] ppc64: of_device.c remove useless code

Coverity found more unused code.

Signed-off-by: Joel Schopp <jschopp@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] ppc64: Add CONFIG_HZ
Anton Blanchard [Tue, 23 Aug 2005 22:53:03 +0000 (08:53 +1000)]
[PATCH] ppc64: Add CONFIG_HZ

While ppc64 has the CONFIG_HZ Kconfig option, it wasnt actually being
used.  Connect it up and set all platforms to 250Hz.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] oprofile PVR 970MP
Jake Moilanen [Wed, 24 Aug 2005 20:22:12 +0000 (15:22 -0500)]
[PATCH] oprofile PVR 970MP

Here's the 970MP's PVR (processor version register) entry for oprofile.

Signed-off-by: Jake Moilanen <moilanen@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] PPC64: Don't try to claim memory from OF at 1GB mark
Olof Johansson [Mon, 29 Aug 2005 02:42:10 +0000 (21:42 -0500)]
[PATCH] PPC64: Don't try to claim memory from OF at 1GB mark

Some RS64-based machines (p620, F80, others) have problems with firmware
returning 0xdeadbeef instead of failure to allocations that end at the
1GB mark.

We have two options:
1. Detect the undocumented 0xdeadbeef return value and interpret it as
a failure.
2. Avoid allocating that high.

(2) is really the cleaner solution here. 768MB is plenty of room so use
that as the max alloc_top instead of 1GB.

Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Move all the very similar files to asm-powerpc
Stephen Rothwell [Mon, 29 Aug 2005 04:08:11 +0000 (14:08 +1000)]
[PATCH] Move all the very similar files to asm-powerpc

They differed in either simple comments or in the protecting ifdefs.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Move the identical files from include/asm-ppc{,64}
Stephen Rothwell [Mon, 29 Aug 2005 04:06:56 +0000 (14:06 +1000)]
[PATCH] Move the identical files from include/asm-ppc{,64}

Move the identical files from include/asm-ppc{,64}/ to
include/asm-powerpc/.  Remove hdreg.h completely as it is unused in
the tree.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Create include/asm-powerpc
Stephen Rothwell [Mon, 29 Aug 2005 03:15:50 +0000 (13:15 +1000)]
[PATCH] Create include/asm-powerpc

The ppc and ppc64 trees are hopefully going to merge over time, so this
patch begins the process by creating a place for the merging of the
header files.

Create include/asm-powerpc (and move linkage.h into it from
asm-{ppc,ppc64} since we don't like empty directories).  Modify the
ppc and ppc64 Makefiles to cope.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Make MODULE_DEVICE_TABLE work for vio devices
Stephen Rothwell [Wed, 17 Aug 2005 06:42:59 +0000 (16:42 +1000)]
[PATCH] Make MODULE_DEVICE_TABLE work for vio devices

Make MODULE_DEVICE_TABLE work for vio devices.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Create vio_bus_ops
Stephen Rothwell [Wed, 17 Aug 2005 06:41:44 +0000 (16:41 +1000)]
[PATCH] Create vio_bus_ops

Create vio_bus_ops so that we just pass a structure to vio_bus_init
instead of three separate function pointers.

Rearrange vio.h to avoid forward references. vio.h only needs
struct device_node from prom.h so remove the include and just
declare it.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Create vio_register_device
Stephen Rothwell [Wed, 17 Aug 2005 06:40:12 +0000 (16:40 +1000)]
[PATCH] Create vio_register_device

Take some assignments out of vio_register_device_common and
rename it to vio_register_device.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Formatting changes to vio.c
Stephen Rothwell [Wed, 17 Aug 2005 06:37:35 +0000 (16:37 +1000)]
[PATCH] Formatting changes to vio.c

Formatting changes to vio.c to bring it closer to the
kernel coding standard.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] fix iSeries build for gcc-3.4
Stephen Rothwell [Mon, 29 Aug 2005 08:26:01 +0000 (18:26 +1000)]
[PATCH] fix iSeries build for gcc-3.4

gcc 3.4 (at least the build we are using) puts the gcc generated .ident
string into a .note section at the end of the files it compiles (gcc
3.3.3-hammer and gcc 4.0.2 Debian puts it in the .text section).  This
means that the lparmap.s file we produce in the iSeries build may end with
a .note section.  When we include it into head.S, the assembler can no
longer resolve some of the conditional branches since the target label
ends up too far away.  This patch just forces us back to the .text section
after including lparmap.s.

The breakage was caused by my patch "iSeries build with newer assemblers
and compilers" (sha1-id: 2ad56496627630ebc99f06af5f81ca23e17e014e).

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] Restore lparmap.s include for iSeries
David Gibson [Tue, 30 Aug 2005 02:54:07 +0000 (12:54 +1000)]
[PATCH] Restore lparmap.s include for iSeries

A mistake rebasing the series of ppc64 head.S cleanup patches meant
the #include of lparmap.s, needed for iSeries was lost.  This patch
puts it back again.

Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years ago[PATCH] ppc64: four level pagetables fix
Andrew Morton [Wed, 10 Aug 2005 03:53:41 +0000 (13:53 +1000)]
[PATCH] ppc64: four level pagetables fix

With CONFIG_HUGETLB_PAGE=n:

In file included from kernel/sysctl.c:37:
include/linux/hugetlb.h:104:1: warning: "hugetlb_free_pgd_range" redefined
In file included from include/linux/mm.h:36,
                 from kernel/sysctl.c:23:
include/asm/pgtable.h:492:1: warning: this is the location of the previous definition

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David Gibson <dwg@au1.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
19 years agoMerge HEAD from master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6.git
Linus Torvalds [Tue, 30 Aug 2005 00:36:46 +0000 (17:36 -0700)]
Merge HEAD from /linux/kernel/git/davem/net-2.6.git

19 years ago[PATCH] Lazy page table copies in fork()
Nick Piggin [Sun, 28 Aug 2005 06:49:11 +0000 (16:49 +1000)]
[PATCH] Lazy page table copies in fork()

Defer copying of ptes until fault time when it is possible to reconstruct
the pte from backing store. Idea from Andi Kleen and Nick Piggin.

Thanks to input from Rik van Riel and Linus and to Hugh for correcting
my blundering.

Ray Fucillo <fucillo@intersystems.com> reports:

  "I applied this latest patch to a 2.6.12 kernel and found that it does
   resolve the problem.  Prior to the patch on this machine, I was
   seeing about 23ms spent in fork for ever 100MB of shared memory
   segment.

   After applying the patch, fork is taking about 1ms regardless of the
   shared memory size."

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years agoMerge HEAD from master.kernel.org:/pub/scm/linux/kernel/git/paulus/ppc64-2.6
Linus Torvalds [Tue, 30 Aug 2005 00:11:29 +0000 (17:11 -0700)]
Merge HEAD from /linux/kernel/git/paulus/ppc64-2.6

19 years ago[CCID3]: Call sk->sk_write_space(sk) when receiving a feedback packet
Arnaldo Carvalho de Melo [Mon, 29 Aug 2005 05:15:54 +0000 (02:15 -0300)]
[CCID3]: Call sk->sk_write_space(sk) when receiving a feedback packet

This makes the send rate calculations behave way more closely to what
is specified, with the jitter previously seen on x and x_recv
disappearing completely on non lossy setups.

This resembles the tcp_data_snd_check code, that possibly we'll end up
using in DCCP as well, perhaps moving this code to
inet_connection_sock.

For now I'm doing the simplest implementation tho.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[DCCP]: Introduce DCCP_SOCKOPT_PACKET_SIZE
Arnaldo Carvalho de Melo [Sun, 28 Aug 2005 07:51:32 +0000 (04:51 -0300)]
[DCCP]: Introduce DCCP_SOCKOPT_PACKET_SIZE

So that applications can set dccp_sock->dccps_pkt_size, that in turn
is used in the CCID3 half connection init routines to set
ccid3hc[tr]x_s and use it in its rate calculations.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER6]: Add new ip6tables HOPLIMIT target
Harald Welte [Sun, 28 Aug 2005 05:37:30 +0000 (22:37 -0700)]
[NETFILTER6]: Add new ip6tables HOPLIMIT target

This target allows users to modify the hoplimit header field of the
IPv6 header.

Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NETFILTER]: Add new iptables TTL target
Harald Welte [Sun, 28 Aug 2005 05:37:03 +0000 (22:37 -0700)]
[NETFILTER]: Add new iptables TTL target

This new iptables target allows manipulation of the TTL of an IPv4 packet.

Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[CCID3]: Move ccid3_hc_rx_detect_loss to packet_history.c
Arnaldo Carvalho de Melo [Sun, 28 Aug 2005 05:00:28 +0000 (02:00 -0300)]
[CCID3]: Move ccid3_hc_rx_detect_loss to packet_history.c

Renaming it to dccp_rx_hist_detect_loss.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[CCID3]: Move ccid3_hc_rx_add_hist to packet_history.c
Arnaldo Carvalho de Melo [Sun, 28 Aug 2005 04:19:14 +0000 (01:19 -0300)]
[CCID3]: Move ccid3_hc_rx_add_hist to packet_history.c

Renaming it to dccp_rx_hist_add_packet.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[DCCP]: Move the calc_X routines to dccp_tfrc_lib
Arnaldo Carvalho de Melo [Sun, 28 Aug 2005 03:47:15 +0000 (00:47 -0300)]
[DCCP]: Move the calc_X routines to dccp_tfrc_lib

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[DCCP]: Introduce dccp_tfrc_lib module with net/dccp/ccids/lib/*.c
Arnaldo Carvalho de Melo [Sun, 28 Aug 2005 02:50:46 +0000 (23:50 -0300)]
[DCCP]: Introduce dccp_tfrc_lib module with net/dccp/ccids/lib/*.c

I'll now take a look at the other proposed TFRC DCCP CCIDs to find
more code that is now in ccid3.c and move to this module, the loss
event rate, calc_X, etc most probably will be moved there.

The main goal of these changes is to pave the way for the
implementation of more TFRC based DCCP CCIDs and to shrink ccid3.c,
reducing its complexity and helping in getting it rock solid.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[DCCP]: Just move packet_history.[ch] to net/dccp/ccids/lib/
Arnaldo Carvalho de Melo [Sun, 28 Aug 2005 02:18:26 +0000 (23:18 -0300)]
[DCCP]: Just move packet_history.[ch] to net/dccp/ccids/lib/

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[CCID3]: Move the loss interval code to loss_interval.[ch]
Arnaldo Carvalho de Melo [Sun, 28 Aug 2005 02:03:09 +0000 (23:03 -0300)]
[CCID3]: Move the loss interval code to loss_interval.[ch]

And put this into net/dccp/ccids/lib/, where packet_history.[ch] will also be
moved and then we'll have a tfrc_lib.ko module that will be used by
dccp_ccid3.ko and other CCIDs that are variations of TFRC (RFC 3448).

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[CCID3]: Move the CCID3 defines to ccid3.h
Arnaldo Carvalho de Melo [Sat, 27 Aug 2005 23:20:37 +0000 (20:20 -0300)]
[CCID3]: Move the CCID3 defines to ccid3.h

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[CCID3]: Introduce usecs_div
Arnaldo Carvalho de Melo [Sat, 27 Aug 2005 23:11:28 +0000 (20:11 -0300)]
[CCID3]: Introduce usecs_div

To avoid open coding this all over the place.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[CCID3]: Reorganise timeval handling
Arnaldo Carvalho de Melo [Sat, 27 Aug 2005 21:18:18 +0000 (18:18 -0300)]
[CCID3]: Reorganise timeval handling

Introducing functions to add to or subtract from a timeval variable
and renaming now_delta to timeval_new_delta that calls do_gettimeofday
and then timeval_delta, that should be used when there are several
deltas made relative to the current time or setting variables to it,
so as to avoid calling do_gettimeofday excessively.

I'm leaving these "timeval_" prefixed funcions internal to DCCP for a
while till we're sure there are no subtle bugs in it.

It also is more correct as it checks if the number of usecs added to
or subtracted from a tv_usec field is more than 2 seconds.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[CCID3]: Reflow to mostly fit under 80 columns
Arnaldo Carvalho de Melo [Sat, 27 Aug 2005 06:51:58 +0000 (03:51 -0300)]
[CCID3]: Reflow to mostly fit under 80 columns

No code changes.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[DCCP]: Introduce dccp_wait_for_ccid and use it in dccp_write_xmit
Arnaldo Carvalho de Melo [Sat, 27 Aug 2005 06:06:35 +0000 (03:06 -0300)]
[DCCP]: Introduce dccp_wait_for_ccid and use it in dccp_write_xmit

This is not quite what I think we should have long term but improves
performance for now, so lets use it till we get CCID3 working well,
then we can think about using sk_write_queue, perhaps using some ideas
from Juwen Lai's old stack for 2.4.20.

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[DCCP]: Make the Debug Menu available when DCCP is statically linked too
Arnaldo Carvalho de Melo [Sat, 27 Aug 2005 05:35:30 +0000 (02:35 -0300)]
[DCCP]: Make the Debug Menu available when DCCP is statically linked too

Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NET]: use __read_mostly on kmem_cache_t , DEFINE_SNMP_STAT pointers
Eric Dumazet [Fri, 26 Aug 2005 19:05:31 +0000 (12:05 -0700)]
[NET]: use __read_mostly on kmem_cache_t , DEFINE_SNMP_STAT pointers

This patch puts mostly read only data in the right section
(read_mostly), to help sharing of these data between CPUS without
memory ping pongs.

On one of my production machine, tcp_statistics was sitting in a
heavily modified cache line, so *every* SNMP update had to force a
reload.

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[LIB]: Make TEXTSEARCH_BM plain tristate like the others
David S. Miller [Thu, 25 Aug 2005 23:23:11 +0000 (16:23 -0700)]
[LIB]: Make TEXTSEARCH_BM plain tristate like the others

And select it when the relevant modules are enabled.

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[LIB]: Boyer-Moore extension for textsearch infrastructure strike #2
Pablo Neira Ayuso [Thu, 25 Aug 2005 23:12:22 +0000 (16:12 -0700)]
[LIB]: Boyer-Moore extension for textsearch infrastructure strike #2

Attached the implementation of the Boyer-Moore string search
algorithm for the new textsearch infrastructure.

I've added as well a note about the limitations that this approach
presents, as Thomas has remarked.

Signed-off-by: Pablo Neira Ayuso <pablo@eurodev.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[LIST]: Add docbook header comments for hlist_add_{before,after}_rcu()
Paul E. McKenney [Thu, 25 Aug 2005 23:08:37 +0000 (16:08 -0700)]
[LIST]: Add docbook header comments for hlist_add_{before,after}_rcu()

Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[NET]: net/802: more endian annotations
Alexey Dobriyan [Thu, 25 Aug 2005 23:06:19 +0000 (16:06 -0700)]
[NET]: net/802: more endian annotations

The rest of endian warnings now belongs to tr.c exclusively.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[BNX2]: update version and minor fixes
Michael Chan [Thu, 25 Aug 2005 22:39:15 +0000 (15:39 -0700)]
[BNX2]: update version and minor fixes

Update version and add 4 minor fixes, the last 2 were suggested by
Jeff Garzik:

1. check for a valid ethernet address before setting it
2. zero out bp->regview if init_one encounters an error and unmaps
   the IO address. This prevents remove_one from unmapping again.
3. use netif_rx_schedule() instead of hand coding the same.
4. use IRQ_HANDLED and IRQ_NONE.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[BNX2]: change irq locks to bh locks
Michael Chan [Thu, 25 Aug 2005 22:38:39 +0000 (15:38 -0700)]
[BNX2]: change irq locks to bh locks

Change all locks from spin_lock_irqsave() to spin_lock_bh(). All
places that require spinlocks are in BH context.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[BNX2]: remove atomics in tx
Michael Chan [Thu, 25 Aug 2005 22:36:58 +0000 (15:36 -0700)]
[BNX2]: remove atomics in tx

Remove atomic operations in the fast tx path. Expensive atomic
operations were used to keep track of the number of available tx
descriptors. The new code uses the difference between the consumer
and producer index to determine the number of free tx descriptors.

As suggested by Jeff Garzik, the name of the inline function is
changed to all lower case.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[BNX2]: speedup serdes linkup
Michael Chan [Thu, 25 Aug 2005 22:35:24 +0000 (15:35 -0700)]
[BNX2]: speedup serdes linkup

This speeds up link-up time on 5706 SerDes if the link partner does
not autoneg, a rather common scenario in blade servers. Some blade
servers use IPMI for keyboard input and it's important to minimize
link disruptions.

The speedup is achieved by shortening the timer to (HZ / 3) during
the transient period right after initiating a SerDes autoneg. If
autoneg does not complete, parallel detect can be done sooner. After
the transient period is over, the timer goes back to its normal HZ
interval.

As suggested by Jeff Garzik, the timer initialization is moved to
bnx2_init_board() from bnx2_open().

An eeprom bit is also added to allow default forced SerDes speed for
even faster link-up time.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[BNX2]: Fix rtnl deadlock in bnx2_close
Michael Chan [Thu, 25 Aug 2005 22:34:29 +0000 (15:34 -0700)]
[BNX2]: Fix rtnl deadlock in bnx2_close

This fixes an rtnl deadlock problem when flush_scheduled_work() is
called from bnx2_close(). In rare cases, linkwatch_event() may be on
the workqueue from a previous close of a different device and it will
try to get the rtnl lock which is already held by dev_close().

The fix is to set a flag if we are in the reset task which is run
from the workqueue. bnx2_close() will loop until the flag is cleared.
As suggested by Jeff Garzik, the loop is changed to call msleep(1)
instead of yield() in the original patch.

flush_scheduled_work() is also moved to bnx2_remove_one() before the
netdev is freed.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[IPV4]: Convert FIB Trie to RCU.
Robert Olsson [Thu, 25 Aug 2005 20:01:29 +0000 (13:01 -0700)]
[IPV4]: Convert FIB Trie to RCU.

* Removes RW-lock
* Proteced read functions uses
  rcu_dereference proteced with rcu_read_lock()
* writing of procted pointer w. rcu_assigen_pointer
* Insert/Replace atomic list_replace_rcu
* A BUG_ON condition removed.in trie_rebalance

With help from Paul E. McKenney.

Signed-off-by: Robert Olsson <Robert.Olsson@data.slu.se>
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
19 years ago[IPV4]: Prepare FIB core for RCU.
Robert Olsson [Thu, 25 Aug 2005 20:01:03 +0000 (13:01 -0700)]
[IPV4]: Prepare FIB core for RCU.

* RCU versions of hlist_***_rcu
* fib_alias partial rcu port just whats needed now.

Signed-off-by: Robert Olsson <Robert.Olsson@data.slu.se>
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>