1. 24 2月, 2008 17 次提交
    • M
      libata-pmp: clear hob for pmp register accesses · 39f25e70
      Mark Lord 提交于
      >> Mark Lord wrote:
      >>> Tejun, I've added PMP to sata_mv, and am now trying to get it
      >>> to work with a Marvell PM attached.
      
      > >>> And the behaviour I see is very bizarre.
      
      >>> After hard+soft resets, the PM signature is found,
      >>> and libata interrogates the PM registers.
      >>>
      >>> It successfully reads register 0, and then register 1.
      >>> But all subsequent registers read out (incorrectly) as zeros.
      ...
      
      This behavior has been confirmed by Marvell with a SATA analyzer.
      The Marvell port-multiplier apparently likes to see clean HOB
      information when accessing PMP registers.
      
      Since sata_mv uses PIO shadow register access, this doesn't happen
      automatically, as it might in a more purely FIS-based driver (eg. ahci).
      
      One way to fix this is to flag these commands with ATA_TFLAG_LBA48,
      forcing libata to write out the HOB fields with known (zero) values.
      Signed-off-by: NSaeed Bishara <saeed@marvell.com>
      Acked-by: NMark Lord <mlord@pobox.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      39f25e70
    • T
      libata: automatically use DMADIR if drive/bridge requires it · 91163006
      Tejun Heo 提交于
      Back in 2.6.17-rc2, a libata module parameter was added for atapi_dmadir.
      
      That's nice, but most SATA devices which need it will tell us about it
      in their IDENTIFY PACKET response, as bit-15 of word-62 of the
      returned data (as per ATA7, ATA8 specifications).
      
      So for those which specify it, we should automatically use the DMADIR bit.
      Otherwise, disc writing will fail by default on many SATA-ATAPI drives.
      
      This patch adds ATA_DFLAG_DMADIR and make ata_dev_configure() set it
      if atapi_dmadir is set or identify data indicates DMADIR is necessary.
      atapi_xlat() is converted to check ATA_DFLAG_DMADIR before setting
      DMADIR.
      
      Original patch is from Mark Lord.
      Signed-off-by: NTejun Heo <htejun@gmail.com>
      Cc: Mark Lord <mlord@pobox.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      91163006
    • P
      power_state: get rid of write-only variable in SATA · 559bbe6c
      Pavel Machek 提交于
      power_state is scheduled for removal, and libata uses it in write-only
      mode. Remove it.
      Signed-off-by: NPavel Machek <pavel@suse.cz>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      559bbe6c
    • A
      pata_atiixp: Use 255 sector limit · 635adc28
      Alan Cox 提交于
      AHCI needs sorting too but this deals with the old interface
      Signed-off-by: NAlan Cox <alan@redhat.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      635adc28
    • M
      Fix u132-hcd.c compile error · 038eb0ea
      Mirco Tischler 提交于
      This fixes the following compile error caused by commit
      3a2d5b70 ("PM: Introduce
      PM_EVENT_HIBERNATE callback state")
      
          CC [M]  drivers/usb/host/u132-hcd.o
        drivers/usb/host/u132-hcd.c: In function ‘u132_suspend’:
        drivers/usb/host/u132-hcd.c:3224: error: expected expression before ‘int’
        drivers/usb/host/u132-hcd.c:3225: error: ‘ports’ undeclared (first use in this function)
        ...
      Signed-off-by: NMirco Tischler <mt-ml@gmx.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      038eb0ea
    • O
      fix vmsas.c file permissions · 42e6de0e
      Oliver Pinter 提交于
      Signed-off-by: NOliver Pinter <oliver.pntr@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      42e6de0e
    • J
      mvsas: fix build warning, clean prototypes · 0a3716eb
      Jeff Garzik 提交于
      - Fix build 'make randconfig' build warning spotted by Toralf Foerster:
      
      drivers/scsi/mvsas.c: In function 'mvs_hexdump':
      drivers/scsi/mvsas.c:715: error: implicit declaration of function 'isalnum'
      
      - Remove unneeded prototypes (spotted by hch)
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      0a3716eb
    • J
      dmi: prevent linked list corruption · 43fe105a
      Jean Delvare 提交于
      Adding the same item to a given linked list more than once is guaranteed
      to break and corrupt the list.  This is however what we do in dmi_scan
      since commit 79da4721 ("x86: fix DMI out
      of memory problems").
      
      Given that there is absolutely no interest in saving empty OEM strings
      anyway, I propose the simple and efficient fix below: we discard the empty
      OEM strings altogether.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Acked-by: NParag Warudkar <parag.warudkar@gmail.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Matt Domsch <Matt_Domsch@dell.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      43fe105a
    • S
      drivers/video/uvesafb.c: fix section mismatch warning in param_set_scroll() · 79306a34
      Sergio Luis 提交于
      Fix following warnings:
      WARNING: drivers/video/built-in.o(.text+0x7c64a): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/video/built-in.o(.text+0x7c65d): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/video/built-in.o(.text+0x7c679): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/video/built-in.o(.text+0x7c699): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/video/built-in.o(.text+0x7c69f): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/built-in.o(.text+0xa3676): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/built-in.o(.text+0xa3689): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/built-in.o(.text+0xa36a5): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/built-in.o(.text+0xa36c5): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: drivers/built-in.o(.text+0xa36cb): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: vmlinux.o(.text+0x4a079a): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: vmlinux.o(.text+0x4a07ad): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: vmlinux.o(.text+0x4a07c9): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: vmlinux.o(.text+0x4a07e9): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      WARNING: vmlinux.o(.text+0x4a07ef): Section mismatch in reference from the function param_set_scroll() to the variable .devinit.data:ypan
      
      Remove __devinitdata annotation from the variable ypan.
      Signed-off-by: NSergio Luis <sergio@larces.uece.br>
      Cc: Michal Januszewski <spock@gentoo.org>
      Cc: "Antonino A. Daplas" <adaplas@pol.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      79306a34
    • P
      NBD: make nbd default to deadline I/O scheduler · 48f15b93
      Paul Clements 提交于
      NBD doesn't work well with CFQ (or AS) schedulers, so let's default to
      something else.
      
      The two problems I have experienced with nbd and cfq are:
      
      1) nbd hangs with cfq on RHEL 5 (2.6.18) -- this may well have been
         fixed
      
         There's a similar debian bug that has been filed as well:
      
         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=447638
      
         There have been posts to nbd-general mailing list about problems with
         cfq and nbd also.
      
      2) nbd performs about 10% better (the last time I tested) with deadline
         vs.  cfq (the overhead of cfq doesn't provide much advantage to nbd [not
         being a real disk], and you end up going through the I/O scheduler on
         the nbd server anyway, so it makes sense that deadline is better with
         nbd)
      Signed-off-by: NPaul Clements <paul.clements@steeleye.com>
      Cc: Jens Axboe <jens.axboe@oracle.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      48f15b93
    • J
      dmi: don't save the same device twice · f3069ae9
      Jean Delvare 提交于
      Now that we gather on-board devices from both DMI types 10 and 41, there is
      a possibility that we list the same device twice.  In order to not confuse
      drivers, and also to save memory, make sure that we do not add duplicate
      devices to the dmi_devices list.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Cc: Wim Van Sebroeck <wim@iguana.be>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f3069ae9
    • D
      rtc-cmos: display HPET emulation mode · c8626a1d
      David Brownell 提交于
      For the "cmos" RTC, have /proc/driver/rtc say whether HPET based IRQ
      emulation is in effect.  Given the problems we've had with this particular
      hardware maldesign (and the fact that most BIOS code seems not to provide
      the IRQ routing needed to use the saner HPET modes), this should help
      troubleshooting.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Cc: Alessandro Zummo <a.zummo@towertech.it>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      c8626a1d
    • N
      spi: pxa2xx_spi clock polarity fix · b97c74bd
      Ned Forrester 提交于
      Fixes a sequencing bug in spi driver pxa2xx_spi.c in which the chip select
      for a transfer may be asserted before the clock polarity is set on the
      interface.  As a result of this bug, the clock signal may have the wrong
      polarity at transfer start, so it may need to make an extra half transition
      before the intended clock/data signals begin.  (This probably means all
      transfers are one bit out of sequence.)
      
      This only occurs on the first transfer following a change in clock polarity
      in systems using more than one more than one such polarity.  The fix
      assures that the clock mode is properly set before asserting chip select.
      
      This bug was introduced in a patch merged on 2006/12/10, kernel 2.6.20.
      The patch defines an additional bit in: include/asm-arm/arch-pxa/regs-ssp.h
      for 2.6.25 and newer kernels but this addition must be made in:
      include/asm-arm/arch-pxa/pxa-regs.h for kernels between 2.6.20 and 2.6.24,
      inclusive
      Signed-off-by: NNed Forrester <nforrester@whoi.edu>
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Cc: Russell King <rmk@arm.linux.org.uk>
      Cc: <stable@kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      b97c74bd
    • A
      atmel_spi: fix clock polarity · f6febccd
      Atsushi Nemoto 提交于
      The atmel_spi driver does not initialize clock polarity correctly (except for
      at91rm9200 CS0 channel) in some case.
      
      The atmel_spi driver uses gpio-controlled chipselect.  OTOH spi clock signal
      is controlled by CSRn.CPOL bit, but this register controls clock signal
      correctly only in 'real transfer' duration.  At the time of cs_activate()
      call, CSRn.CPOL will be initialized correctly, but the controller do not know
      which channel is to be used next, so clock signal will stay at the inactive
      state of last transfer.  If clock polarity of new transfer and last transfer
      was differ, new transfer will start with wrong clock signal state.
      
      For example, if you started SPI MODE 2 or 3 transfer after SPI MODE 0 or 1
      transfer, the clock signal state at the assertion of chipselect will be low.
      Of course this will violates SPI transfer.
      
      This patch is short term solution for this problem.  It makes all CSRn.CPOL
      match for the transfer before activating chipselect.  For longer term, the
      best fix might be to let NPCS0 stay selected permanently in MR and overwrite
      CSR0 with to the new slave's settings before asserting CS.
      Signed-off-by: NAtsushi Nemoto <anemo@mba.ocn.ne.jp>
      Acked-by: NHaavard Skinnemoen <hskinnemoen@atmel.com>
      Cc: David Brownell <david-b@pacbell.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f6febccd
    • H
      atmel_serial: fix interrupt handler return value · 0400b697
      Haavard Skinnemoen 提交于
      We should only return IRQ_HANDLED when we actually found something to
      handle. This is important since the USART interrupt handler may be
      shared with the timer interrupt on some chips.
      Pointed-out-by: Nmichael <trimarchi@gandalf.sssup.it>
      Signed-off-by: NHaavard Skinnemoen <hskinnemoen@atmel.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      0400b697
    • M
      copyright owner and author clean up for intel iommu and related files · 98bcef56
      mark gross 提交于
      The following is a clean up and correction of the copyright holding
      entities for the files associated with the intel iommu code.
      
      Signed-off-by: <mgross@linux.intel.com>
      Cc: Greg KH <greg@kroah.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      98bcef56
    • R
      PM: Introduce PM_EVENT_HIBERNATE callback state · 3a2d5b70
      Rafael J. Wysocki 提交于
      During the last step of hibernation in the "platform" mode (with the
      help of ACPI) we use the suspend code, including the devices'
      ->suspend() methods, to prepare the system for entering the ACPI S4
      system sleep state.
      
      But at least for some devices the operations performed by the
      ->suspend() callback in that case must be different from its operations
      during regular suspend.
      
      For this reason, introduce the new PM event type PM_EVENT_HIBERNATE and
      pass it to the device drivers' ->suspend() methods during the last phase
      of hibernation, so that they can distinguish this case and handle it as
      appropriate.  Modify the drivers that handle PM_EVENT_SUSPEND in a
      special way and need to handle PM_EVENT_HIBERNATE in the same way.
      
      These changes are necessary to fix a hibernation regression related
      to the i915 driver (ref. http://lkml.org/lkml/2008/2/22/488).
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Acked-by: NPavel Machek <pavel@ucw.cz>
      Tested-by: NJeff Chua <jeff.chua.linux@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3a2d5b70
  2. 23 2月, 2008 12 次提交
  3. 22 2月, 2008 11 次提交