31 Mar, 2011

1 commit


30 Mar, 2011

1 commit

  • * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (65 commits)
    ARM: 6826/1: Merge v6 and v7 DEBUG_LL DCC support
    ARM: 6838/1: etm: fix section mismatch warning
    ARM: 6837/1: remove unused pci_fixup_prpmc1100
    ARM: 6836/1: kprobes/fix emulation of LDR/STR instruction when Rn == PC
    Fix the broken build for Marvell Dove platform.
    ARM: 6835/1: perf: ensure overflows aren't missed due to IRQ latency
    ARM: 6834/1: perf: reset counters on all CPUs during initialisation
    ARM: 6833/1: perf: add required isbs() to ARMv7 backend
    ARM: 6825/1: kernel/sleep.S: fix Thumb2 compilation issues
    ARM: 6807/1: realview: Fix secondary GIC initialisation for EB with MPCore tile
    arm: mach-mx3: pcm043: add write-protect and card-detect for SD1
    eukrea_mbimxsd51: add SD Card detect
    eukrea_mbimxsd25-baseboard: add SD card detect
    mx3/eukrea_mbimxsd-baseboard: add SD card detect support
    mx3/eukrea_mbimxsd-baseboard: fix gpio request
    ARM: mxs/mx28evk: add mmc device
    ARM: mxs/mx23evk: add mmc device
    ARM: mxs: dynamically allocate mmc device
    ARM: mx51_efika: update platform data for new mfd changes
    mx2/iomux: Set direction for CSPI2 pins
    ...

    Linus Torvalds
     

29 Mar, 2011

1 commit


26 Mar, 2011

1 commit


18 Mar, 2011

1 commit

  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (62 commits)
    powerpc/85xx: Fix signedness bug in cache-sram
    powerpc/fsl: 85xx: document cache sram bindings
    powerpc/fsl: define binding for fsl mpic interrupt controllers
    powerpc/fsl_msi: Handle msi-available-ranges better
    drivers/serial/ucc_uart.c: Add of_node_put to avoid memory leak
    powerpc/85xx: Fix SPE float to integer conversion failure
    powerpc/85xx: Update sata controller compatible for p1022ds board
    ATA: Add FSL sata v2 controller support
    powerpc/mpc8xxx_gpio: simplify searching for 'fsl, qoriq-gpio' compatiable
    powerpc/8xx: remove obsolete mgsuvd board
    powerpc/82xx: rename and update mgcoge board support
    powerpc/83xx: rename and update kmeter1
    powerpc/85xx: Workaroudn e500 CPU erratum A005
    powerpc/fsl_pci: Add support for FSL PCIe controllers v2.x
    powerpc/85xx: Fix writing to spin table 'cpu-release-addr' on ppc64e
    powerpc/pseries: Disable MSI using new interface if possible
    powerpc: Enable GENERIC_HARDIRQS_NO_DEPRECATED.
    powerpc: core irq_data conversion.
    powerpc: sysdev/xilinx_intc irq_data conversion.
    powerpc: sysdev/uic irq_data conversion.
    ...

    Fix up conflicts in arch/powerpc/sysdev/fsl_msi.c (due to getting rid of
    of_platform_driver in arch/powerpc)

    Linus Torvalds
     

17 Mar, 2011

1 commit

  • * 'devicetree/next' of git://git.secretlab.ca/git/linux-2.6: (21 commits)
    tty: serial: altera_jtaguart: Add device tree support
    tty: serial: altera_uart: Add devicetree support
    dt: eliminate of_platform_driver shim code
    dt: Eliminate of_platform_{,un}register_driver
    dt/serial: Eliminate users of of_platform_{,un}register_driver
    dt/usb: Eliminate users of of_platform_{,un}register_driver
    dt/video: Eliminate users of of_platform_{,un}register_driver
    dt/net: Eliminate users of of_platform_{,un}register_driver
    dt/sound: Eliminate users of of_platform_{,un}register_driver
    dt/spi: Eliminate users of of_platform_{,un}register_driver
    dt: uartlite: merge platform and of_platform driver bindings
    dt: xilinx_hwicap: merge platform and of_platform driver bindings
    ipmi: convert OF driver to platform driver
    leds/leds-gpio: merge platform_driver with of_platform_driver
    dt/sparc: Eliminate users of of_platform_{,un}register_driver
    dt/powerpc: Eliminate users of of_platform_{,un}register_driver
    dt/powerpc: move of_bus_type infrastructure to ibmebus
    drivercore/dt: add a match table pointer to struct device
    dt: Typo fix.
    altera_ps2: Add devicetree support
    ...

    Linus Torvalds
     

16 Mar, 2011

1 commit


15 Mar, 2011

