13 Dec, 2009

1 commit

  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (151 commits)
    powerpc: Fix usage of 64-bit instruction in 32-bit altivec code
    MAINTAINERS: Add PowerPC patterns
    powerpc/pseries: Track previous CPPR values to correctly EOI interrupts
    powerpc/pseries: Correct pseries/dlpar.c build break without CONFIG_SMP
    powerpc: Make "intspec" pointers in irq_host->xlate() const
    powerpc/8xx: DTLB Miss cleanup
    powerpc/8xx: Remove DIRTY pte handling in DTLB Error.
    powerpc/8xx: Start using dcbX instructions in various copy routines
    powerpc/8xx: Restore _PAGE_WRITETHRU
    powerpc/8xx: Add missing Guarded setting in DTLB Error.
    powerpc/8xx: Fixup DAR from buggy dcbX instructions.
    powerpc/8xx: Tag DAR with 0x00f0 to catch buggy instructions.
    powerpc/8xx: Update TLB asm so it behaves as linux mm expects.
    powerpc/8xx: Invalidate non present TLBs
    powerpc/pseries: Serialize cpu hotplug operations during deactivate Vs deallocate
    pseries/pseries: Add code to online/offline CPUs of a DLPAR node
    powerpc: stop_this_cpu: remove the cpu from the online map.
    powerpc/pseries: Add kernel based CPU DLPAR handling
    sysfs/cpu: Add probe/release files
    powerpc/pseries: Kernel DLPAR Infrastructure
    ...

    Linus Torvalds
     

10 Dec, 2009

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-next-2.6:
    sl82c105: remove no longer needed debugging code
    sis5513: remove stale TODO
    pdc202xx_old: remove no longer needed debugging code
    cy82c693: remove no longer needed debugging code
    cmd64x: remove no longer needed debugging code
    alim15x3: remove obsolete and dangerous wdc_udma parameter
    ide: Increase WAIT_DRQ to accomodate some CF cards and SSD drives.
    cs5535: add pci id for AMD based CS5535 controllers
    slc90e66: fix UDMA handling
    drivers/ide/tx4938ide.c: use resource_size()
    drivers/ide/ide_platform.c: use resource_size()
    drivers/ide/au1xxx-ide.c: use resource_size()
    hpt366: remove dead old timing tables
    ide: update Kconfig text to mark as deprecated
    ide-tape: remove the BKL
    hpt366: kill unused #define's

    Linus Torvalds
     

09 Dec, 2009

3 commits

  • Conflicts:
    include/linux/kvm.h

    Benjamin Herrenschmidt
     
  • The hotplug mediabay has tendrils deep into drivers/ide code
    which makes a libata port reather difficult. In addition it's
    ugly and could be done better.

    This reworks the interface between the mediabay and the rest
    of the world so that:

    - Any macio_driver can now have a mediabay_event callback
    which will be called when that driver sits on a mediabay and
    it's been either plugged or unplugged. The device type is
    passed as an argument. We can now move all the IDE cruft
    into the IDE driver itself

    - A check_media_bay() function can be used to take a peek
    at the type of device currently in the bay if any, a cleaner
    variant of the previous function with the same name.

    - A pair of lock/unlock functions are exposed to allow the
    IDE driver to block the hotplug callbacks during the initial
    setup and probing of the bay in order to avoid nasty race
    conditions.

    - The mediabay code no longer needs to spin on the status
    register of the IDE interface when it detects an IDE device,
    this is done just fine by the IDE code itself

    Overall, less code, simpler, and allows for another driver
    than our old drivers/ide based one.

    Signed-off-by: Benjamin Herrenschmidt

    Benjamin Herrenschmidt
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: (54 commits)
    Revert "pata_sis: Implement MWDMA for the UDMA 133 capable chips"
    libata: Clarify ata_set_lba_range_entries function
    libata: Report zeroed read after TRIM and max discard size
    pata_hpt3x2n: fix overclocked MWDMA0 timing
    pata_it8213: MWDMA0 is unsupported
    [libata] MWDMA0 is unsupported on PIIX-like PATA controllers
    pata_via: clear UDMA transfer mode bit for PIO and MWDMA
    pata_sis: Power Management fix
    pata_rz1000: Power Management fix
    pata_radisys: fix UDMA handling
    pata_ns87415: Power Management fix
    pata_marvell: fix marvell_pre_reset() documentation
    pata_legacy: add pointers to QDI65x0 documentation
    pata_legacy: fix access to control register for QDI6580
    pata_legacy: fix QDI6580DP support
    pata_it8213: fix it8213_pre_reset() documentation
    pata_it8213: fix wrong MWDMA timings being programmed
    pata_it8213: fix PIO2 underclocking
    pata_it8213: fix wrong PIO timings being programmed
    pata_it8213: fix UDMA handling
    ...

    Linus Torvalds
     

