1. 29 5月, 2009 7 次提交
    • M
      davinci: Add compare register support to timer code · 3abd5acf
      Mark A. Greer 提交于
      The Timer64p timer has 8 compare registers that can
      be used to generate interrupts when the timer value
      matches the compare reg's value.  They do not disturb
      the timer itself.  This can be useful when there is
      only one timer available for both clock events and
      clocksource.
      
      When enabled, the clocksource remains a continuous
      32-bit counter but the clock event will no longer
      support periodic interrupts.  Instead only oneshot
      timers will be supported and implemented by setting
      the compare register to the current timer value plus
      the period that the clock event subsystem is requesting.
      
      Compare registers support is enabled automatically
      when the following conditions are met:
      1) The same timer is being used for clock events
         and clocksource.
      2) The timer is the bottom half (32 bits) of the
         64-bit timer (hardware limitation).
      3) The the compare register offset and irq are
         not zero.
      
      Since the timer is always running, there is a hardware
      race in timer32_config() between reading the current
      timer value, and adding the period to the current
      timer value and writing the compare register.
      Testing on a da830 evm board with the timer clocked
      at 24 MHz and the processor clocked at 300 MHz,
      showed the number of counter ticks to do this ranged
      from 20-53 (~1-2.2 usecs) but usually around 41 ticks.
      This includes some artifacts from collecting the
      information.  So, the minimum period should be
      at least 5 usecs to be safe.
      
      There is also an non-critical lower limit that
      the period should be since there is no point in
      setting an event that is much shorter than the
      time it takes to set the event, and get & handle
      the timer interrupt for that event.  There can
      also be all sorts of delays from activities
      occuring elsewhere in the system (including
      hardware activitis like cache & TLB management).
      These are virtually impossible to quantify so a
      minimum period of 50 usecs was chosen.  That will
      certianly be enough to avoid the actual hardware
      race but hopefully not large enough to cause
      unreasonably course-grained timers.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      3abd5acf
    • M
      davinci: Integrate cp_intc support into low-level irq code · 0b0c4c2a
      Mark A. Greer 提交于
      Integrate the Common Platform Interrupt Controller (cp_intc)
      support into the low-level irq handling for davinci and similar
      platforms.  Do it such that support for cp_intc and the original
      aintc can coexist in the same kernel binary.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      0b0c4c2a
    • M
      davinci: Factor out emac mac address handling · b14dc0f9
      Mark A. Greer 提交于
      Factor out the code to extract that mac address from
      i2c eeprom.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      b14dc0f9
    • M
      davinci: Remove unused i2c eeprom_read/write routines · c97909fc
      Mark A. Greer 提交于
      The dm644x and dm646x board files have i2c eeprom read and
      write routines but they are not used so remove them.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      c97909fc
    • M
      davinci: Move emac platform_data to SoC-specific files · 972412b6
      Mark A. Greer 提交于
      Since most of the emac platform_data is really SoC specific
      and not board specific, move it to the SoC-specific files.
      Put a pointer to the platform_data in the soc_info structure
      so the board-specific code can set some of the platform_data
      if it needs to.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      972412b6
    • M
      davinci: Move serial platform_device into SoC-specific files · 65e866a9
      Mark A. Greer 提交于
      Currently, there is one set of platform_device and platform_data
      structures for all DaVinci SoCs.  The differences in the data
      between the various SoCs is handled by davinci_serial_init()
      by checking the SoC type.  However, as new SoCs appear, this
      routine will become more & more cluttered.
      
      To clean up the routine and make it easier to add support for new
      SoCs, move the platform_device and platform_data structures into the
      SoC-specific code and use the SoC infrastructure to provide access
      to the data.
      
      In the process, fix a bug where the wrong irq is used for uart2
      of the dm646x.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      65e866a9
    • M
      davinci: Make GPIO code more generic · a994955c
      Mark A. Greer 提交于
      The current gpio code needs to know the number of
      gpio irqs there are and what the bank irq number is.
      To determine those values, it checks the SoC type.
      
      It also assumes that the base address and the number
      of irqs the interrupt controller uses is fixed.
      
      To clean up the SoC checks and make it support
      different base addresses and interrupt controllers,
      have the SoC-specific code set those values in
      the soc_info structure and have the gpio code
      reference them there.
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NKevin Hilman <khilman@deeprootsystems.com>
      a994955c
  2. 26 5月, 2009 21 次提交
  3. 24 5月, 2009 4 次提交
    • L
      Linux 2.6.30-rc7 · 59a3759d
      Linus Torvalds 提交于
      59a3759d
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 · 4a5dacec
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
        [SCSI] mpt2sas: fix driver version inconsistency
        [SCSI] 3w-xxxx: scsi_dma_unmap fix
        [SCSI] 3w-9xxx: scsi_dma_unmap fix
        [SCSI] ses: fix problems caused by empty SES provided name
        [SCSI] fc-transport: Close state transition-window during rport deletion.
        [SCSI] initialize max_target_blocked in scsi_alloc_target
        [SCSI] fnic: Add new Cisco PCI-Express FCoE HBA
      4a5dacec
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 · 3eb9c8be
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
        [CIFS] Avoid open on possible directories since Samba now rejects them
      3eb9c8be
    • S
      [CIFS] Avoid open on possible directories since Samba now rejects them · 8db14ca1
      Steve French 提交于
      Small change (mostly formatting) to limit lookup based open calls to
      file create only.
      
      After discussion yesteday on samba-technical about the posix lookup
      regression,  and looking at a problem with cifs posix open to one
      particular Samba version, Jeff and JRA realized that Samba server's
      behavior changed in this area (posix open behavior on files vs.
      directories).   To make this behavior consistent, JRA just made a
      fix to Samba server to alter how it handles open of directories (now
      returning the equivalent of EISDIR instead of success). Since we don't
      know at lookup time whether the inode is a directory or file (and
      thus whether posix open will succeed with most current Samba server),
      this change avoids the posix open code on lookup open (just issues
      posix open on creates).    This gets the semantic benefits we want
      (atomicity, posix byte range locks, improved write semantics on newly
      created files) and file create still is fast, and we avoid the problem
      that Jeff noticed yesterday with "openat" (and some open directory
      calls) of non-cached directories to one version of Samba server, and
      will work with future Samba versions (which include the fix jra just
      pushed into Samba server).  I confirmed this approach with jra
      yesterday and with Shirish today.
      
      Posix open is only called (at lookup time) for file create now.
      For opens (rather than creates), because we do not know if it
      is a file or directory yet, and current Samba no longer allows
      us to do posix open on dirs, we could end up wasting an open call
      on what turns out to be a dir. For file opens, we wait to call posix
      open till cifs_open.  It could be added here (lookup) in the future
      but the performance tradeoff of the extra network request when EISDIR
      or EACCES is returned would have to be weighed against the 50%
      reduction in network traffic in the other paths.
      Reviewed-by: NShirish Pargaonkar <shirishp@us.ibm.com>
      Tested-by: NJeff Layton <jlayton@redhat.com>
      CC: Jeremy Allison <jra@samba.org>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      8db14ca1
  4. 23 5月, 2009 4 次提交
    • B
      icom: fix rmmod crash · 95caa0a9
      Breno Leitao 提交于
      Actually the icom driver is crashing when is being removed because
      the driver is kfreeing the adapter structure before calling
      pci_release_regions(), which result in the following error:
      
        Unable to handle kernel paging request for data at address 0x6b6b6b6b6b6b6d33
        Faulting instruction address: 0xc000000000246b80
        Oops: Kernel access of bad area, sig: 11 [#1]
        ....
        [c000000012d436a0] [c0000000001002d0] .kfree+0x120/0x34c (unreliable)
        [c000000012d43730] [c000000000246d60] .pci_release_selected_regions+0x3c/0x68
        [c000000012d437c0] [d000000002d54700] .icom_kref_release+0xf4/0x118 [icom]
        [c000000012d43850] [c000000000232e50] .kref_put+0x74/0x94
        [c000000012d438d0] [d000000002d56c58] .icom_remove+0x40/0xa4 [icom]
        [c000000012d43960] [c000000000249e48] .pci_device_remove+0x50/0x90
        [c000000012d439e0] [c0000000002d68d8] .__device_release_driver+0x94/0xd4
        [c000000012d43a70] [c0000000002d7104] .driver_detach+0xf8/0x12c
        [c000000012d43b00] [c0000000002d549c] .bus_remove_driver+0xbc/0x11c
        [c000000012d43b90] [c0000000002d71dc] .driver_unregister+0x60/0x80
        [c000000012d43c20] [c00000000024a07c] .pci_unregister_driver+0x44/0xe8
        [c000000012d43cb0] [d000000002d56bf4] .icom_exit+0x1c/0x40 [icom]
        [c000000012d43d30] [c000000000095fa8] .SyS_delete_module+0x214/0x2a8
        [c000000012d43e30] [c00000000000852c] syscall_exit+0x0/0x40
      Signed-off-by: NBreno Leitao <leitao@linux.vnet.ibm.com>
      Cc: stable@kernel.org
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      95caa0a9
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 · 2528ed11
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
        ALSA: Kill truncate warning by shortening Sigmatel-specific AC97 control name
        ALSA: hda - fix audio on HP TX25xx series notebooks
        ALSA: pcsp - fix printk format warning again
      2528ed11
    • T
      Merge branch 'fix/misc' into for-linus · 4986cab5
      Takashi Iwai 提交于
      * fix/misc:
        ALSA: Kill truncate warning by shortening Sigmatel-specific AC97 control name
        ALSA: pcsp - fix printk format warning again
      4986cab5
    • A
      ALSA: Kill truncate warning by shortening Sigmatel-specific AC97 control name · afe6d7e3
      Andreas Mohr 提交于
      ALSA sound/core/control.c:232: Control name 'Sigmatel Surround Phase
      Inversion Playback Switch' truncated to 'Sigmatel Surround Phase
      Inversion Playback ' bootup message by omitting weird Sigmatel prefix
      in this case; also fix up the related ca0106 mixer control removal
      part by using identical naming there.
      Signed-off-by: NAndreas Mohr <andi@lisas.de>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      afe6d7e3
  5. 22 5月, 2009 4 次提交