2 commits

  • In FSL sata v2 block, the snoop bit of PRDT Word3 description
    information is at bit28 instead of bit22.

    This patch adds FSL sata v2 probe and resolve this difference.

    Signed-off-by: Lei Xu
    Signed-off-by: Roy Zang
    Acked-by: Jeff Garzik
    Signed-off-by: Kumar Gala

    Xulei
     
  • 1b4b:91a3 seems to be another PCI ID for marvell ahci. Add it.
    Reported and tested in the following thread.

    http://thread.gmane.org/gmane.linux.kernel/1068354

    Signed-off-by: Tejun Heo
    Reported-by: Borislav Petkov
    Reported-by: Alessandro Tagliapietra
    Signed-off-by: Jeff Garzik

    Tejun Heo
     

14 Mar, 2011

9 commits


02 Mar, 2011

16 commits

  • Recognize Marvell 88SE9125 PCIe SATA 6.0 Gb/s controller.

    Signed-off-by: Per Jessen
    Signed-off-by: Jeff Garzik

    Per Jessen
     
  • Commit 6b7ae9545ad9875a289f4191c0216b473e313cb9 (libata: reimplement link power
    management) removed the check of ATA_FLAG_LPM but neglected to remove the flag
    itself. Do it now...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • All checks of ATA_FLAG_NO_LEGACY have been removed by the commits
    c791c30670ea61f19eec390124128bf278e854fe ([libata] minor PCI IDE probe
    fixes and cleanups) and f0d36efdc624beb3d9e29b9ab9e9537bf0f25d5b (libata:
    update libata core layer to use devres), so I think it's time to finally
    get rid of this flag...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • Commit 0d5ff566779f894ca9937231a181eb31e4adff0e (libata: convert to iomap)
    removed all checks of ATA_FLAG_MMIO but neglected to remove the flag itself.
    Do it now, at last...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • These flags are marked as obsolete and the checks for them have been removed
    by commit 294440887b32c58d220fb54b73b7a58079b78f20 (libata-sff: kill unused
    ata_bus_reset()), so I think it's time to finally get rid of them...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • The driver makes use of the two options (CONFIG_SATA_DWC_[V]DEBUG) to enable
    the debug output but they both are absent in drivers/ata/Kconfig...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • The driver erroneously uses ata_get_cmd_descript() not only for printing out
    the ATA commands but also the protocol and DMA direction enums. Add functions
    for properly printing those out...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • The caller expects this function to return the DMA channel number on success,
    while it returns 0...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • Fix the following compilation errors/warnings:

    drivers/ata/sata_dwc_460ex.c:43:1: warning: "DRV_NAME" redefined
    In file included from drivers/ata/sata_dwc_460ex.c:38:
    drivers/ata/libata.h:31:1: warning: this is the location of the previous
    definition
    drivers/ata/sata_dwc_460ex.c:44:1: warning: "DRV_VERSION" redefined
    drivers/ata/libata.h:32:1: warning: this is the location of the previous
    definition
    drivers/ata/sata_dwc_460ex.c: In function `sata_dwc_exec_command_by_tag':
    drivers/ata/sata_dwc_460ex.c:1356: warning: passing argument 1 of
    `ata_get_cmd_descript' makes integer from pointer without a cast
    drivers/ata/sata_dwc_460ex.c: In function `sata_dwc_qc_issue':
    drivers/ata/sata_dwc_460ex.c:1476: warning: `err' is used uninitialized in this
    function
    drivers/ata/sata_dwc_460ex.c:1465: note: `err' was declared here
    drivers/ata/sata_dwc_460ex.c: In function `sata_dwc_qc_issue':
    drivers/ata/sata_dwc_460ex.c:1493: warning: passing argument 1 of
    `ata_get_cmd_descript' makes integer from pointer without a cast
    drivers/ata/sata_dwc_460ex.c: In function `sata_dwc_qc_prep':
    drivers/ata/sata_dwc_460ex.c:1537: error: `tag' undeclared (first use in this
    function)
    drivers/ata/sata_dwc_460ex.c:1537: error: (Each undeclared identifier is
    reported only once
    drivers/ata/sata_dwc_460ex.c:1537: error: for each function it appears in.)

    NB: error only happens if DEBUG_NCQ macro is defined...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • Somehow the driver was committed with a bare number for the PIO mask, instead
    of ATA_PIO4...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • Jeff Garzik
     
  • Right at the moment, the libata error handler is incredibly
    monolithic. This makes it impossible to use from composite drivers
    like libsas and ipr which have to handle error themselves in the first
    instance.

    The essence of the change is to split the monolithic error handler
    into two components: one which handles a queue of ata commands for
    processing and the other which handles the back end of readying a
    port. This allows the upper error handler fine grained control in
    calling libsas functions (and making sure they only get called for ATA
    commands whose lower errors have been fixed up).

    Signed-off-by: James Bottomley
    Signed-off-by: Jeff Garzik

    James Bottomley
     
  • The SCSI host eh_cmd_q should be protected by the host lock (not the
    port lock). This probably doesn't matter that much at the moment,
    since we try to serialise the add and eh pieces, but it might matter
    in future for more convenient error handling. Plus this switches
    libata to the standard eh pattern where you lock, remove from the cmd
    queue to a local list and unlock and then operate on the local list.

    Signed-off-by: James Bottomley
    Signed-off-by: Jeff Garzik

    James Bottomley
     
  • For historical reasons, libsas uses the scsi host lock as the ata port
    lock, and libata always uses the ata host. For the old eh, this was
    largely irrelevant since the two locks were never mixed inside the
    code. However, the new eh has a case where it nests acquisition of
    the host lock inside the port lock (this does look rather deadlock
    prone). Obviously this would be an instant deadlock if the port lock
    were the host lock, so switch the libsas paths to use the ata host
    lock as well.

    Signed-off-by: James Bottomley
    Signed-off-by: Jeff Garzik

    James Bottomley
     
  • The function ata_sas_port_init() has always really done its own thing.
    However, as a precursor to moving to the libata new eh, it has to be
    properly using the standard libata scan paths. This means separating
    the current libata scan paths into pieces which can be shared with
    libsas and pieces which cant (really just the async call and the host
    scan).

    Signed-off-by: James Bottomley
    Signed-off-by: Jeff Garzik

    James Bottomley
     
  • ata_eh_analyze_serror() suppresses hotplug notifications if LPM is
    being used because LPM generates spurious hotplug events. It compared
    whether link->lpm_policy was different from ATA_LPM_MAX_POWER to
    determine whether LPM is enabled; however, this is incorrect as for
    drivers which don't implement LPM, lpm_policy is always
    ATA_LPM_UNKNOWN. This disabled hotplug detection for all drivers
    which don't implement LPM.

    Fix it by comparing whether lpm_policy is greater than
    ATA_LPM_MAX_POWER.

    Signed-off-by: Tejun Heo
    Cc: stable@kernel.org
    Signed-off-by: Jeff Garzik

    Tejun Heo
     

01 Mar, 2011

1 commit


28 Jan, 2011

5 commits

  • ata_pio_sectors() expects buffer for each sector to be contained in a
    single page; otherwise, it ends up overrunning the first page. This
    is achieved by setting queue DMA alignment. If sector_size is smaller
    than PAGE_SIZE and all buffers are sector_size aligned, buffer for
    each sector is always contained in a single page.

    This wasn't applied to ATAPI devices but IDENTIFY_PACKET is executed
    as ATA_PROT_PIO and thus uses ata_pio_sectors(). Newer versions of
    udev issue IDENTIFY_PACKET with unaligned buffer triggering the
    problem and causing oops.

    This patch fixes the problem by setting sdev->sector_size to
    ATA_SECT_SIZE on ATATPI devices and always setting DMA alignment to
    sector_size. While at it, add a warning for the unlikely but still
    possible scenario where sector_size is larger than PAGE_SIZE, in which
    case the alignment wouldn't be enough.

    Signed-off-by: Tejun Heo
    Reported-by: John Stanley
    Tested-by: John Stanley
    Cc: stable@kernel.org
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • PIONEER DVR-212D can't do SETXFER like its sibling DVRTD08. Add
    ATA_HORKAGE_NOSETXFER for it. Reported in bko#27502.

    https://bugzilla.kernel.org/show_bug.cgi?id=27502

    Signed-off-by: Francesco Antonacci
    Acked-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Francesco Antonacci
     
  • Commit 5f173107ecad83a50 added HFLAG_YES_FBS workaround for 88SE9128
    (1b4b:9123).

    However, that change inadvertently caused the legacy IDE interface of
    the controller (with the same pci id) to become associated with the AHCI
    driver as well, causing the driver to try to bring the interface up in
    vain.

    Fix that by matching against class as well.

    Signed-off-by: Anssi Hannula
    Signed-off-by: Jeff Garzik

    Anssi Hannula
     
  • Commit ab81a505ae6be069be5b67acd7e1bab3cfb53968 (pata_hpt37x: unify ->pre_reset
    methods) neglected to remove the initializer for the prereset() method from
    'hpt374_fn1_port_ops' (it's inherited from 'hpt372_port_ops' anyway), as well
    as to update the comment in hpt37x_init_one()...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Jeff Garzik

    Sergei Shtylyov
     
  • This patch adds the AHCI-mode SATA DeviceID for the Intel DH89xxCC PCH.

    Signed-off-by: Seth Heasley
    Signed-off-by: Jeff Garzik

    Seth Heasley