06 Dec, 2009

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (50 commits)
    pcmcia: rework the irq_req_t typedef
    pcmcia: remove deprecated handle_to_dev() macro
    pcmcia: pcmcia_request_window() doesn't need a pointer to a pointer
    pcmcia: remove unused "window_t" typedef
    pcmcia: move some window-related code to pcmcia_ioctl.c
    pcmcia: Change window_handle_t logic to unsigned long
    pcmcia: Pass struct pcmcia_socket to pcmcia_get_mem_page()
    pcmcia: Pass struct pcmcia_device to pcmcia_map_mem_page()
    pcmcia: Pass struct pcmcia_device to pcmcia_release_window()
    drivers/pcmcia: remove unnecessary kzalloc
    pcmcia: correct handling for Zoomed Video registers in topic.h
    pcmcia: fix printk formats
    pcmcia: autoload module pcmcia
    pcmcia/staging: update comedi drivers
    PCMCIA: stop duplicating pci_irq in soc_pcmcia_socket
    PCMCIA: ss: allow PCI IRQs > 255
    PCMCIA: soc_common: remove 'dev' member from soc_pcmcia_socket
    PCMCIA: soc_common: constify soc_pcmcia_socket ops member
    PCMCIA: sa1111: remove duplicated initializers
    PCMCIA: sa1111: wrap soc_pcmcia_socket to contain sa1111 specific data
    ...

    Linus Torvalds
     

04 Dec, 2009

8 commits


03 Dec, 2009

2 commits


02 Dec, 2009

1 commit


01 Dec, 2009

1 commit


29 Nov, 2009

1 commit

  • Most of the irq_req_t typedef'd struct can be re-worked quite
    easily:

    (1) IRQInfo2 was unused in any case, so drop it.

    (2) IRQInfo1 was used write-only, so drop it.

    (3) Instance (private data to be passed to the IRQ handler):
    Most PCMCIA drivers using pcmcia_request_irq() to actually
    register an IRQ handler set the "dev_id" to the same pointer
    as the "priv" pointer in struct pcmcia_device. Modify the two
    exceptions (ipwireless, ibmtr_cs) to also work this waym and
    set the IRQ handler's "dev_id" to p_dev->priv unconditionally.

    (4) Handler is to be of type irq_handler_t.

    (5) Handler != NULL already tells whether an IRQ handler is present.
    Therefore, we do not need the IRQ_HANDLER_PRESENT flag in
    irq_req_t.Attributes.

    CC: netdev@vger.kernel.org
    CC: linux-bluetooth@vger.kernel.org
    CC: linux-ide@vger.kernel.org
    CC: linux-wireless@vger.kernel.org
    CC: linux-scsi@vger.kernel.org
    CC: alsa-devel@alsa-project.org
    CC: Jaroslav Kysela
    CC: Jiri Kosina
    CC: Karsten Keil
    for the Bluetooth parts: Acked-by: Marcel Holtmann
    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     

26 Nov, 2009

1 commit

  • Currently, ide_cmd_ioctl when invoked for setting DMA transfer mode calls
    ide_find_dma_mode with requested mode as XFER_UDMA_6. This prevents setting DMA
    mode to any other value than the default (maximum) supported by the device (or
    UDMA6, if supported) irrespective of the actual requested transfer mode and
    returns error.

    For example, setting mode to UDMA2 using hdparm, where UDMA4 is the default
    transfer mode gives following error:
    # ./hdparm -d1 -Xudma2 /dev/hda
    /dev/hda:hda: UDMA/66 mode selected
    setting using_dma to 1 (on)
    hda: UDMA/66 mode selected
    setting xfermode to 66 (UltraDMA mode2)
    HDIO_DRIVE_CMD(setxfermode) failed: Invalid argument
    using_dma = 1 (on)

    This patch fixes the issue.

    Signed-off-by: Hemant Pedanekar
    Acked-by: Bartlomiej Zolnierkiewicz
    Acked-by: Sergei Shtylyov
    Signed-off-by: David S. Miller

    Hemant Pedanekar
     

24 Nov, 2009

3 commits


19 Nov, 2009

1 commit


10 Nov, 2009

1 commit


09 Nov, 2009

1 commit

  • ide-cs.c is the only PCMCIA device driver making use of CONFIG_PCMCIA_DEBUG,
    so convert it to use the dynamic debug infrastructure.

    Also, remove all usages of the CS_CHECK macro and replace them with proper
    Linux style calling and return value checking. The extra error reporting may
    be dropped, as the PCMCIA core already complains about any (non-driver-author)
    errors.

    CC: linux-ide@vger.kernel.org
    Signed-off-by: Dominik Brodowski

    Dominik Brodowski
     

06 Nov, 2009

1 commit

  • This reverts commit 6029336426a2b43e4bc6f4a84be8789a047d139e.

    Ok, we really do need to revert this, even with Bart's sis5513.c
    fix in there.

    The problem is that several driver's ->set_pio_mode() method
    depends upon the drive->media type being set properly. Most
    of them use this to enable prefetching, which can only be done
    for disk media.

    But the commit being reverted here calls ->set_pio_mode() before
    it's setup. Actually it considers everything disk because that
    is the default media type set by ide_port_init_devices_data().

    The set of drivers that depend upon the media type in their
    ->set_pio_method() are:

    drivers/ide/alim15x3.c
    drivers/ide/it8172.c
    drivers/ide/it8213.c
    drivers/ide/pdc202xx_old.c
    drivers/ide/piix.c
    drivers/ide/qd65xx.c
    drivers/ide/sis5513.c
    drivers/ide/slc90e66.c

    And it is possible that we could fix this by guarding the prefetching
    and other media dependent setting changes with a test on
    IDE_PFLAG_PROBING in hwif->port_flags, that's simply too risky for
    2.6.32-rcX and -stable.

    Signed-off-by: David S. Miller

    David S. Miller
     

