Summary of changes from v2.6.8 to v2.6.9 ============================================ [netdrvr epic100] minor cleanups - extra pci_disable_device() to balance invocation of pci_enable_device() in epic_init_one() (-> error path + epic_remove_one()); - lazy return status in epic_init_one(), tsss...; - memory dedicated to Rx descriptors was not freed after failure of register_netdev() in epic_init_one(); - use of epic_pause() in epic_close() offers a small window for a late interruption just before the final free_irq(). Let's close the window to avoid two epic_rx() threads racing with each other. [netdrvr epic100] napi 1/3 - just shuffle some code around Isolate the classical TX part of epic_interrupt. Innocent code shuffling. [netdrvr epic100] napi 2/3 - receive path [netdrvr epic100] napi 3/3 - transmit path [netdrvr epic100] napi fixes Multiple invocation of __netif_rx_schedule() in epic_interrupt() while epic_poll loops over __netif_rx_complete() leads to serious device refcount leak. [PATCH] epic100: spin_unlock_irqrestore avoidance This patch avoids to duplicate a spin_unlock: - it is mostly an artifact due to wild goto; - it makes the generated code smaller. [PATCH] epic100: code removal in irq handler The loop in the irq handler is not needed any more as the high frequency events have been deferred due to napi usage. Cset exclude: torvalds@evo.osdl.org|ChangeSet|20040401021818|60003 [MMC] Add MMC core support This patch adds core support to the Linux kernel for driving MMC interfaces found on embedded devices, such as found in the Intel PXA and ARM MMCI primecell. This patch does _not_ add support for SD or SDIO cards. It is vaguely based upon the handhelds.org MMC code, but the bulk of the core has been rewritten from scratch. [MMC] Add Kconfig/Makefile changes for MMC support. Since this is currently ARM-only, I've dropped the drivers/Kconfig change for the time being. [MMC] Add ARM MMCI Primecell driver. This patch adds initial support for the ARM MMCI Primecell - one of the drivers for a MMC interface. [MMC] Add PXA MMC interface support. This patch adds support for the Intel PXA MCI interface. [ACPI] ACPICA 20040402 from Bob Moore Fixed an interpreter problem where an indirect store through an ArgX parameter was incorrectly applying the "implicit conversion rules" during the store. From the ACPI specification: "If the target is a method local or argument (LocalX or ArgX), no conversion is performed and the result is stored directly to the target". The new behavior is to disable implicit conversion during ALL stores to an ArgX. Changed the behavior of the _PRW method scan to ignore any and all errors returned by a given _PRW. This prevents the scan from aborting from the failure of any single _PRW. Moved the runtime configuration parameters from the global init procedure to static variables in acglobal.h. This will allow the host to override the default values easily. [ACPI] ACPICA 20040427 from Bob Moore Completed a major overhaul of the GPE handling within ACPI CA. There are now three types of GPEs: wake-only; runtime-only; combination wake/run. The only GPEs allowed to be combination wake/run are for button-style devices such as a control-method power button, control-method sleep button, or a notebook lid switch. GPEs that have an _Lxx or _Exx method and are not referenced by any _PRW methods are marked for "runtime" and hardware enabled. Any GPE that is referenced by a _PRW method is marked for "wake" (and disabled at runtime). However, at sleep time, only those GPEs that have been specifically enabled for wake via the acpi_enable_gpe() interface will actually be hardware enabled. A new external interface has been added, acpi_set_gpe_type() that is meant to be used by device drivers to force a GPE to a particular type. It will be especially useful for the drivers for the button devices mentioned above. Completed restructuring of the ACPI CA initialization sequence so that default operation region handlers are installed before GPEs are initialized and the _PRW methods are executed. This will prevent errors when the _PRW methods attempt to access system memory or I/O space. GPE enable/disable no longer reads the GPE enable register. We now keep the enable info for runtime and wake separate and in the GPE_EVENT_INFO. We thus no longer depend on the hardware to maintain these bits. Always clear the wake status and fixed/GPE status bits before sleep, even for state S5. Improved the AML debugger output for displaying the GPE blocks and their current status. Added new strings for the _OSI method, of the form "Windows 2001 SPx" where x = 0,1,2,3,4. Fixed a problem where the physical address was incorrectly calculated when the Load() operator was used to directly load from an Operation Region (vs. loading from a Field object.) Also added check for minimum table length for this case. Fix for multiple mutex acquisition. Restore original thread SyncLevel on mutex release. Added ACPI_VALID_SXDS flag to the acpi_get_object_info interface for consistency with the other fields returned. Shrunk the ACPI_GPE_EVENT_INFO structure by 40%. There is one such structure for each GPE in the system, so the size of this structure is important. CPU stack requirement reduction: Cleaned up the method execution and object evaluation paths so that now a parameter structure is passed, instead of copying the various method parameters over and over again. In evregion.c: Correctly exit and reenter the interpreter region if and only if dispatching an operation region request to a user-installed handler. Do not exit/reenter when dispatching to a default handler (e.g., default system memory or I/O handlers) [PATCH] r8169: napi support Napi for r8169 (Jon D Mason ). Both Tx and Rx processing are moved to the ->poll() function. [PATCH] r8169: cosmetic renaming of a register RxUnderrun status bit renamed to LinkChg (identical to the 8139cp driver). [PATCH] r8169: janitoring Spring cleanup - unsigned int (u32) should be slightly faster on ppc64 (Jon D Mason); - misc minor de-uglyfication. input: Add 64-bit compatible ioctls for hiddev. [PATCH] r8169: ethtool .set_settings ethtool set_settings support (Andy Lutomirski ). The initial code has been modified so that the settings of parameters for TBI and normal mode do not step on each others shoes. [PATCH] r8169: ethtool .get_{settings/link} - ethtool get_settings() for r8169 (Andy Lutomirski ); - rtl8169_ethtool_ops.get_drvinfo() is set as well; - added some bits to handle the TBI status. The locking does not need to be specially clever. ALSA CVS update - Clemens Ladisch ALSA sequencer,ALSA<-OSS sequencer export snd_seq_set_queue_tempo() for OSS to prevent calling snd_seq_kernel_client_ctl() (using copy_from_user()) in interrupt context ALSA CVS update - Takashi Iwai ATIIXP driver - continue to probe other codecs even if a codec returns error (instead of breaking the probing). this will fix some cases with both AC97 and MC97 codecs. ALSA CVS update - Takashi Iwai Documentation,ICE1712 driver,ICE1724 driver - fixed the description of model module parameters for ice1712 and ice1724 drivers. - added the support of VT1720-based mobo. (still experimental and supporting AC97 only) ALSA CVS update - Takashi Iwai Memalloc module - added ifdef CONFIG_PCI around the enable module option to avoid the compile warnings without PCI support. ALSA CVS update - Takashi Iwai AC97 Codec Core - added the global mutex for ac97_t (ad18xx mutex is removed). used to protect paging and AD18xx multi-codecs. - set PAGE_INT register explicitly before accessing (for STAC9758). - moved ALC650 revision check to patch_alc650(). - support stereo Mic playback. - moved STAC9708 quirk to patch_stac9708(). - don't clear PC_BEEP high bits (ac97 2.3 sets frequency there). - avoid the unnecessary RESET-waiting for audio/modem codec. - fixed the evaluation of modem codec to call mpatch callback properly. - determine the SPDIF rate in the build path. - added suffix argument to snd_ac97_rename|remove|swap_ctl(). - added snd_ac97_rename_vol_ctl(). ALSA CVS update - Takashi Iwai Digigram VX core fixed sleep while atomic in the trigger callback. ALSA CVS update - Takashi Iwai PARISC Harmony driver - fixed the buffer handling without dma_alloc_coherent support. ALSA CVS update - Takashi Iwai Digigram VX core fixed the compile warnings due to the last change. ALSA CVS update - Takashi Iwai Digigram VX core added 'Clock Mode' control to choose the clock source. ALSA CVS update - Takashi Iwai ICE1724 driver avoid to change the AC97 rate registers. this seems conflicting with the rate conversion on VT172x. ALSA CVS update - Clemens Ladisch Wavefront drivers fix possible buffer overflow in wavefront_download_firmware() ALSA CVS update - Takashi Iwai VIA82xx driver added the DXS entry for Mitac/Vobis/Yakumo laptop. ALSA CVS update - Takashi Iwai AC97 Codec Core added ac97_can_spdif() for checking the SPDIF support. ALSA CVS update - Takashi Iwai VIA82xx driver - use snd_pcm_limit_hw_rates() and removed redundant codes. - fixed the rate constraints when 'IEC958 Output Switch' is on. - check the SPDIF support on AC97 and don't build IEC958 stuffs if not available. ALSA CVS update - Jaroslav Kysela AC97 Codec Core Signed-off-by: Kevin Mack For Gateway M675 notebook - this will direct mixer output to speaker, headphone and line-out instead of just the front(DAC-A) signal. ALSA CVS update - Takashi Iwai PARISC Harmony driver fixed typos. ALSA CVS update - Takashi Iwai AC97 Codec Core Avoid warning message during codec probing in case SKIP_AUDIO flag is not set. ALSA CVS update - Takashi Iwai AC97 Codec Core - Added the single mixer control with AC97 2.3 paging. - Handle the paging for some ALC655/658 registers. - Added the experimental support for ALC850. Cset exclude: dtor_core@ameritech.net|ChangeSet|20040510063935|25419 input: An attempt at fixing locking in i8042.c and serio.c input: Fix an oops in poll() on uinput. Thanks to Dmitry Torokhov for suggesting the fix. ALSA CVS update - Jaroslav Kysela ALSA Core Fixed warnings for pci PM callbacks when not CONFIG_PCI ALSA 1.0.5 input: Make atomicity and exclusive access to variables explicit in atkbd.c, using bitops. Signed-off-by: Vojtech Pavlik ALSA CVS update - Takashi Iwai AC97 Codec Core Fixed mutex deadlocks. input: Return 0 from uinput poll if device isn't yet created. Signed-off-by: Vojtech Pavlik input: Explicit variable access rules for psmouse.c, using bitops. input: Add reporting of raw scancodes to atkbd.c Signed-off-by: Vojtech Pavlik input: Use raw events generated by atkbd in keyboard.c to implement true rawmode for PS/2 keyboards. Signed-off-by: Vojtech Pavlik [MMC] Fix PXA MMC interface issues. - Wait for STAT_CLK_EN to clear rather than waiting for the CLK_IS_OFF interrupt when stopping the MMC clock. - Always return the number of data blocks transferred no matter what. - Set the device driver data correctly. input: Fixes in serio locking. We need per-serio lock for passthrough ports, some locks were missing, and spin_lock_irq was wishful thinking in serio_interrupt. There is no guarantee that serio_interrupt won't be called twice at the same time. Signed-off-by: Vojtech Pavlik input: Disable the AUX LoopBack command in i8042.c on Compaq ProLiant 8-way Xeon ProFusion systems, as it causes crashes and reboots on these machines. DMI data is used for determining if the workaround should be enabled. Signed-off-by: Vojtech Pavlik input: Make atkbd.c's atkbd_command() function immune to keys being pressed and scancodes coming from the keyboard while it's executing. Signed-off-by: Vojtech Pavlik input: More locking improvements (and a fix) for serio. This merges both my and Dmitry's changes. Signed-off-by: Vojtech Pavlik input: Add a missong dmi_noloop declaration in i8042.c Signed-off-by: Vojtech Pavlik Cset exclude: dtor_core@ameritech.net|ChangeSet|20040510063935|25419 Input: logips2pp - do not call get_model_info 2 times Signed-off-by: Dmitry Torokhov [PATCH] r8169: link handling and phy reset rework Link handling changes (Andy Lutomirski ): - removed rtl8169_hw_phy_reset() and its busy loop; - RTL8169_PHY_TIMEOUT is x10 to account for the removal of the phy_link_down_cnt loop in rtl8169_phy_timer(); - added spinlocking in timer context for rtl8169_phy_timer to avoid messing with the {set/get}_settings commands issued via ethtool; - more TBI stuff. This patch differs from the former version on the following points: - the LinkChg irq does not enable the phy timer when the link goes down any more; - the phy timer is not enabled in rtl8169_set_speed(); - removal of the initial renegotiation hack. [PATCH] r8169: initial link setup rework Use rtl8169_set_speed() for link setup in rtl8169_init_one(): - the code which handles the option checking is isolated; - display (once) a notice message about the deprecated interface; - rtl8169_open() enables the phy timer if the link is not up; - rtl8169_set_speed() checks that the netdevice is actually ready in order to activate the timer. [PATCH] r8169: gcc bug workaround Add a temporary variable to workaround gcc 2.95.3 bug. [PATCH] r8169: tx lock removal spinlock removal crusade. The patch rephrases the spinlock_irq() in rtl8169_start_xmit() and its companion in the Tx irq handling patch in terms of ordered operations. input: Move CONFIG_USB_HIDDEV a little lower in hiddev.h, to fix compilation breakage when it is not defined. Signed-off-by: Vojtech Pavlik input: Make hardware rawmode optional for AT-keyboards, and check for rawmode bits in keyboard.c Signed-off-by: Vojtech Pavlik input: Add a missing extern i8042_dmi_loop. Signed-off-by: Vojtech Pavlik input: Fix boundary checks for GUSAGE/SUSAGE in hiddev. Signed-off-by: Vojtech Pavlik input: From: Andrew Zabolotny - Implement the 'raw' touchscreen protocol for backward compatibility (/dev/input/ts[0-7] now speaks the protocol of the old /dev/h3600_ts, and the /dev/input/tsraw[0-7] speaks the protocol of the old /dev/h3600_tsraw device). - Support the ioctls for setting the calibration parameters. The default calibration matrix is computed from the xres,yres parameters (duplicate the old behaviour), however this is not enough for a good translation from touchscreen space to screen space. - Fixed a old bug in tsdev: on a pen motion event X1,Y1 -> X2,Y2 the driver would output three events with coordinates: X1,Y1, X2,Y1, X2,Y2. This happened not only with coordinates, but with pressure too. - Update James's email address - Remove mention of Transvirtual Technologies: they no longer exist. Signed-off-by: Vojtech Pavlik Input: mousedev - better handle button presses when under load Signed-off-by: Dmitry Torokhov Input: mousedev - implement tapping for touchpads working in absolute mode, such as Synaptics Signed-off-by: Dmitry Torokhov input: Remove OSB4/Profusion hack in i8042, as it's handled by DMI blacklist now. Signed-off-by: Vojtech Pavlik [PATCH] e100: use NAPI mode all the time I see no reason to keep the non-NAPI option for e100. This patch removes the CONFIG_E100_NAPI option and puts the driver in NAPI mode all the time. Matches the way tg3 works. Unless someone has a really good reason to keep the non-NAPI mode, this should go in for 2.6.7. -scott Input: rearrangements and cleanups in serio.c Signed-off-by: Vojtech Pavlik [CPUFREQ] new Dothan variant for speedstep-centrino Add support for new Dothan variant (CPUID 0x6d6) to speedstep-centrino. Noted to be missing and tested by Athul Acharya. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones input: Fix bad struct hidinput initialization in hid-tmff.c Signed-off-by: Vojtech Pavlik [PATCH] via-velocity: PCI ID move (Note: this serie requires a -mm based kernel as the via-velocity patches are not included in Jeff's -netdev patches). PCI ID moved from the driver to the kernel database. A change for the pci.ids file project at souceforge has been submitted as well. [PATCH] via-velocity: uniformize use of OWNED_BY_NIC Introduce velocity_give_rx_desc() to uniformize the use of OWNED_BY_NIC through the driver. [PATCH] via-velocity: velocity_receive_frame diets Weight loss in velocity_receive_frame(): - isolate the ip header alignment tsk from velocity_receive_frame(); - following p.30 of the datasheet, rdesc0.len includes the CRC length: the amount of data copied during the ip alignment can be shortened. [PATCH] fix via-velocity oopses - Don't register the inet_addr notifier if the hardware is absent. It oopses when other interfaces are being upped. - Mark velocity_remove1() as __devexit_p in the pci_driver table. - c99ification. Signed-off-by: Andrew Morton [PATCH] Restructure reset code Restructure code to make it easier to maintain. rhine_hw_init: resets chip, reloads eeprom rhine_chip_reset: chip reset + what used to be wait_for_reset rhine_reload_eeprom: reload eeprom, re-enable MMIO, disable EEPROM-controlled WOL Note: Chip reset clears a bunch of registers that should be reloaded from EEPROM (which turns off MMIO). Deal with that later. Signed-off-by: Roger Luethi [PATCH] fix mc_filter on big-endian arch A.J. from VIA Networking Technologies noticed that via-rhine is using cpu_to_le32() when preparing mc_filter hashes. This breaks Rhine hardware multicast filters on big-endian architectures. Signed-off-by: Roger Luethi [PATCH] Remove lingering PHY special casing All this code is broken (e.g. unconditionally programs all PHYs as if they were the same model) and/or unused (IntrLinkChange never occurs with driver as is). Signed-off-by: Roger Luethi [PATCH] Rewrite PHY detection Instead of probing, set phy_id to 1 for Rhine III and read phy_id from EEPROM-controlled register for Rhine I/II. Remove code for handling anything other than 1 MII PHY. If it wasn't unnecessary code to begin with, it would need to be fixed because it wouldn't work. Use mii_if_info.phy_id as the only container of phy_id. Not particulary happy about those names (phy_id vs. MII_PHYSIDx), but being consequent about it mitigates confusion. Signed-off-by: Roger Luethi [PATCH] Remove options, full_duplex parameters Nobody complained although media locking parameters were broken forever. They were sort of fixed recently, but the code is still in a bad shape. More seriously, the options/full_duplex stuff has fundamental design problems that have been discussed in-depth on the list (e.g. effect of hotplugging, nameif, suspend/resume). For those needing media locking with Linux 2.6+ via-rhine, ethtool(8) is the replacement. Signed-off-by: Roger Luethi [PATCH] Fix Tx engine race for good It finally dawned on me how to eliminate the race I've been narrowing down with earlier patches: Instead of writing the command registers as one word, write them one at a time (as bytes). The race was for settings bits in ChipCmd and ChipCmd1 (0x09) against the chip clearing CmdTxOn which is in ChipCmd. In addition to writing single bytes, the fix requires a switch from using bit 5 in ChipCmd0 to bit 5 in ChipCmd1 (which is equivalent) to signal Tx demand. Also, don't restart Rx engine "pre-emptively" in rhine_rx, that's a sure way to race with the chip. Introduce RHINE_WAIT_FOR, a macro for small busy loops with primitive completion checking. Signed-off-by: Roger Luethi [PATCH] Media mode rewrite Remove rhine_check_duplex, rhine_timer and related data structures Add rhine_check_media: wrapper for generic mii_check_media, sets duplex bit in MAC Add rhine_enable_linkmon, rhine_disable_linkmon to enable hardware link status monitoring Update mdio_read, mdio_write accordingly Remove get_intr_status check in rhine_start_tx because we are not racing anymore Signed-off-by: Roger Luethi [PATCH] Small fixes and clean-up Bump driver version to mark recent major changes in driver code. Remove backoff parameter. The reason it was once introduced is gone. Continue to go with EEPROM default for now, will hard-wire IEEE backoff algorithm instead (later). Rhine-I needs extra time to recuperate from chip reset before EEPROM reload. Add Rhine model identification. Signed-off-by: Roger Luethi [PATCH] Add WOL support Add rhine_shutdown callback to prepare Rhine power registers for shutdown. Add rhine_get_wol/rhine_set_wol for ethtool ioctl. Signed-off-by: Roger Luethi [PATCH] New driver for MV64340 GigE The Marvell MV64340 is a system controller with PCI and 3 integrated GigE interfaces. Signed-off-by: Ralf Baechle [CPUFREQ] Stop powernow-k7 printk'ing tab characters. Signed-off-by: Dave Jones input: Remove an extra dmi_noloop declaration in i8042.c Signed-off-by: Vojtech Pavlik input: Enhancements/fixes for PSX pad support: * Adds support for more than one controller. Previously more than one controller was initialized and the docs said they worked, but only one was actually read. * Removes unnecessary detection on initialization. This allows the module to be initialized without controllers plugged in (hot swapping controllers works). This removes a warning if the user has an unrecognized controller plugged in, but the only unrecognized controller I have been able to find information about online is the PSX mouse, which I've never actually seen. * Adds a GC_DDR option value to have direction presses register as buttons instead of axes. Allows the module to be used for Dance Dance Revolution emulators like Stepmania. * Adds psx_* to documentation. Signed-off-by: Vojtech Pavlik input: when probing for ImExPS/2 mice, the ImPS/2 sequence needs to be sent first, but the result should be ignored. Signed-off-by: Vojtech Pavlik [PATCH] via-velocity: Rx buffers allocation rework Rework of the Rx buffers allocation: - Rx irq handler (velocity_rx_srv): defer the Rx buffer allocation until the packet processing loop is done; - a separate index related to the Rx descriptor ("rd_dirty") is introduced to distinguish the first Rx descriptor whose buffer has to be refilled. This way the driver does not need to confuse this descriptor with the most recently netif()ed one. Rationale: batch + rx_copybreak; - dirty/empty Rx descriptors are identified through the whole driver via an adequate NULL pointer in the velocity_rd_info[] array (see velocity_rx_refill() and velocity_receive_frame()); - Rx descriptors need to be grouped by a multiple of 4 before they can be handed back to the asic (hardware constraint). This task is moved from the Rx processing loop to the Rx refill function; - factorization of code in velocity_init_rd_ring(). [PATCH] via-velocity: Rx copybreak Handle copybreak. - velocity_rx_refill() is modified to allow the processing of a Rx desc ring wherein the empty skb slots are not necessarily contiguous. Given the preceeding changes, rx_copybreak should not need anything else; - the driver does not rely on rd_info->skb_dma set to NULL any more; - pci_dma_sync_single_for_{cpu/device} changes as a bonus; - more function documentation. Some inspiration borrowed from similar r8169 code. [PATCH] via-velocity: ordering of Rx descriptors operations Force strict ordering of operations on Rx descriptors to avoid any issue related to inline optimization. [PATCH] via-velocity: unneeded forward declarations Removal of unneeded forward declarations. [PATCH] via-velocity warning fixes With CONFIG_PM=n various functions (such as velocity_set_wol) are unused and we get warnings and unused code. Fix that up by moving the functions so they fall inside the callers's #ifdef CONFIG_PM. Remove now-unneeded forward declarations. Signed-off-by: Andrew Morton [ACPI] ACPICA 20040514 from Bob Moore Fixed a problem where hardware GPE enable bits sometimes not set properly during and after GPE method execution. Result of ACPICA 20040427 changes. Removed extra "clear all GPEs" when sleeping/waking. Removed acpi_ht_enable_gpe and acpi_hw_disable_gpe, replaced by the single acpi_hw_write_gpe_enable_reg. Changed a couple of calls to the functions above to the new acpi_ev* calls as appropriate. ACPI_OS_NAME was removed from the OS-specific headers. The default name is now "Microsoft Windows NT" for maximum compatibility. However this can be changed by modifying the acconfig.h file. Fixes EHCI probe issue: http://bugme.osdl.org/show_bug.cgi?id=1762 Allow a single invocation of acpi_install_notify_handler for a handler that traps both types of notifies (System, Device). Use ACPI_ALL_NOTIFY flag. Run _INI methods on ThermalZone objects. This is against the ACPI specification, but there is apparently ASL code in the field that has these _INI methods, and apparently "other" AML interpreters execute them. Performed a full 16/32/64 bit lint that resulted in some small changes. [ACPI] ACPICA 20040527 from Bob Moore Completed a new design and implementation for EBDA (Extended BIOS Data Area) support in the RSDP scan code. The original code improperly scanned for the EBDA by simply scanning from memory location 0 to 0x400. The correct method is to first obtain the EBDA pointer from within the BIOS data area, then scan 1K of memory starting at the EBDA pointer. There appear to be few if any machines that place the RSDP in the EBDA, however. http://bugme.osdl.org/show_bug.cgi?id=2415 Integrated a fix for a possible fault during evaluation of BufferField arguments. Obsolete code that was causing the problem was removed. (Asus laptop boot crash) https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=121760 Found and fixed a problem in the Field Support Code where data could be corrupted on a bit field read that starts on an aligned boundary but does not end on an aligned boundary. Merged the read/write "datum length" calculation code into a common procedure. [ACPI] ACPICA 20040615 from Bob Moore Implemented support for Buffer and String objects (as per ACPI 2.0) for the following ASL operators: LEqual, LGreater, LLess, LGreaterEqual, and LLessEqual. [MMC] MMCI updates. Calculate data timeout correctly. Obtain MCLK rate from clock subsystem. Limit max clock rate properly. Use clock bypass mode for fast data rates. [ACPI] update EC GPE handler to new ACPICA handler type [MMC] Fix some review points from Jens Axboe Remove "suspended" flag, queue plugging/unplugging and associated checks, remove check for oversized requests. [ACPI] fix return-from-sleep PM/ACPI state conversion bug (David Shaohua Li) input: Fix array overflows in keyboard.c when KEY_MAX > keycode > NR_KEYS > 128. Signed-off-by: Vojtech Pavlik ALSA CVS update Documentation Added snd-fm801 tuner parameter description Signed-off-by: Jaroslav Kysela ALSA CVS update ICE1724 driver SPDIF output fixes - Fixed the encoding of SPDIF status bits in the consumer mode. - Change the SPDIF status bits according to the current sample rate. Signed-off-by: Takashi Iwai ALSA CVS update ATIIXP driver,VIA82xx driver Added the missing RESUME info bits to pcm. Signed-off-by: Takashi Iwai ALSA CVS update Intel8x0 driver Added the PCI ID for nVidia CK8. Signed-off-by: Takashi Iwai ALSA CVS update PCM Midlevel,ALSA<-OSS emulation Clean up and optimization of PCM format-specific functions. - Use array indexing instead of huge swith/case. - Removed superfluous handling of floats. - Use memcpy for silencing to simplify the codes. Signed-off-by: Takashi Iwai ALSA CVS update USB generic driver Quattro USB: handle the different endianness of playback and recording sample data Signed-off-by: Clemens Ladisch ALSA CVS update Opti9xx drivers Fixed spin deadlocks. Signed-off-by: Takashi Iwai ALSA CVS update OPL4 add newline at end of file Signed-off-by: Clemens Ladisch ALSA CVS update OSS sequencer emulation Use separate functions for some ioctls to reduce stack usage. Signed-off-by: Clemens Ladisch Signed-off-by: Jaroslav Kysela ALSA CVS update CS46xx driver,MIXART driver reduce stack usage Signed-off-by: Clemens Ladisch ALSA CVS update PCM Midlevel Removed the obsoleted init for boot parameters. Signed-off-by: Takashi Iwai ALSA CVS update ES1968 driver Fix the crash at unloading the module due to the shared interrupt with other devices. Signed-off-by: Karsten Wiese Signed-off-by: Takashi Iwai ALSA CVS update Generic drivers Do the buffer allocation in hw_params callback instead of open callback. This will prevent to use the allocation of excessive size. Pre-allocation is called with the default size 0, ie. no buffer will be pre-allocated as default. Signed-off-by: Takashi Iwai ALSA CVS update PCM Midlevel,ES1968 driver,EMU10K1/EMU10K2 driver,KORG1212 driver Trident driver Clean up the buffer management in the PCM runtime record. The buffer-allocation record is hold in runtime instance, so that it can be checked more cleanly. dma_private is removed from runtime (it's used for SG-buffers). The macro snd_pcm_substream_sgbuf() should be used instead of direct access to the pointer, to retrieve the sgbuf struct from the PCM substream instance. Signed-off-by: Takashi Iwai ALSA CVS update Intel8x0 driver Fixed the calculation of the current DMA position on some sloppy devices. Signed-off-by: Takashi Iwai ALSA CVS update VIA82xx driver Fixed the calculation of the current DMA position at the period boundary. In some cases, DMA residue returns the value 0 during the transition at the DMA boundary. The patch handles it as the position 0. This may prevent the flood of 'invalid last pointer' debug messages on some devices. Signed-off-by: Takashi Iwai ALSA CVS update USB generic driver handle devices that allow setting but not reading sample rate Signed-off-by: Clemens Ladisch ALSA CVS update PCM Midlevel,ALSA Core,RME32 driver,RME96 driver,NM256 driver - Fix the mmap via io_remap_page_range() on nm256, rme32 and rme96. Added SNDRV_PCM_INFO_MMAP_IOMEM to handle this case. - Clean up the indirect accessing on RME32/RME96 drivers. Signed-off-by: Takashi Iwai ALSA CVS update EMU10K1/EMU10K2 driver Merge EFX playback and capture streams to the single device (hw:0,2). Signed-off-by: Takashi Iwai ALSA CVS update au88x0 driver - Fixed the wrong pointer cast on 64bit architectures. Signed-off-by: Andi Kleen Signed-off-by: Takashi Iwai ALSA CVS update PCM Midlevel,ALSA<-OSS emulation,CMIPCI driver reduce stack usage Signed-off-by: Clemens Ladisch ALSA CVS update CMIPCI driver don't sleep in prepare callback Signed-off-by: Clemens Ladisch ALSA CVS update PCM Midlevel Each of snd_pcm_hw_refine_old_user() and snd_pcm_hw_params_old_user() consume 856 bytes of stack and can invoke deep calls via the page allocator. Signed-off-by: Andrew Morton Signed-off-by: Jaroslav Kysela ALSA CVS update USB generic driver new functions snd_usbmidi_input_stop() and snd_usbmidi_input_start() needed by snd-usb-usx2y to be able to use usb_set_interface() Signed-off-by: Clemens Ladisch input: Add Dell SB Live! PCI ID to the emu10k1-gp driver. Reported-by: Francisco Moraes Signed-off-by: Vojtech Pavlik ALSA CVS update ALSA sequencer,Instrument layer,ISA,GUS drivers Clean up Makefiles for the sequencer stuff using reverse selections. Signed-off-by: Takashi Iwai input: Add Audigy LS PCI ID to emu10k1-gp.c Signed-off-by: Vojtech Pavlik [ACPI] enable Embedded Controller (EC)'s General Purpose Event (GPE) from David Shaohua Li [ACPI] enable GPE for ECDT (David Shaohua Li) [ACPI] reserve IOPORTS for ACPI (David Shaohua Li) http://bugzilla.kernel.org/show_bug.cgi?id=2641 input: Add CodeMercs IOWarrior to hid-core device blacklist. Signed-off-by: Vojtech Pavlik input: Fix Peter Nelson's e-mail address in gamecon.c Signed-off-by: Vojtech Pavlik [PATCH] qla1280: add ISP1040 register definitions The old 1020/1040 has some registers where the newer controlers only have reserved space, add that to qla1280.h Signed-off-by: Jes Sorensen Signed-off-by: James Bottomley [PATCH] qla1280: add IS_ISP* helpers The code is already messy due to the explicit pci id checks for 1280 vs 1x160, so add some nice helpers for that. Signed-off-by: Jes Sorensen Signed-off-by: James Bottomley [PATCH] qla1280: cleanup firmware loading, add pio-based loading The ISP1040 needs to load firmware by PIO, and while we're at it clean the convoluted mess of firmware loading up by splitting it into managable subroutines. Signed-off-by: Jes Sorensen Signed-off-by: James Bottomley [PATCH] qla1280: cleanup qla1280_nvram_config qla1280_nvram_config is a huge mess. Split it up into managable subroutines and add suport for the ISP1040 to it. Add missing call to set the age limit also on 1280/1x160. Signed-off-by: Jes Sorensen Signed-off-by: James Bottomley [PATCH] qla1280: cleanup qla1280_initialize_adapter no function changes, just some more gotos and less nested ifs to make the code readable. Signed-off-by: Jes Sorensen Signed-off-by: James Bottomley [PATCH] qla1280: update changelog and version Signed-off-by: Jes Sorensen Signed-off-by: James Bottomley Input: make connect and disconnect methods mandatory for serio drivers since that's where serio_{open|close} are called from to actually bind driver to a port. Signed-off-by: Dmitry Torokhov Input: rename serio->driver to serio->port_data in preparation to sysfs integration Signed-off-by: Dmitry Torokhov Input: more renames in serio in preparations to sysfs integration - serio_dev -> serio_driver - serio_[un]register_device -> serio_[un]register_driver Signed-off-by: Dmitry Torokhov Input: switch to dynamic (heap) serio port allocation in preparation to sysfs integration. By having all data structures dynamically allocated serio driver modules can be unloaded without waiting for the last reference to the port to be dropped. Signed-off-by: Dmitry Torokhov Input: allow serio drivers to create children ports and register these ports for them in serio core to avoid having recursion in connect methods. Signed-off-by: Dmitry Torokhov Input: serio sysfs integration Signed-off-by: Dmitry Torokhov Input: allow users manually rebind serio ports, like this: echo -n "psmouse" > /sys/bus/serio/devices/serio0/driver echo -n "atkbd" > /sys/bus/serio/devices/serio1/driver echo -n "none" > /sys/bus/serio/devices/serio1/driver echo -n "reconnect" > /sys/bus/serio/devices/serio1/driver echo -n "rescan" > /sys/bus/serio/devices/serio1/driver Signed-off-by: Dmitry Torokhov Input: allow marking some drivers (that don't do HW autodetection) as manual bind only. Such drivers will only be bound to a serio port if user requests it by echoing driver name into port's sysfs driver attribute. Signed-off-by: Dmitry Torokhov Input: Add serio_raw driver that binds to serio ports and provides unobstructed access to the underlying serio port via a char device. The driver tries to register char device 10,1 (/dev/psaux) first and if it fails goes for dynamically allocated minor. To bind use sysfs interface: echo -n "serio_raw" > /sys/bus/serio/devices/serioX/driver Signed-off-by: Dmitry Torokhov Input: link serio ports to their parent devices in ambakmi, gscps2, pcips2 and sa1111ps2 drivers Signed-off-by: Dmitry Torokhov input: Fix Kconfig so that the joydump module can be compiled. Reported-by: Matthieu Castet Signed-off-by: Vojtech Pavlik input: Move Compaq ProLiant DMI handling (ServerWorks/OSB workaround) to i8042.c. Signed-off-by: Vojtech Pavlik [CPUFREQ] Fix sparse NULL ptr warning. Signed-off-by: Dave Jones Add dma_declare_coherent_memory() API This adds the description and a null prototype. Signed-off-by: James Bottomley Add memory region bitmap implementations These APIs deal with bitmaps representing contiguous memory regions. The idea is to set, free and find a contiguous area. For ease of implementation (as well as to conform to the standard requirements), the bitmaps always return n aligned n length regions. The implementation is also limited to BITS_PER_LONG contiguous regions. Signed-off-by: James Bottomley Add vmalloc alignment constraints vmalloc is used by ioremap() to get regions for remapping I/O space. To feed these regions back into a __get_free_pages() type memory allocator, they are expected to have more alignment than get_vm_area() proves. So add additional alignment constraints for VM_IOREMAP. Signed-off-by: James Bottomley Add x86 implementation of dma_declare_coherent_memory This actually implements the API (all except for DMA_MEMORY_INCLUDES_CHILDREN). Signed-off-by: James Bottomley Convert NCR_Q720 to use dma_declare_coherent_memory This board makes an ideal example for using the API since it consists of 4 SCSI I/O processors and a 0.5-2MB block of memory on a single MCA card. Signed-off-by: James Bottomley This patch introduces a kcalloc() in the kernel that is used to replace the ALSA subsystem-specific snd_kcalloc() and snd_magic_kcalloc(). Signed-off-by: Pekka Enberg ALSA CVS update AC97 Codec Core Fixed the detection of STAC9708/11 surround control. Signed-off-by: Takashi Iwai ALSA CVS update EMU10K1/EMU10K2 driver Fix Audigy + FX8010 capture (hw:x,2) This patch fixes capture problems from hw:x,2 on Audigy. It is same as previous, because it can be applied cleanly against CVS (I tested version from 23.06.2004) and hope it is still true for current CVS. I tested 4 channel recrding and it was OK. hw:x,2 records outputs from FX8010 (not FX buses) Using 'EFX voices mask' you can set channels what you want record. use alsactl store to store config edit this config (set true for needed channel for 'EFX voices mask' control) - I recorded channels 8,9,14,15 (front and rear output). use alsactl restore to restore config Looks like channel count must be power of 2 (1, 2, 4, 8, ...). Signed-off-by: Peter Zubaj Signed-off-by: Takashi Iwai ALSA CVS update EMU10K1/EMU10K2 driver Audigy 2 ZS - side support Added the support of side speakers on Audigy 2 ZS. TODO - detection of audigy 2 zs. Now it will add side controls to mixer for audigy 2 to. Maybe left or right slider can control volume of back center on audigy 2 too. Signed-off-by: Peter Zubaj Signed-off-by: Takashi Iwai ALSA CVS update ICE1712 driver,ICE1724 driver Fixes for VT1720/VT1724 - Fixed the volume update on aureon. - Removed the bogus master volume from aureon. - Fixed the wrong number of ADCS (not used, though). - Don't access GPIO high bits on VT1720. - Fixed the buffer byte alignment for SPDIF and independen PCMs. - Proper rate constraints according to the I2S/AC-link connection. - Clean up the private data for PCM callbacks. Signed-off-by: Takashi Iwai ALSA CVS update Control Midlevel,ALSA Core,PCM Midlevel,RawMidi Midlevel,Timer Midlevel IOCTL32 emulation,ALSA<-OSS emulation,ALSA sequencer,Instrument layer ALSA<-OSS sequencer,OPL3,EMU8000 driver,AC97 Codec Core,au88x0 driver EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver,Trident driver Synth,Common EMU synth Removal of snd_kcalloc() This patch removes snd_kcalloc() from the kernel and updates callers to use the new generic kcalloc(). Signed-off-by: Pekka Enberg Signed-off-by: Takashi Iwai ALSA CVS update Control Midlevel,ALSA Core,HWDEP Midlevel,PCM Midlevel,RawMidi Midlevel Timer Midlevel,IOCTL32 emulation,ALSA<-OSS emulation,ALSA sequencer Removal and replacement of magic memory allocators and casts (core part) This patch replaces snd_magic_kmalloc(), snd_magic_kcallc() and snd_magic_kfree() with kmalloc(), kcalloc() and kfree(), respectively. The cast via snd_magic_cast() is replaced with the standard cast, too. Signed-off-by: Pekka Enberg Signed-off-by: Takashi Iwai ALSA CVS update ALS4000 driver,ATIIXP driver,AZT3328 driver,BT87x driver,CMIPCI driver CS4281 driver,ENS1370/1+ driver,ES1938 driver,ES1968 driver FM801 driver,Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver RME32 driver,RME96 driver,SonicVibes driver,VIA82xx driver AC97 Codec Core,AK4531 codec,ALI5451 driver,au88x0 driver,CS46xx driver EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver,KORG1212 driver MIXART driver,NM256 driver,RME HDSP driver,RME9652 driver Trident driver,Digigram VX222 driver,YMFPCI driver Removal and replacement of magic memory allocators and casts (pci part) This patch replaces snd_magic_kmalloc(), snd_magic_kcallc() and snd_magic_kfree() with kmalloc(), kcalloc() and kfree(), respectively. The cast via snd_magic_cast() is replaced with the standard cast, too. Signed-off-by: Pekka Enberg Signed-off-by: Takashi Iwai ALSA CVS update ES1688 driver,ALS100 driver,AZT2320 driver,CMI8330 driver,DT019x driver ES18xx driver,OPL3SA2 driver,Sound Scape driver,AD1816A driver AD1848 driver,CS4231 driver,CS4236+ driver,GUS Library,Opti9xx drivers EMU8000 driver,ES968 driver,SB16/AWE driver,SB8 driver,SB drivers Wavefront drivers Removal and replacement of magic memory allocators and casts (isa part) This patch replaces snd_magic_kmalloc(), snd_magic_kcallc() and snd_magic_kfree() with kmalloc(), kcalloc() and kfree(), respectively. The cast via snd_magic_cast() is replaced with the standard cast, too. Signed-off-by: Pekka Enberg Signed-off-by: Takashi Iwai ALSA CVS update Documentation,SA11xx UDA1341 driver,Generic drivers,MPU401 UART,OPL3 OPL4,Digigram VX core,I2C cs8427,I2C lib core,I2C tea6330t,L3 drivers AK4117 receiver,Serial BUS drivers,PARISC Harmony driver Sound Core PDAudioCF driver,Digigram VX Pocket driver,PPC AWACS driver PPC Burgundy driver,PPC DACA driver,PPC PMAC driver,PPC Tumbler driver SPARC AMD7930 driver,SPARC cs4231 driver,Common EMU synth USB generic driver Removal and replacement of magic memory allocators and casts (other parts) This patch replaces snd_magic_kmalloc(), snd_magic_kcallc() and snd_magic_kfree() with kmalloc(), kcalloc() and kfree(), respectively. The cast via snd_magic_cast() is replaced with the standard cast, too. Signed-off-by: Pekka Enberg Signed-off-by: Takashi Iwai ALSA CVS update AC97 Codec Core Fixed STAC9758 output jack selection control - fixed unbalnaced mutex. - use ac97_update_bits_page() instead of snd_ac97_update_bits(). Signed-off-by: Takashi Iwai ALSA CVS update CMIPCI driver Fix the i/o port range of gameport on cmipci Gameport use only 1 I/O port not 8. Attached patch fix gameport on CMIPCI soundcards. Signed-off-by: Artur Frysiak Signed-off-by: Takashi Iwai ALSA CVS update Documentation,PCM Midlevel,RawMidi Midlevel,ALSA Core,Timer Midlevel ALSA<-OSS emulation,ALSA sequencer,Instrument layer,ALSA<-OSS sequencer Clean up of obsolete MODULE_* stuff (core part) Removed MODULE_CLASSES() and MODULE_SYNTAX(). Replaced MODULE_DEVICES() with MODULE_SUPPORTED_DEVICE() Signed-off-by: Takashi Iwai ALSA CVS update ALS100 driver,AZT2320 driver,CMI8330 driver,DT019x driver,ES18xx driver OPL3SA2 driver,Sound Galaxy driver,Sound Scape driver,AD1816A driver AD1848 driver,CS4231 driver,CS4236+ driver,ES1688 driver GUS Classic driver,GUS Extreme driver,GUS MAX driver AMD InterWave driver,Opti9xx drivers,EMU8000 driver,ES968 driver SB16/AWE driver,SB8 driver,SB drivers,Wavefront drivers Clean up of obsolete MODULE_* stuff (isa part) Removed MODULE_CLASSES() and MODULE_SYNTAX(). Replaced MODULE_DEVICES() with MODULE_SUPPORTED_DEVICE() Signed-off-by: Takashi Iwai ALSA CVS update ALS4000 driver,ATIIXP driver,AZT3328 driver,BT87x driver,CMIPCI driver CS4281 driver,ENS1370/1+ driver,ES1938 driver,ES1968 driver FM801 driver,Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver RME32 driver,RME96 driver,SonicVibes driver,VIA82xx driver AC97 Codec Core,ALI5451 driver,au88x0 driver,CS46xx driver EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver,KORG1212 driver MIXART driver,NM256 driver,RME HDSP driver,RME9652 driver Trident driver,Digigram VX222 driver,YMFPCI driver Clean up of obsolete MODULE_* stuff (pci part) Removed MODULE_CLASSES() and MODULE_SYNTAX(). Replaced MODULE_DEVICES() with MODULE_SUPPORTED_DEVICE() Signed-off-by: Takashi Iwai ALSA CVS update SA11xx UDA1341 driver,Generic drivers,MPU401 UART,OPL3,OPL4,L3 drivers PARISC Harmony driver,Sound Core PDAudioCF driver Digigram VX Pocket driver,PPC PowerMac driver,SPARC AMD7930 driver SPARC cs4231 driver,USB generic driver Clean up of obsolete MODULE_* stuff (other part) Removed MODULE_CLASSES() and MODULE_SYNTAX(). Replaced MODULE_DEVICES() with MODULE_SUPPORTED_DEVICE() Signed-off-by: Takashi Iwai ALSA CVS update NM256 driver Added AC97 CD register to the list of allowed registeres. Signed-off-by: Takashi Iwai ALSA CVS update ALSA<-OSS sequencer Suppress the error message when no device is found. Signed-off-by: Takashi Iwai ALSA CVS update AC97 Codec Core Check the validity of registers before creating controls. Signed-off-by: Takashi Iwai ALSA CVS update CS46xx driver,EMU10K1/EMU10K2 driver,PCM Midlevel Clean up of indirect PCM data transfer with helper functions. Signed-off-by: Takashi Iwai ALSA CVS update RME32 driver Added the experimental fullduplex support. Signed-off-by: Takashi Iwai ALSA CVS update PCM Midlevel snd_pcm_timer_resolution_change(): Right, that function doesn't work well for 44100/1024 in 32 bits -- it ends up trying to calculate 1e7 * 1024 / 441 and having to divide both numerator and denominator by 4 (thus losing the rather crucial 1 at the end of 441) before it can do the calculation without overflow. Attached is a patch against 1.0.5a that gets better results in this instance, by leaving the denominator alone and instead doubling the result back up by the same number of times as the multiplier had to be halved by. Signed-off-by: Chris Cannam Signed-off-by: Jaroslav Kysela ALSA CVS update Instrument layer LD .tmp_vmlinux1 sound/built-in.o(.text+0xfb4ae): In function nd_gus_synth_new_device': : undefined reference to nd_seq_iwffff_init' make: *** [.tmp_vmlinux1] Error 1 Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Jaroslav Kysela [PATCH] via-velocity: use common crc16 code for WOL - use common crc16 code for WOL; - remove unused ether_crc. Signed-off-by: Francois Romieu [CPUFREQ] Trailing whitespace removal in longrun driver. Signed-off-by: Dave Jones [CPUFREQ] Fix FSB calculation in powernow-k7 use the maximum fid instead of the current fid. From: Bruno Ducrot Signed-off-by: Dave Jones [CPUFREQ] fix double "out-of-sync" warning on resume. - Rephrase "out-of-sync" warning (partly) based upon Gerald Britton's suggestion - Also update cpufreq's opinion of current cpu frequency upon resume, else the "out-of-sync" warning will appear twice. Thanks to Gerald Britton for noting this. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ] fix userspace resume support. Fix resume support in the userspace cpufreq governor: we need to set the CPU to the frequency last echo'ed by userspace into this governor's files. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones ALSA CVS update EMU10K1/EMU10K2 driver Clean up the invalid (commented out) lines for emu10k1x. Signed-off-by: Takashi Iwai ALSA CVS update PCM Midlevel,RME32 driver - Fixed the int types in indirect_pcm helpers. - Added the missing initialization of fullduplex mode on rme32. Signed-off-by: Takashi Iwai ALSA CVS update ES1938 driver Playing Quake1 (quakeforge-flavor with ALSA-driver) I hear cracks and blibs. Other apps (xine, mpg321) are fine. The OSS driver in 2.6.7 produces no cracks (but reverses stereo BTW). I fixed it, i.e. it works for me: *No swapping of stereo channels *no cracks Signed-off-by: Signed-off-by: Jaroslav Kysela ALSA CVS update au88x0 driver - asXtalkGainsAllChan -> vortex_asXtalkGainsAllChan - fixed extern/static problem Signed-off-by: Jaroslav Kysela [PATCH] convert skge to pci_driver API (2nd try) [PATCH] Fix successive calls to spin_lock_irqsave in sk98lin This patch fixes the few places in sk98lin where it calls spin_lock_saveirq on the same flags variable thus causing interrupts to be disabled upon leaving the driver. [libata] transfer mode cleanup Add MWDMA support, and rework pio/mwdma/udma mode setup. In the lone test case for PATA support, ata_piix, MWDMA mode setting does not appear to work here. UDMA and PIO continue to work, so nobody will really notice. But beware. Probably a driver problem, not a bug in the core. Also, doesn't bother writing to dummy timing registers on ICH5/6 SATA anymore. [libata] fix completion bug, better debug output When using a completion, we need to clear the entry, and furthermore clear the entry before we call the completion. Make debugging output a bit more explicit. [libata] convert set-xfer-mode operation to use ata_queued_cmd [CPUFREQ] Make powernow-k7 debug printk a runtime option. Signed-off-by: Dave Jones [CPUFREQ] REmove more trailing whitespace Signed-off-by: Dave Jones [CPUFREQ] Remove out of date comment from powernow-k7 This has had significant amount of testing since it got merged, and nothing nasty has actually ever happened. Signed-off-by: Dave Jones [libata] transfer mode bug fixes and type cleanup Fix two bugs that causes the recently-added transfer mode code to break on 64-bit platforms. Make associated code more type-correct in the process. [libata sata_promise] convert to using packets for non-data taskfiles This patch fixes another disconnect oops in hiddev. hid-core calls hiddev_disconnect() when the underlying device goes away (hot unplug or system shutdown). Normally, hiddev_disconnect() will clean up nicely and return to hid-core who then frees the hid structure. However, if the corresponding hiddev node is open at disconnect time, hiddev delays the majority of disconnect work until the device is closed via hiddev_release(). hiddev_release() calls hiddev_cleanup() which proceeds to dereference the hid struct which hid-core freed back when the hardware was disconnected. Oops. To solve this, we change hiddev_disconnect() to deregister the hiddev minor and invalidate its table entry immediately and delay only the freeing of the hiddev structure itself. We're protected against future operations on the fd since the major fops check hiddev->exists. There may still be an ordering of events that causes a problem but I can no longer reproduce any manually. There are enough different subsystems and object lifetimes interacting here that I may have screwed something else up; review is certainly welcome. Signed-off-by: Adam Kropelin Signed-off-by: Vojtech Pavlik [PATCH] add new ethernet driver 'gianfar' [libata sata_sx4] deliver non-data taskfiles using Promise packet format [MMC] Fix PXA MCI driver name. [PATCH] Fix warnings drivers/net/sk98lin/skaddr.c From: "Mika Kukkonen" CC [M] drivers/net/sk98lin/skaddr.o drivers/net/sk98lin/skaddr.c: In function `SkAddrMcUpdate': drivers/net/sk98lin/skaddr.c:895: warning: `ReturnCode' might be used uninitialized in this function drivers/net/sk98lin/skaddr.c: In function `SkAddrPromiscuousChange': drivers/net/sk98lin/skaddr.c:1427: warning: `ReturnCode' might be used uninitialized in this function Signed-off-by: Andrew Morton [PATCH] allow modular mv64340_eth Only tested together with some additional patches to make the driver work on PPC that need more work, but the changes are obvious. NTFS: Add support for readv/writev and aio_read/aio_write. Signed-off-by: Anton Altaparmakov Fix incorrect prototype in the dma_declare_coherent_memory API dma_mark_declared_memory_occupied() wasn't declared static inline in the NULL (default) implementation leading to compile failures. [ACPI] reserve EBDA for Dell BIOS that neglects to. (David Shaohua Li) http://bugme.osdl.org/show_bug.cgi?id=2990 [libata] pio/dma flag bug fix, and cleanup In the transfer-mode cleanup recently, the code that set flag ATA_DFLAG_PIO disappeared. Resurrect it. Remove ATA_QCFLAG_DMA, it isn't needed. Always set polling in the ->qc_issue function, rather than force the user to do it when setting up an ata_queued_cmd. This gives maximum flexibility to the driver, letting the driver choose whether or not to poll. [libata] update IDENTIFY DEVICE path to use ata_queued_cmd rather than hand-rolling our own taskfile call (which won't work at all on newer SATA controllers). Individual changes: * use ata_qc_issue to issue identify-device command * implement MMIO path for PIO data xfer * implement PIO error handling path [MMC] Use a consistent naming to refer to mmc_request, mmc_blk_request and request structures to avoid confusion. [MMC] Fix end of request handling. We were mixing end_request with end_that_request_chunk, which is apparantly bad news. Also, the handycapped pxamci driver was telling us that it had transferred all data successfully on error, which is obviously wrong. NTFS: Change ntfs_write_inode to return 0 on success and -errno on error and create a wrapper ntfs_write_inode_vfs that does not have a return value and use the wrapper for the VFS super_operations write_inode function. Signed-off-by: Anton Altaparmakov NTFS: Implement fsync, fdatasync, and msync both for files (fs/ntfs/file.c) and directories (fs/ntfs/dir.c). Signed-off-by: Anton Altaparmakov [CPUFREQ] fix whitespace after merge. Signed-off-by: Dave Jones Fix bug in __get_vm_area() alignment code If we are still above the vma start address on the last vma, we can use addr even if it is inside the vma (i.e. addr < vma->addr + vma->size). Fix this by aligning addr past the end of the vma in this case [PATCH] fix compiler warnings in mv64340_eth [PATCH] remove dead code from mv64340_eth [PATCH] Fix sparc compile error in dma-mapping.h William Lee Irwin III wrote: > > SPLIT include/linux/autoconf.h -> include/config/* > CHK include/linux/compile.h > UPD include/linux/compile.h > In file included from include/asm/sbus.h:10, > from arch/sparc64/kernel/auxio.c:15: It needs err.h. Signed-off-by: James Bottomley Fix region sizing problem in dma_mark_declared_memory_occupied() The current code reserves too few pages if addr isn't page aligned and size just spans onto the last page. Fix by increasing size by the addr misalignment amount. Signed-off-by: James Bottomley [libata] ATAPI work - PIO xfer, completion function Move hand-coded ATA Data register I/O from ata_pio_sector() to its own function ata_data_xfer(), so that it may also be used to send the ATAPI packet to hardware. Use ata_data_xfer() in ATAPI packet send. Separate ATA and ATAPI completion functions. [PCI, libata] Fix "combined mode" PCI quirk for ICH6 The hardware vendor, in their infinite wisdom, make the combined mode configuration register different between ICH5 and ICH6. Take this into account. dma_alloc_coherent() still needs to support a NULL device Fix the part of the on-chip memory API that broke this. Signed-off-by: James Bottomley [libata ata_piix] make sure AHCI is disabled, if h/w is used by this driver AHCI must be disabled if we are to have access to taskfile registers. [libata] flags cleanup Remove unused/redundant flags ATA_DFLAG_{MASTER,WCACHE} [PATCH] fix JAZZ_ESP driver config depends Use correct config symbol name for MACH_JAZZ in JAZZ_ESP driver config. Acked by Ralf. Signed-off-by: Randy Dunlap Signed-off-by: James Bottomley [PATCH] aacraid reset handler This restores a fix to the aacraid reset handler. It makes sure that there are no active commands on any attached device before exiting with SUCCESS. Signed-off-by: Mark Haverkamp Signed-off-by: James Bottomley [PATCH] fix scsi_remove_device locking The following patch fixes an oops I was seeing on a machine with misconfigured scsi cables, but could feasibly happen in other paths. The oops was occurring because scsi_remove_device was getting called for a device before scsi_add_device had fully completed. This resulted in sysfs_remove_link being called with a NULL dentry. Signed-off-by: Brian King Signed-off-by: James Bottomley MPT Fusion driver 3.01.10 update From: "Moore, Eric Dean" This driver incorporates the patches from Christoph Hellwig and Masao Fukuchi. Changelog of this release: * Patch provided by Masao Fukuchi [fukuchi.masao@jp.fujitsu.com] - mptctl updates for hot plug * Patch provided by Christoph Hellwig [hch@infradead.org] - mptlan updates for hot plug - remove CONFIG_LBD ifdefs from fusion { mptscsih.c} Signed-off-by: James Bottomley [PATCH] mptbase.c warning fix drivers/message/fusion/mptbase.c: In function `GetIocFacts': drivers/message/fusion/mptbase.c:2420: warning: int format, different type arg (arg 4) Signed-off-by: Andrew Morton Signed-off-by: James Bottomley [PATCH] tmscsim: kernel bugzilla bug #2139 > Short: The attached patch fixes the bug-report #2139 from kernel bugzilla. I wasn't quite convenient with the previous version of the patch, but I just wanted to get it working at first and get some comments as to whether the approach (put a workaround vs. blacklisting) is at all valid. Since no objections arrived, I guess, nobody minds this small trick. So, I am enclosing a reworked patch, which does essentially the same, but has some more careful checking, and overall looks saner, than the previous one. Signed-off-by: James Bottomley [PATCH] update contact address for SCSI megaraid.c If you send an email to linux-megaraid-devel@dell.com, you get an automated response to send the mail to linux-scsi@vger.kernel.org instead. The patch below updates megaraid.c accordingly. Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley [libata] ATAPI work - cdb len, new taskfile protocol, cleanups * new helper atapi_cdb_len() in linux/ata.h, use it after IDENTIFY PACKET DEVICE command completes * add new taskfile protocol ATA_PROT_ATAPI_NODATA * store scsi cdb in ata_queued_cmd. This removes another dependence on the scsi layer, and enables us to issue an internal REQUEST SENSE. * store cdb len in ata_port * new constant ATAPI_CDB_LEN for max cdb length * move ATA taskfile and SCSI cdb near the top of ata_queued_cmd, for better cacheline friendliness. [CPUFREQ] reorder cpufreq.c for inlining Trying to compile drivers/cpufreq/cpufreq.c with gcc 3.4 and # define inline __inline__ __attribute__((always_inline)) results in the following compile error: CC drivers/cpufreq/cpufreq.o drivers/cpufreq/cpufreq.c: In function `cpufreq_resume': drivers/cpufreq/cpufreq.c:39: sorry, unimplemented: inlining failed in call to 'adjust_jiffies': function body not available drivers/cpufreq/cpufreq.c:628: sorry, unimplemented: called from here make[2]: *** [drivers/cpufreq/cpufreq.o] Error 1 Signed-off-by: Adrian Bunk Signed-off-by: Dave Jones [PATCH] warning fix to include/scsi/scsi_device.h From: Mika Kukkonen CC [M] drivers/block/cciss.o In file included from drivers/scsi/scsi.h:27, from drivers/block/cciss_scsi.c:31, from drivers/block/cciss.c:188: include/scsi/scsi_device.h:191: warning: `inline' is not at beginning of declaration Another case of reordering the 'inline' and function return value. Signed-off-by: Andrew Morton Signed-off-by: James Bottomley [PATCH] SCSI ips: remove inlines Trying to compile drivers/scsi/ips.c with gcc 3.4 and # define inline __inline__ __attribute__((always_inline)) results in the following error: <-- snip --> ... CC drivers/scsi/ips.o drivers/scsi/ips.c: In function `ips_eh_abort': drivers/scsi/ips.c:490: sorry, unimplemented: inlining failed in call to 'ips_removeq_copp': function body not available drivers/scsi/ips.c:843: sorry, unimplemented: called from here drivers/scsi/ips.c:488: sorry, unimplemented: inlining failed in call to 'ips_removeq_wait': function body not available drivers/scsi/ips.c:847: sorry, unimplemented: called from here make[2]: *** [drivers/scsi/ips.o] Error 1 <-- snip --> The patch below removes all inlines from ips.c. As a side effect, this showed that 3 formerly inlined functions are completely unused which are also removed in the patch. An alternative approach to removing the inlines would be to keep all inlines that are _really_ required and reorder the functions in the file accordingly. diffstat output: drivers/scsi/ips.c | 130 ++++++--------------------------------------- 1 files changed, 19 insertions(+), 111 deletions(-) Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley [CPUFREQ] fix CONFIG_ACPI_PROCESSOR="m", CONFIG_X86_POWERNOW_K{7,8}="y" build issue Fix the build dependency between powernow-k{7,8} and acpi/processor.o by adding a CONFIG_X86_POWERNOW_K{7,8}_ACPI bool, just like SPEEDSTEP_CENTRINO does it. See http://forums.gentoo.org/viewtopic.php?t=186887 for a bugreport. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [CPUFREQ] powernowk8_cpu_exit may not be __exit but can be __devexit. Thanks to Arjan for noticing this bug. Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones [ACPI] fix ability to set thermal trip points (Hugo Haas, Stefan Seyfried) eg. # echo -n "100:90:80:70:60:50" > /proc/acpi/thermal_zone/THRM/trip_points http://bugzilla.kernel.org/show_bug.cgi?id=2588 NTFS: 2.1.16 - Implement access time updates in fs/ntfs/inode.c::ntfs_write_inode. Signed-off-by: Anton Altaparmakov [PATCH] [sparse] minor #if complaint Minor sparse warning fix. it doesn't like #if when #ifdef is intended. Signed-off-by: Stephen Hemminger [ACPI] /proc/acpi/thermal_zone/THRM/cooling_mode Add concept of (mandatory) "critical", when (optional) "passive" and "active" are not present. (Zhenyu Z Wang) http://bugzilla.kernel.org/show_bug.cgi?id=1770 [netdrvr mv643xx] rename from mv64340 to mv643xx And move MIPS-specific header to include/linux. [PATCH] GT96100 update Move GT-64240 NIC definitions which previously did live elsewhere into a new header file. Mostly cosmetic cleanup and microfixes for gt64240.c. [ACPI] save/restore ELCR on suspend/resume (David Shaohua Li) http://bugzilla.kernel.org/show_bug.cgi?id=2643 [ACPI] add SMP suport to processor driver (Venkatesh Pallipadi) http://bugzilla.kernel.org/show_bug.cgi?id=2615 [ACPI] Tell the BIOS Linux can handle Enhanced Speed Step (EST). (Venkatesh Pallipadi) http://bugzilla.kernel.org/show_bug.cgi?id=2712 [ADD] Add pci=firmware command line option This change is specifically needed for the IXP2000 platform. IXP2000 platforms have various PCI devices with large memory space requirements (~3.5 GB total sometimes) and a banked PCI window that allows for accessing all 4GB of memory space. The FW configures the devices on the bus in such a way that standard linux drivers (e100, e1000, ide) can work w/o any changes and places devices specific to Intel's closed source IXA sdk in regions of PCI memory space that require using special registers on the IXP. This can be accomplished in the kernel using a board-specific enumerator or a lot of fixups, but it is far easier to just accept what the FW has provided. Signed-off-by: Deepak Saxena [PATCH] PCI Hotplug: acpiphp extension for 2.6.7, part 1 This patch adds the ability to register callback functions with the acpiphp core to set and get the current attention LED status. The reason this is needed is because there is not set ACPI standard for how this is done so each hardware platform may implement it differently. To keep hardware specific code out of acpiphp, we allow other modules to register their code with it. Signed-off-by: Vernon Mauery Signed-off-by: Greg Kroah-Hartman [PATCH] PCI Hotplug: acpiphp extension for 2.6.7 part 2 This patch adds the first driver that actually uses the callback function for attention LEDs that the acpiphp-attention patch adds. It searches the ACPI namespace for IBM hardware, sets up the callbacks and sets up a handler to read ACPI events and forward them on to /proc/acpi/event. It also exports an ACPI table that shows current hotplug status to userland. Signed-off-by: Vernon Mauery Signed-off-by: Greg Kroah-Hartman [PATCH] PCI: more New PCI vendor/device ID for Radisys ENP-2611 board OK, sorry to bother, some more bits. - Add PCI IDs for the IXP2400 and IXP2800 network processors. - Fix typo in description for 8086:9000. - Correct tab->space after #define in definition of IXP4xx device ID. - ENP-2611 can appear behind a 21555. Signed-off-by: Greg Kroah-Hartman [PATCH] PCI Hotplug: rpaphp_add_slot.patch I found a bug in rpaphp code during DLPAR I/O testing. When DLPAR ADD a non-empty I/O slot to a partition, an adapter in the slot didn't get configured. The attached patch fixes that. Signed-off-by: Linda Xie Signed-off-by: Greg Kroah-Hartman [ACPI] IOAPIC suspend/resume (David Shaohua Li) http://bugzilla.kernel.org/show_bug.cgi?id=3037 [ACPI] ACPI bus support for wakeup GPE (David Shaohua Li) http://bugzilla.kernel.org/show_bug.cgi?id=1415 [ACPI] Create /proc/acpi/wakeup to allow enabling the optional wakeup event sources. (David Shaohua Li) http://bugzilla.kernel.org/show_bug.cgi?id=1415 [ACPI] Enable run-time CM button/LID events (David Shaohua Li) http://bugzilla.kernel.org/show_bug.cgi?id=1415 [PATCH] another small advansys cleanup The patch below does the following small cleanups for the advansys driver: - remove obsolete maintainer information - remove kernel 2.2 code from advansys.h diffstat output: MAINTAINERS | 7 drivers/scsi/advansys.c | 342 +++++++--------------------------------- drivers/scsi/advansys.h | 26 --- 3 files changed, 60 insertions(+), 315 deletions(-) Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley [ACPI] ACPICA 20040715 from Bob Moore Restructured the internal HW GPE interfaces to pass/track the current state of interrupts (enabled/disabled) in order to avoid possible deadlock and increase flexibility of the interfaces. Implemented a "lexicographical compare" for String and Buffer objects within the logical operators -- LGreater, LLess, LGreaterEqual, and LLessEqual -- as per further clarification to the ACPI specification. Behavior is similar to C library "strcmp". Completed a major reduction in CPU stack use for the acpi_get_firmware_table external function. In the 32-bit non-debug case, the stack use has been reduced from 168 bytes to 32 bytes. Deployed a new run-time configuration flag, acpi_gbl_enable_interpeter_slack, whose purpose is to allow the AML interpreter to forgive certain bad AML constructs. Default setting is FALSE. Implemented the first use of acpi_gbl_enable_interpeter_slack in the Field IO support code. If enabled, it allows field access to go beyond the end of a region definition if the field is within the region length rounded up to the next access width boundary (a common coding error.) Renamed OSD_HANDLER to acpi_osd_handler, and OSD_EXECUTION_CALLBACK to acpi_osd_exec_callback for consistency with other ACPI symbols. Also, these symbols are lowercased by the latest version of the acpisrc tool. The prototypes for the PCI interfaces in acpiosxf.h have been updated to rename "register" to simply "reg" to prevent certain compilers from complaining. [Power Mgmt] Make pmdisk dependent on swsusp. [Power Mgmt] Remove duplicate relocate_pagedir() from pmdisk. - Expose and use version in swsusp. [Power Mgmt] Remove more duplicate code from pmdisk. - Use read_swapfiles() in swsusp and rename to swsusp_swap_check(). - Use lock_swapdevices() in swsusp and rename to swsusp_swap_lock(). [Power Mgmt] Share variables between pmdisk and swsusp. - In pmdisk, change pm_pagedir_nosave back to pagedir_nosave, and pmdisk_pages back to nr_copy_pages. - Mark them, and other page count/pagedir variables extern. - Make sure they're not static in swsusp. - Remove mention from include/linux/suspend.h, since no one else needs them. [Power Mgmt] Merge first part of image writing code. - Introduce helpers to swsusp - swsusp_write_page(), swsusp_data_write() and swsusp_data_free(). - Delete duplicate copies from pmdisk and fixup names in calls. - Clean up write_suspend_image() in swsusp and use the helpers. [Power Mgmt] Consolidate code for allocating image pages in pmdisk and swsusp - Move helpers calc_order(), alloc_pagedir(), alloc_image_pages(), enough_free_mem(), and enough_swap() into swsusp. - Wrap them all with a new function - swsusp_alloc(). - Fix up pmdisk to just call that. - Fix up suspend_prepare_image() to call that, instead of doing it inline. [Power Mgmt] Consolidate page count/copy code of pmdisk and swsusp. - Split count_and_copy_data_pages() into count_data_pages() and copy_data_pages(). - Move helper saveable() from pmdisk to swsusp, and update to work with page zones. - Get rid of uneeded defines in pmdisk. [swsusp] Add helper suspend_finish, move common code there. - Move call out of assembly-callbacks and into software_suspend() after do_magic() returns. [Power Mgmt] Consolidate pmdisk and swsusp low-level handling. - Split do_magic into swsusp_arch_suspend() and swsusp_arch_resume(). - Clean up based on pmdisk implementation - Only save registers we need to. - Use rep;movsl for copying, rather than doing each byte. - Create swsusp_suspend and swsusp_resume wrappers for calling the assmebly routines that: - Call {save,restore}_processor_state() in each. - Disable/enable interrupts in each. - Call swsusp_{suspend,restore} in software_{suspend,resume} - Kill all the do_magic_* functions. - Remove prototypes from linux/suspend.h - Remove similar pmdisk functions. - Update calls in kernel/power/disk.c to use swsusp versions. [Power Mgmt] Remove arch/i386/power/pmdisk.S [Power Mgmt] Fix up call in kernel/power/disk.c to swsusp_suspend(). [Power Mgmt] Consolidate pmdisk and swsusp early swap access. - Move bio helpers to swsusp. - Convert swsusp to use them, rathen buffer_heads. - Expose and fix up calls in pmdisk. - Clean up swsusp::read_suspend_image() a bit. [Power Mgmt] Merge pmdisk/swsusp image reading code. - Create swsusp_data_read() and call from read_suspend_image() in both swsusp and pmdisk. - Mark swsusp_pagedir_relocate() as static again. [Power Mgmt] Merge swsusp and pmdisk info headers. - Move definition of struct pmdsik_info to power.h and rename to struct swsusp_info. - Kill struct suspend_header. - Move helpers from pmdisk into swsusp: init_header(), dump_info(), write_header(), sanity_check(), check_header(). - Fix up calls in pmdisk to call the right ones. - Clean up swsusp code to use helpers; delete duplicates. [swsusp] Fix nasty bug in calculating next address to read from. - The bio code already does this for us.. [Power Mgmt] Merge pmdisk and swsusp signature handling. - Move struct pmdisk_header definition to swsusp and change name to struct swsusp_header. - Statically allocate one (swsusp_header), and use it during mark_swapfiles() and when checking sig on resume. - Move check_sig() from pmdisk to swsusp. - Wrap with swsusp_verify(), and move check_header() there. - Fix up calls in pmdisk and swsusp. - Make new wrapper swsusp_close_swap() and call from write_suspend_image(). - Look for swsusp_info info in swsusp_header.swsusp_info, instead of magic location at end of struct. [Power Mgmt] Merge pmdisk and swsusp pagedir handling. This embodies the core of the swsusp->pmdisk cleanups. Instead of using the ->dummy variable at the end of each pagedir for a linked list of the page dirs, this uses a static array, which is kept in the empty space of the swsusp header. There are 768 entries, and could be scaled up based on the size of the page and the amount of room remaining. 768 should be enough anyway, since each entry is a swp_entry_t to a page-length array of pages. With larger systems and more memory come larger pages, so each page-sized array will automatically scale up. This replaces the read_suspend_image() and write_suspend_image() in swsusp with the much more concise pmdisk versions (not that big of change at this point) and fixes up the callers so software_resume() gets it right. Also, mark the helpers only used in swsusp as static again. [Power Mgmt] Merge pmdisk and swsusp read wrappers. - Merge pmdisk_read() and __read_suspend_image() and rename to swsusp_read() - Fix up call in kernel/power/disk.c to call new name. - Remove extra error checking from software_resume(). [Power Mgmt] Merge pmdisk and swsusp write wrappers. - Merge suspend_save_image() from both into one. - Rename to swsusp_write(). - Remove pmdisk_write(). - Fixup call in kernel/power/disk.c and software_suspend(). - Mark lock_swapdevices() static again. [Power Mgmt] Remove pmdisk_free() - Change name of free_suspend_pagedir() to swsusp_free(). - Call from kernel/power/disk.c [Power Mgmt] Make default partition config option part of swsusp. - Remove from pmdisk. - Remove pmdisk= command line option. [Power Mgmt] Remove pmdisk. - Remove kernel/power/pmdisk.c. - Remove CONFIG_PM_STD config option. - Fix up Makefile. [swsusp] Remove unneeded suspend_pagedir_lock. [Power Mgmt] Merge swsusp entry points with the PM core. - Add {enable,disable}_nonboot_cpus() to prepare() and finish() in kernel/power/disk.c - Move swsusp __setup options there. Remove resume_status variable in favor of simpler 'noresume' variable, and check it in pm_resume(). - Remove software_resume() from swsusp; rename pm_resume() to software_resume(). The latter is considerably cleaner, and leverages the core code. - Move software_suspend() to kernel/power/main.c and shrink it down a wrapper that takes pm_sem and calls pm_suspend_disk(), which does the same as the old software_suspend() did. This keeps the same entry points (via ACPI sleep and the reboot() syscall), but actually allows those to use the low-level power states of the system rather than always shutting off the system. - Remove now-unused functions from swsusp. [swsusp] Fix nasty typo. Input: move input/serio closer to the top of drivers/Makefile so serio_bus is available early Signed-off-by: Dmitry Torokhov Input: rearrange code in sunzilog so it registers its serio ports only after hardware was fully initialized and with interrupts tuned back on, otherwise it deadlocks. Signed-off-by: Dmitry Torokhov Input: workaround for i8042 active multiplexing controllers losing track of where data is coming from. Also sprinkled some "likely"s in i8042 interrupt handler. Signed-off-by: Dmitry Torokhov Input: add serio_pause_rx and serio_continue_rx so drivers can protect their critical sections from port's interrupt handler Signed-off-by: Dmitry Torokhov Input: when changing psmouse state (activated, ignore) use srio_pause_rx/ serio_continue_rx so it will not fight with the interrupt handler Signed-off-by: Dmitry Torokhov Input: do not call protocol handler in psmouse unless mouse is filly initialized - helps when USB Legacy emulation gets in our way and starts generating junk data stream while psmouse is detecting hardware Signed-off-by: Dmitry Torokhov Input: synaptics - do not try to process packets from slave device as if they were coming form the touchpad itself if pass-through port is disconnected, just pass them to serio core and it will attempt to bind proper driver to the port Signed-off-by: Dmitry Torokhov Input: rearrange activation/children probe sequence in psmouse so reconnect on children ports works even after parent port is fully activated: - when connecting/reconnecting a port always activate it - when connecting/reconnecting a pass-throgh port deactivate parent first and activate it after connect is done Signed-off-by: Dmitry Torokhov Input: drop __attribute__ ((packed)) from mousedev_emul Signed-off-by: Dmitry Torokhov Input: make i8042 a platform device instead of system device so its serio ports have proper parent Signed-off-by: Dmitry Torokhov Input: integrate ct82c710, maceps2, q40kbd and rpckbd with sysfs as platform devices so their serio ports have proper parents Signed-off-by: Dmitry Torokhov Input: Switch to use bus' default device and driver attributes to manage serio sysfs attributes Signed-off-by: Dmitry Torokhov Input: allow marking serio ports (in addition to serio drivers) as manual bind only, export the flag through sysfs echo -n "manual" > /sys/bus/serio/devices/serio0/bind_mode echo -n "auto" > /sys/bus/serio/drivers/serio_raw/bind_mode Signed-off-by: Dmitry Torokhov Input: serio - switch to use driver_find, adjust reference count Signed-off-by: Dmitry Torokhov NTFS: Implement bitmap modification code (fs/ntfs/bitmap.[hc]). This includes functions to set/clear a single bit or a run of bits. Signed-off-by: Anton Altaparmakov NTFS: Wrap the new bitmap.[hc] code in #ifdef NTFS_RW / #endif. Signed-off-by: Anton Altaparmakov NTFS: Rename run_list to runlist everywhere to bring in line with libntfs. Signed-off-by: Anton Altaparmakov NTFS: Rename map_runlist() to ntfs_map_runlist(). Signed-off-by: Anton Altaparmakov NTFS: Rename vcn_to_lcn() to ntfs_vcn_to_lcn(). Signed-off-by: Anton Altaparmakov NTFS: Complete "run list" to "runlist" renaming. Signed-off-by: Anton Altaparmakov NTFS: Move a NULL check to before the first use of the pointer. Signed-off-by: Anton Altaparmakov NTFS: Add fs/ntfs/attrib.[hc]::ntfs_find_vcn(). Signed-off-by: Anton Altaparmakov [CPUFREQ] Fix up some comments in longhaul. Some of this stuff is very wrong, time to sit down with datasheets and fix up some of this mess. The problem is this driver pulls info from multiple datasheets, and some of them conflict. Signed-off-by: Dave Jones [CPUFREQ] abstract out powersaver code in longhaul driver. 99% of these two implementations are the same, so abstract it out into a seperate function. Also add another bunch of comments. Signed-off-by: Dave Jones [CPUFREQ] disable interrupts around transitions in longhaul. Re-reading the spec revealed this omission. Signed-off-by: Dave Jones [NETFILTER]: ip_nat_snmp call skb_make_writable() The snmp helper needs an explicit call to skb_ip_make_writable. Please apply. Signed-off-by: James Morris Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: ipt_ULOG fix for last packet delay The ULOG target used to delay the last packet until another one was received. This patch fixes the issue. Signed-off-by: Ruby Joker Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Use new module_param() api This patch makes all of ipv4/ipv6 netfilter use the 'new' module_param API. Signed-off-by: Rusty Russell Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Fix mutex declaration On Sun, Jun 20, 2004 at 01:23:28PM +0200, Christoph Hellwig wrote: > okay, the gunk we had in arp_tables is in ip6_tables and ip6_tables, > too. Signed-off-by: Christoph Hellwig Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Use slab cache for ip_conntrack_expect This patch adds a new slab cache (ip_conntrack_expect) for expectations. Signed-off-by: Pablo Neira Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Connection based accounting This patch adds a config option to enable per-flow packet and byte accounting to ip_conntrack. Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Move /proc/net/ip_conntrack to seq_file This patch makes ip_conntrack use the seq_file API Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: New ip_sctp match This patch adds ipt_sctp, enabling iptables to match on sctp ports and chunktypes. Signed-off-by: Kiran Kumar Immidi Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Make 'helper' list of ip_nat_core static This patch makes the 'helper' symbol static to not pollute the namespace Signed-off-by: Rusty Russell Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: init_conntrack() optimization This patch optimizes the code path during init_conntrack() Signed-off-by: Pablo Neira Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Move error tracking into conntrack protocol helper This patch moves icmp_error_track out of the generic conntrack core and into the icmp helper, where it really belongs. It also adds some generic infrastructure for logging packets that are 'out of spec'. Signed-off-by: Pablo Neira Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Add conntrack runtime statistics This patch adds some runtime-statistics to the connection tracking core, pretty similar to what 'rtstat' does for the routing cache. This was the last patch in this incremental set. The only thing I still have pending at this time is the tcp window tracking code. Signed-off-by: Martin Josefsson Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Add tcp window tracking This is the tcp window tracking patch, incremental to all previous changes. It is now by default enabled (i.e. in 'conservative' mode). If you think it's better to leave it disabled ('liberal' mode), you can change ip_conntrack_tcp_be_liberal to a different default value. Cheers, Signed-off-by: Jozsef Kadlecski Signed-off-by: Harald Welte Signed-off-by: David S. Miller [NETFILTER]: Missing sysctl.h bits from tcp window tracking changes. Signed-off-by: Harald Welte Signed-off-by: David S. Miller input: Re-add PC Speaker support for PPC Signed-off-by: Olaf Hering Signed-off-by: Vojtech Pavlik [PATCH] Remove obsolete code in 8390 driver The 8390 drivers had provision for using a single Tx buffer, which was educational back in the day when it served as an example driver, but it really hasn't been used and can go away which will make future maintenance easier. [PATCH] module_param for acenic Convert acenic driver to use module_param instead of the older MODULE_PARM macro. Someday, Rusty wants to get rid of MODULE_PARM. Signed-off-by: Stephen Hemminger [PATCH] acenic - don't print eth%d in messages Get rid of all the places the acenic driver could print "eth%d" because the device hasn't been registered yet. Use the method of having a name pointer in the private device structure that changes from pci_name() to dev->name. There was already a field named 'name[]' in the private data structure, but it was set and never used! Use netdev_priv(dev) rather than dev->priv as well. Signed-off-by: Stephen Hemminger [PATCH] remove old ifdefs net/eepro100.c Patches to remove some old ifdefs, 2.2 comptability. then remove unused #include applies cleanly to 2.6.8-rc2 From: Domen Puncer Signed-off-by: Maximilian Attems [PATCH] 2.6.8-rc1-mm1: 8139too: uninline rtl8139_start_thread On Wed, Jul 14, 2004 at 10:29:18PM +0200, Dominik Karall wrote: > On Wednesday 14 July 2004 03:25, Andrew Morton wrote: > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.8-rc1/2.6 > >.8-rc1-mm1/ > > CC [M] drivers/net/8139too.o > drivers/net/8139too.c: In function `rtl8139_open': > drivers/net/8139too.c:616: nicht implementiert: >>inline<< beim Aufruf von > >>rtl8139_start_thread<< gescheitert: function body not available > drivers/net/8139too.c:1362: nicht implementiert: von hier aufgerufen > make[3]: *** [drivers/net/8139too.o] Fehler 1 > make[2]: *** [drivers/net] Fehler 2 > make[1]: *** [drivers] Fehler 2 > make[1]: Verlasse Verzeichnis »/usr/src/linux-2.6.6« > make: *** [stamp-build] Fehler 2 > > gcc 3.4 I should be fast at going through my gcc 3.4 TODO list... Fix below. > greets > dominik cu Adrian <-- snip --> uninline rtl8139_start_thread in drivers/net/8139too.c . Signed-off-by: Adrian Bunk Input: fix psmouse_sendbyte logic - correctly return NAK when command times out on our side - always reset ACK flag, even when serio_write fails Signed-off-by: Dmitry Torokhov Input: psmouse - harden command mode processing logic Signed-off-by: Dmitry Torokhov Input: switch psmouse driver from busy-polling for command completion to waiting for event Signed-off-by: Dmitry Torokhov Input: atkbd - harden ACK/NAK and command processing logic Signed-off-by: Dmitry Torokhov Input: switch atkbd driver from busy-polling for command completion to waiting for event Signed-off-by: Dmitry Torokhov Input: fix reader wakeup conditions in mousedev, joydev and tsdev (we want readers to wake up when underlying device is gone so they would get -ENODEV and close the device). Signed-off-by: Dmitry Torokhov Input: fix absolute device handling in mousedev that was broken by recent change that tried to do better multiplexing. Now every client will keep its own virtual cursor position and both absolute and relative events will update it Signed-off-by: Dmitry Torokhov ALSA CVS update Intel8x0 driver set msbits for 20-bit sample format Signed-off-by: Clemens Ladisch ALSA CVS update OPL4 reorganize locking; optimize memory accesses Signed-off-by: Clemens Ladisch ALSA CVS update Generic drivers,AK4531 codec One space at the end of a line is evil. So how do we call it if a line has 300 of them? :) Signed-off-by: Clemens Ladisch ALSA CVS update USB generic driver remove whitespace at end of lines Signed-off-by: Clemens Ladisch ALSA CVS update PCM Midlevel fix memory leak Signed-off-by: Clemens Ladisch ALSA CVS update GUS Library,Wavefront drivers reduce stack usage; fix buffer overflow Signed-off-by: Clemens Ladisch ALSA CVS update AMD InterWave driver reduce stack usage; fix ROM checksum check Signed-off-by: Clemens Ladisch ALSA CVS update AC97 Codec Core fix odd comment :) Signed-off-by: Clemens Ladisch ALSA CVS update USB generic driver allow USB MIDI devices without audio control interface Signed-off-by: Clemens Ladisch ALSA CVS update Documentation,AC97 Codec Core,ATIIXP driver,CS4281 driver ENS1370/1+ driver,ES1968 driver,FM801 driver,Intel8x0 driver Intel8x0-modem driver,Maestro3 driver,VIA82xx driver,ALI5451 driver au88x0 driver,CS46xx driver,EMU10K1/EMU10K2 driver,ICE1712 driver ICE1724 driver,NM256 driver,Trident driver,YMFPCI driver move AC'97 bus callbacks into seperate ops record; remove ac97_bus_t template requirement from snd_ac97_bus() Signed-off-by: Clemens Ladisch ALSA CVS update Documentation Removed obsolete sndmagic.h. Signed-off-by: Takashi Iwai ALSA CVS update ALSA Core Fixed compile warnings withoug CONFIG_PM. Signed-off-by: Takashi Iwai ALSA CVS update Documentation Fixed missing . Signed-off-by: Takashi Iwai ALSA CVS update Memalloc module - Don't mark pages from dma_alloc_coherent as reserved. The pages from __get_free_pages() are still marked as reserved, but this could be also unnecessary. - Fixed a typo in comment. - Fixed the pre-allocated buffer size for rme9652 & hdsp. Signed-off-by: Takashi Iwai ALSA CVS update CS46xx driver change codec index computation in snd_cs46xx_read/write; replace ac97_t template with ac97_template_t Signed-off-by: Clemens Ladisch ALSA CVS update Documentation,AC97 Codec Core,ATIIXP driver,CS4281 driver ENS1370/1+ driver,ES1968 driver,FM801 driver,Intel8x0 driver Intel8x0-modem driver,Maestro3 driver,VIA82xx driver,ALI5451 driver au88x0 driver,EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver NM256 driver,Trident driver,YMFPCI driver replace ac97_t template with ac97_template_t Signed-off-by: Clemens Ladisch ALSA CVS update ALSA<-OSS emulation fix missing semaphore release in snd_mixer_oss_build_input() Signed-off-by: Clemens Ladisch ALSA CVS update Documentation fix typo Signed-off-by: Clemens Ladisch ALSA CVS update RME HDSP driver ALSA rme9652/hdsp: remove inlines The patch below removes all inlines from hdsp.c. As a side effect, it showed that snd_hdsp_9652_disable_mixer() is completely unused, and it's therefore also removed in the patch. Signed-off-by: Adrian Bunk Signed-off-by: Takashi Iwai ALSA CVS update ATIIXP driver Fixed a typo in the check of buffer/period size configuration. Signed-off-by: Takashi Iwai ALSA CVS update Documentation,PCI drivers,ATIIXP-modem driver Added snd-atiixp driver for ATI IXP AC97 modem controllers. Signed-off-by: Takashi Iwai ALSA CVS update Memalloc module Mark the allocated DMA pages as reserved for certain architectures. Signed-off-by: Takashi Iwai ALSA CVS update Control Midlevel Fixed the unbalanced spinlock in the error path. Signed-off-by: Takashi Iwai ALSA CVS update Intel8x0-modem driver Added -MODEM suffix to the driver name string to distinguish from the intel8x0 audio driver. Signed-off-by: Takashi Iwai ALSA CVS update CS46xx driver Fixed a compile warning in the debug code. Signed-off-by: Takashi Iwai ALSA CVS update Documentation,PCM Midlevel Changed the atomicity of PCM prepare callback. The PCM prepare callback is now non-atomic, so that the driver can use the functions calling schedule (e.g. kmalloc with GFP_KERNEL). Signed-off-by: Takashi Iwai ALSA CVS update ALS4000 driver,ATIIXP driver,ATIIXP-modem driver,AZT3328 driver BT87x driver,CMIPCI driver,CS4281 driver,ENS1370/1+ driver ES1968 driver,FM801 driver,Intel8x0 driver,Maestro3 driver,RME32 driver RME96 driver,SonicVibes driver,VIA82xx driver,ALI5451 driver CS46xx driver,EMU10K1/EMU10K2 driver,ICE1712 driver,ICE1724 driver KORG1212 driver,MIXART driver,NM256 driver,RME HDSP driver RME9652 driver,Trident driver,YMFPCI driver,PPC PMAC driver USB generic driver Clean up spinlocks. - Removed superfluous spinlocks. - Replaced spin_lock_irqsave() with spin_lock_irq() in the obvious places. - Make sure that prepare callback be non-atomic. - Removed SNDRV_PCM_INFO_NONATOMIC_OPS flag (which is default now). Signed-off-by: Takashi Iwai ALSA CVS update AC97 Codec Core,Intel8x0 driver,Intel8x0-modem driver Fixed the detection of sample rates with no VRA support. - Changed ac97bus->vra to ac97bus->no_vra to indicate the VRA is NOT supported. - In the case of no_vra=1, only 48k is set as the possible rates in snd_ac97_pcm_assign(). Signed-off-by: Takashi Iwai ALSA CVS update EMU10K1/EMU10K2 driver Enable low latency EFX capture on emu10k1 The following patch fixes EFX capture on the emu10k1. The capture_period_sizes table is in bytes, but the hardware constraint was being set in frames. Signed-off-by: Lee Revell Signed-off-by: Takashi Iwai ALSA CVS update VIA82xx driver Added the ac97_quirk entry for ECS K7VTA3 v8.0 mobo. Signed-off-by: Takashi Iwai ALSA CVS update ALSA sequencer Fixed the bad check on copy_from_user() return value Signed-off-by: Mika Kukkonen Signed-off-by: Takashi Iwai ALSA CVS update EMU10K1/EMU10K2 driver Fixed the detection of Audigy 2 ZS. Signed-off-by: Lee Revell Signed-off-by: Takashi Iwai ALSA CVS update ALI5451 driver Fixed the suspend/resume. The suspend callback wasn't set the power state correctly, so the resume process was skipped. Signed-off-by: Takashi Iwai ALSA CVS update EMU10K1/EMU10K2 driver,Trident driver,ALS4000 driver,ATIIXP driver ATIIXP-modem driver,AZT3328 driver,BT87x driver,CMIPCI driver CS4281 driver,ENS1370/1+ driver,ES1938 driver,ES1968 driver FM801 driver,Intel8x0 driver,Intel8x0-modem driver,Maestro3 driver RME32 driver,RME96 driver,SonicVibes driver,VIA82xx driver ALI5451 driver,ICE1712 driver,ICE1724 driver,KORG1212 driver MIXART driver,RME HDSP driver,RME9652 driver,Digigram VX222 driver Clean up the PCI resource allocation. Replaced the manual resource allocations with request_[mem_]region() with pci_request_regions(). Signed-off-by: Takashi Iwai ALSA CVS update Documentation Changed the description of PCI resource allocation to use pci_request_regions(). Signed-off-by: Takashi Iwai ALSA CVS update ALSA Core,ATIIXP driver,ATIIXP-modem driver,Intel8x0 driver VIA82xx driver Clean up the suspend/resume: save/restore of pci state PCI status is restored in the common resume callback. (Stored in the saved_config array of pci_dev struct.) Signed-off-by: Takashi Iwai ALSA CVS update ALI5451 driver Added the missing snd_power_change_state() in the resume callback. Signed-off-by: Takashi Iwai ALSA CVS update Documentation,SA11xx UDA1341 driver,PCM Midlevel,IOCTL32 emulation ALSA<-OSS emulation,Generic drivers,I2C cs8427,I2C tea6330t,L3 drivers OPL3SA2 driver,AD1816A driver,CS4231 driver,CS4236+ driver ES1688 driver,GUS Library,AMD InterWave driver,Opti9xx drivers EMU8000 driver,PARISC Harmony driver,AZT3328 driver,CMIPCI driver CS4281 driver,FM801 driver,Intel8x0 driver,Maestro3 driver,RME32 driver RME96 driver,SonicVibes driver,AK4531 codec,CS46xx driver ICE1712 driver,KORG1212 driver,NM256 driver,RME HDSP driver RME9652 driver,YMFPCI driver,PPC AWACS driver,PPC Burgundy driver PPC DACA driver,SPARC AMD7930 driver,SPARC cs4231 driver Common EMU synth use ARRAY_SIZE() instead of sizeof() computations Signed-off-by: Clemens Ladisch ALSA CVS update BT87x driver use exact values of analog clock rate Signed-off-by: Clemens Ladisch ALSA CVS update PPC The alsa driver for powermacs requires i2c support. Signed-off-by: Olaf Hering Signed-off-by: Jaroslav Kysela ALSA CVS update ALSA Core use list_for_each() in core/memory.c Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Jaroslav Kysela ALSA CVS update PPC PMAC driver Fixed typo. Signed-off-by: Nicolas Kaiser Signed-off-by: Jaroslav Kysela ALSA CVS update PPC PowerMac driver Fixed typo. Signed-off-by: Nicolas Kaiser Signed-off-by: Jaroslav Kysela ALSA CVS update ALSA Core,MIXART driver Removed the obsolete NONATOMIC_OPS flag. Signed-off-by: Takashi Iwai ALSA CVS update ICE1712 driver Added master volume control. The master volume control is added again, this time with the digital attenuation so that it works independently from the DAC volumes. Signed-off-by: Takashi Iwai ALSA CVS update ALSA Core Added unlikely() to the debug check macros. Signed-off-by: Takashi Iwai ALSA CVS update ALSA Core Clean up: removed ifdefs and obsolete codes. Signed-off-by: Takashi Iwai ALSA CVS update Control Midlevel,HWDEP Midlevel,ALSA Core,PCM Midlevel,RawMidi Midlevel Timer Midlevel,ALSA<-OSS emulation,ALSA sequencer,ALSA<-OSS sequencer Unlock BKL in ioctl callback to avoid the long preempt-disabling. Signed-off-by: Takashi Iwai ALSA CVS update PCM Midlevel Fixed/improved XRUN detection - don't print XRUN message in the case of draining. - pointer callback can return SNDRV_PCM_POS_XRUN to notify the middle layer. Signed-off-by: Takashi Iwai ALSA CVS update PCM Midlevel Notify PCM buffer overrun of the intermidate buffer on capture. Signed-off-by: Takashi Iwai ALSA CVS update RME32 driver Fixed the fullduplex mode. Signed-off-by: Takashi Iwai ALSA CVS update RME32 driver Fixed the address mask to get the correct DMA pointer value. Signed-off-by: Pilo Chambert Signed-off-by: Takashi Iwai ALSA CVS update ICE1712 driver Added the (experimental) support of Terratec Phase 88. Signed-off-by: Takashi Iwai ALSA CVS update VIA82xx driver Fixed the check of invalid DMA position. The workaround for buggy mobo to correct the DMA position is fixed so that it works properly on normal chips. Signed-off-by: Takashi Iwai [PATCH] orinoco merge preliminaries - squash backwards compatibility Remove various bits of code in the orinoco driver for backwards compatibility with older kernels: old versions of the wireless extensions, lack of MODULE_LICENSE, older PCMCIA interfaces. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - rearrange code Rearrange functions in the orinoco driver in a more logical order. This patch is large and looks complicated, but in fact only moves code around (within or between files) without changing it. The only exceptions are some extra comments describing the file's layout, and updated prototypes for the new function order. This makes the order of functions match the 0.15rc1 version, so later patches have a fighting chance of being meaningful. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - use netdev_priv() Use the netdev_priv() macro instead of directly accessing dev->priv. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - use ALIGN() Use the kernel's ALIGN macro instead of our own dodgy version for rounding things up to an even number. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - use ARRAY_SIZE() Use the built in ARRAY_SIZE macro, instead of hard coding it ourselves. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - spam stoppers Anti-spam obfuscate most email addresses in the orinoco driver files. Yes, this is closing gate long after the sheep have run, but I guess it can't hurt. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - comment/whitespace/spelling updates Various trivial cleanups to the orinoco driver: whitespace changes, spelling/capitalization errors corrected, some fairly insignificant comments added, removed or reformatted. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - use BUG_ON() Use BUG_ON() macro instead of explicit if(x) BUG() in various places. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - make things static Make various functions and variables static which always should have been, but weren't. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco_tmd.c =================================================================== [PATCH] orinoco merge preliminaries - miscelaneous Random trivial cleanups that don't belong with anything else: - Use ETH_DATA_LEN instead of hard-coded constant - Remove a duplicated constant in an | expression Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - use name/version macros Use some macros defining driver names and version to reduce the number of places that need to be changed when the version changes. Also use these to make it easier to keep printk() messages with a consistent prefix. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco.c =================================================================== [PATCH] orinoco merge preliminaries - remove unneeded #includes Remove some unnecessary #includes. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/orinoco_pci.c =================================================================== [PATCH] orinoco merge preliminaries - don't typedef structs In line with normal kernel conventions, don't create typedefs for structures. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/hermes.c =================================================================== [PATCH] orinoco merge preliminaries - more HW data Update various constants and structures in orinoco header files. The updates generally represent either newer hardware/firmware features, or corrections to what we know about hardware/firmware functions. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/hermes.h =================================================================== [PATCH] orinoco merge preliminaries - update authorship information Update copyright messages, module meta-information, banner comments and the MAINTAINERS file to better reflect the current authorship/maintainership status. In particular puts Pavel Roskin as the most prominently displayed maintainer, since he has done nearly all non-trivial work on the driver for a year or more. Signed-off-by: David Gibson Index: working-2.6/drivers/net/wireless/hermes.c =================================================================== [PATCH] natsemi netpoll support [PATCH] prism54 Clean up dev ids totally * As Jeff previously stated, we do not need all this bloat. An updated pci.ids, both kernel and user space, gives us all the required info :-) Just leave the stuff we are interested in. Proposed in prism54 devel with no objections. [ACPI] S3 is independent of CONFIG_X86_PAE (David Shaohua Li) [ACPI] synchronize_kernel for idle-loop unload (Zwane Mwaikambo) http://bugzilla.kernel.org/show_bug.cgi?id=1716 [ACPI] fix build warning (Andrew Morton) [PATCH] qla2xxx: EH host-reset fixes Fix issue where host-reset would incorrectly return a FAILED status. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] qla2xxx: Set firmware options fixes Fix issue where firmware options were not properly being set before firmware initialization. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] qla2xxx: TCQ fixes Correct usage of tag-command-queueing methods: o Properly call scsi_activate_tcq() rather than scsi_adjust_queue_depth(). o Properly retrieve tag message from command via scsi_populate_tag_msg(). Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] qla2xxx: Update version Update version number to 8.00.00b15-k. Signed-off-by: Andrew Vasquez Signed-off-by: James Bottomley [PATCH] drivers/scsi/sg.c kill local jiffies functions [patch] kill local sg_ms_to_jif/sg_jif_to_ms functions and use msecs_to_jiffies/jiffies_to_msecs instead Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley [PATCH] SCSI dc395x.c: fix inline compile errors Trying to compile drivers/scsi/dc395x.c in 2.6.8-rc1-mm1 using gcc 3.4 results in compile errors starting with the following: <-- snip --> ... CC drivers/scsi/dc395x.o drivers/scsi/dc395x.c: In function `dc395x_handle_interrupt': drivers/scsi/dc395x.c:388: sorry, unimplemented: inlining failed in call to 'enable_msgout_abort': function body not available drivers/scsi/dc395x.c:1740: sorry, unimplemented: called from here make[2]: *** [drivers/scsi/dc395x.o] Error 1 <-- snip --> The patch below moves enable_msgout_abort above the place where it is called the first time and removes the bogus inline from the prototype of set_xfer_rate (the function itself isn't marked as inline). An alternative approach would be to remove the inline from enable_msgout_abort. Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley [PATCH] SCSI nsp32.c: remove inlines Trying to compile drivers/scsi/nsp32.c in 2.6.8-rc1-mm1 using gcc 3.4 results in compile errors starting with the following: <-- snip --> ... CC drivers/scsi/nsp32.o drivers/scsi/nsp32.c: In function `nsp32_prom_start': drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call to 'nsp32_prom_set': function body not available drivers/scsi/nsp32.c:3348: sorry, unimplemented: called from here drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call to 'nsp32_prom_set': function body not available drivers/scsi/nsp32.c:3349: sorry, unimplemented: called from here drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call to 'nsp32_prom_set': function body not available drivers/scsi/nsp32.c:3350: sorry, unimplemented: called from here drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call to 'nsp32_prom_set': function body not available drivers/scsi/nsp32.c:3351: sorry, unimplemented: called from here drivers/scsi/nsp32.c:270: sorry, unimplemented: inlining failed in call to 'nsp32_prom_set': function body not available drivers/scsi/nsp32.c:3353: sorry, unimplemented: called from here make[2]: *** [drivers/scsi/nsp32.o] Error 1 <-- snip --> The patch below removes the inlines from nsp32_prom_{get,set}. An alternative approach would be to move the functions above the place where they are called the first time. Signed-off-by: Adrian Bunk Signed-off-by: James Bottomley [PATCH] tmscsim: MAINTAINERS add new maintainer Signed-off-by: James Bottomley [PATCH] SCSI tmscsim.c: fix inline compile errors Original Patch From: Adrian Bunk I looked at those 3 functions. dc390_EnableMsgOut_Abort is called 5 times in the code and is 0x30 bytes long (as compiled with 3.3.2), so, uninlining it, probably, makes most sense. The other 2 functions are called only ones each and from the interrupt, so, I applied the "alternative approach" to them - moved above the calling functions. Signed-off-by: James Bottomley [PATCH] ibmvscsi driver v1.5.1 Based on comments from hch and jejb, an update to the ibmvscsi driver patch. Primarily style issues, though the removal of gratuitous casting lead to some significant refactoring of functions. - Moved #include after #include - removed the map_direct_data and map_indirect_data and moved the function inline - Fixed function declaration style issues (static on a line by itself) - Removed bogus cast from dma_map_single - Moved setting of data transfer direction to a single helper function - Fixed up some gratuitous casting of types - Collapsed a couple of other functions inline - Removed bogus check for NULL from remove - Removed the "evt_struct_for" routine as being needlessly obfuscatory Signed-off-by: James Bottomley [PATCH] add MODULE_VERSION to drivers/scsi Set MODULE_VERSION for drivers/scsi for Adaptec SCSI, megaraid qla1280, qla2x00 Signed-off-by: James Bottomley [PATCH] add MODULE_VERSION to drivers/scsi On Thu, Jul 22, 2004 at 01:28:23PM +0100, Matthew Wilcox wrote: > > +#define SYM_VERSION "2.1.18j" > > +#define SYM_DRIVER_NAME "sym-" SYM_VERSION > > Umm. No. This is ridiculous. I'm not having a 51 line copyright message > with 2 lines of #define. It's not even clear to me that these two lines > have artisitic merit. How about putting these defines in sym_defs.h, > at the top? It's already included in both sym_glue.c and sym_hipd.c by > being included by sym_glue.h. Indeed, point well taken. Done, they're now at the top of defines in sym_defs.h, and I've updated my BK tree accordingly. Signed-off-by: James Bottomley [PATCH] scsi/eata_pio: replace schedule_timeout() with msleep() Use msleep() instead of schedule_timeout() to guarantee the task delays for the desired time. Signed-off-by: Nishanth Aravamudan Signed-off-by: James Bottomley input: Fix a missing index in tmdc.c Signed-off-by: Vojtech Pavlik input: Check the range for HIDIOC?USAGES num_values. Signed-off-by: Vojtech Pavlik ALSA CVS update ALSA<-OSS emulation Fixed a typo in the last change, resulting in the infinite loop. Signed-off-by: Takashi Iwai ALSA CVS update ICE1712 driver,ICE1724 driver Added the support of Pontis MS300 to snd-ice1724 driver. Signed-off-by: Takashi Iwai [PATCH] e1000 - ethtool support (register dump, interrupt [PATCH] e1000 - Enable TSO [PATCH] e1000 - Use vmalloc for data structures not shared [PATCH] e1000 - TSO fixes (in preparation for IPv6 TSO) [PATCH] e1000 - Avoid infinite loop while trying to [PATCH] e1000 - include work down in tx path to decide when [PATCH] e1000 - Use pci_dma_sync_single_[for_device|for_cpu] [PATCH] e1000 - Shutdown PHY while bringing the interface [PATCH] e1000 - add compiler hints (likely/unlikely), check [PATCH] e1000 - more DPRINTK messages to syslog [PATCH] e1000 - suspend/resume fix from alex@zodiac.dasalias.org [PATCH] e1000 - white space and related cleanup [PATCH] e100 - restore speed/duplex/autoneg settings after the completion of the diagnostic tests [PATCH] e100 - Support for Intel(R) PRO/100 VE Network Connection (82562) adapter [PATCH] e100 - fix stat counters rx_length_error and rx_over_errors [PATCH] e100 - Support to load device firmware [PATCH] e100 - Auto MDI/MDI-X support [PATCH] e100 - driver version update [PATCH] gcc-3.5 fixes to advansys From: Andi Kleen Trivial gcc-3.5 build fixes. Signed-off-by: Andrew Morton Signed-off-by: James Bottomley [PATCH] Fix double reset in aic7xxx driver From: Joe Korty Fix occasional PCI bus parity errors on the Dell PowerEdge 4600 during boot. Symptoms: The LCD display would turn orange and display "PCI SYSTEM E13F5", and the following message would appear in /var/log/dmesg: "Uhhuh. NMI received. Dazed and confused, but trying to continue". By inserting a PCI card with a PDC20268 IDE controller and attaching to that a Sony DRU-510A DVD RW burner with an unloaded tray, the failure can be made to happen on every boot. Cause: The aic7xxx driver was resetting the onboard AIC7891 SCSI controller while waiting for a previous reset to complete. This second reset confuses the controller causing it to put bad data onto the PCI bus. This is a backport of a RedHat 2.4.21-15.ELsmp fix. A