30 Oct, 2009

1 commit


29 Oct, 2009

4 commits

  • The current Kconfig text for CONFIG_IDE doesn't give a hint to users that this
    subsystem is currently in maintenance mode and isn't actively developed.
    Let's correct this by marking it as deprecated, and also get rid of a bunch of
    unnecessary text that doesn't really have anything to do with what the option is
    for.

    Signed-off-by: Robert Hancock
    Signed-off-by: David S. Miller

    Robert Hancock
     
  • Replace the BKL calls in the chrdev_{open,release} interfaces with a
    simple sleeping mutex.

    Signed-off-by: Borislav Petkov
    Signed-off-by: David S. Miller

    Borislav Petkov
     
  • These two have been long unused but I've just noticed...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: David S. Miller

    Sergei Shtylyov
     
  • CMD646 corrupts data on concurrent transfers on both channels when IDE SSD is
    connected to one of the channels.

    Setup that demonstrates this hardware bug: Ultra 5, onboard CMD646, rev 3.
    /dev/hda is 8GB Seagate ST38410A in MWDMA2
    /dev/hdd is 32GB SSD SiliconHardDisk in MWDMA2

    - When reading /dev/hdd (for example with dd or fsck), reads from /dev/hda
    are corrupted, there are twiddled single bits 1->0 and some full 32-bit
    words corrupted, sometimes commands fail (which switches /dev/hda to
    PIO mode but the corruptions happen even in PIO).
    - Reads from /dev/hdd don't seem to be corrupted (i.e. fsck passes fine).
    - When I connected normal rotating harddisk to /dev/hdd, there was no
    corruption, so the corruption is something specific to SSD.
    - I tried the same setup on a PCI card with CMD649 and saw no corruption.

    This patch serializes the operation for CMD646 and 643 (I didn't test
    CMD643 but it may have the same hw bug too because it's earlier design).
    CMD649 is good. I don't know anything about CMD 648.

    Signed-off-by: Mikulas Patocka
    Tested-by: Frans Pop
    Signed-off-by: David S. Miller

    Mikulas Patocka
     

16 Oct, 2009

1 commit


09 Oct, 2009

1 commit


07 Oct, 2009

2 commits

  • This reverts commit 24df31acaff8465d797f0006437b45ad0f2a5cb1.

    The root cause of reported system hangs was (now fixed) sis5513 bug
    and not "ide: try to use PIO Mode 0 during probe if possible" change
    (commit 6029336426a2b43e4bc6f4a84be8789a047d139e) so the revert was
    incorrect (it simply replaced one regression with the other one).

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: David S. Miller

    Bartlomiej Zolnierkiewicz
     
  • Clear prefetch setting before potentially (re-)enabling it in
    config_drive_art_rwp() so the transition of the device type on
    the port from ATA to ATAPI (i.e. during warm-plug operation)
    is handled correctly.

    This is a really old bug (it probably goes back to very early
    days of the driver) but it was only affecting warm-plug operation
    until the recent "ide: try to use PIO Mode 0 during probe if
    possible" change (commit 6029336426a2b43e4bc6f4a84be8789a047d139e).

    Signed-off-by: Bartlomiej Zolnierkiewicz
    Tested-by: David Fries
    Signed-off-by: David S. Miller

    Bartlomiej Zolnierkiewicz
     

06 Oct, 2009

1 commit


05 Oct, 2009

1 commit


24 Sep, 2009

1 commit

  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (119 commits)
    ACPI: don't pass handle for fixed hardware notifications
    ACPI: remove null pointer checks in deferred execution path
    ACPI: simplify deferred execution path
    acerhdf: additional BIOS versions
    acerhdf: convert to dev_pm_ops
    acerhdf: fix fan control for AOA150 model
    thermal: add missing Kconfig dependency
    acpi: switch /proc/acpi/{debug_layer,debug_level} to seq_file
    hp-wmi: fix rfkill memory leak on unload
    ACPI: remove unnecessary #ifdef CONFIG_DMI
    ACPI: linux/acpi.h should not include linux/dmi.h
    hwmon driver for ACPI 4.0 power meters
    topstar-laptop: add new driver for hotkeys support on Topstar N01
    thinkpad_acpi: fix rfkill memory leak on unload
    thinkpad-acpi: report brightness events when required
    thinkpad-acpi: don't poll by default any of the reserved hotkeys
    thinkpad-acpi: Fix procfs hotkey reset command
    thinkpad-acpi: deprecate hotkey_bios_mask
    thinkpad-acpi: hotkey poll fixes
    thinkpad-acpi: be more strict when detecting a ThinkPad
    ...

    Linus Torvalds
     

23 Sep, 2009

1 commit