22 Apr, 2008

1 commit

  • * 'semaphore' of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc:
    Deprecate the asm/semaphore.h files in feature-removal-schedule.
    Convert asm/semaphore.h users to linux/semaphore.h
    security: Remove unnecessary inclusions of asm/semaphore.h
    lib: Remove unnecessary inclusions of asm/semaphore.h
    kernel: Remove unnecessary inclusions of asm/semaphore.h
    include: Remove unnecessary inclusions of asm/semaphore.h
    fs: Remove unnecessary inclusions of asm/semaphore.h
    drivers: Remove unnecessary inclusions of asm/semaphore.h
    net: Remove unnecessary inclusions of asm/semaphore.h
    arch: Remove unnecessary inclusions of asm/semaphore.h

    Linus Torvalds
     

19 Apr, 2008

1 commit


15 Apr, 2008

12 commits

  • This patch changes 24xx to use shared clock code and new register
    access.

    Note that patch adds some temporary OLD_CK defines to keep patch
    more readable. These temporary defines will be removed in the next
    patch. Also not all clocks are changed in this patch to limit the
    size.

    Also, the patch fixes few incorrect clock defines in clock24xx.h.

    Signed-off-by: Paul Walmsley
    Signed-off-by: Tony Lindgren

    Paul Walmsley
     
  • This patch changes 24xx to use new register access, except for clock
    framework. Clock framework register access will get updates in the
    next patch.

    Note that board-*.c files change GPMC (General Purpose Memory Controller)
    access to use gpmc_cs_write_reg() instead of accessing the registers
    directly. The code also uses gpmc_fck instead of it's parent clock
    core_l3_ck for GPMC clock.

    The H4 board file also adds h4_init_flash() function, which specify the
    flash start and end addresses.

    Also note that sleep.S removes some unused registers addresses.

    Signed-off-by: Paul Walmsley
    Signed-off-by: Tony Lindgren

    Paul Walmsley
     
  • This patch adds common register access for 24xx and 34xx power
    and clock management in order to share code between 24xx and 34xx.

    Only change USB platform init code to use new register access, other
    access will be changed in later patches.

    Signed-off-by: Paul Walmsley
    Signed-off-by: Tony Lindgren

    Paul Walmsley
     
  • Misc clean-up for the mux code and remove some unnecessary
    ifdefs. Patch changes debug function so it can be used on
    both 24xx and 34xx.

    Changes are mostly for omap2, but patch also cleans up some
    omap1 and common mux code.

    Signed-off-by: Tony Lindgren

    Tony Lindgren
     
  • Move now OMAP1-specific timer32k code to mach-omap1 since OMAP2/3 32k
    timers are done in gptimer code.

    Signed-off-by: Kevin Hilman
    Signed-off-by: Tony Lindgren

    Kevin Hilman
     
  • Since 32k timer code is moving to OMAP1 specific dir, move the
    32k-based sched_clock() into common code where it is based on the 32k
    sync counter and can be used even when using MPU timer.

    While moving, change the ticks-to-nsecs conversion to use the helper
    functions provided by clocksource.h.

    Also removed the unused ticks_to_usec, leaving only ticks_to_nsec.

    Signed-off-by: Kevin Hilman
    Signed-off-by: Tony Lindgren

    Kevin Hilman
     
  • On OMAP2/3, the gp-timer code can be used for a 32kHz timer simply by
    setting the source to be the 32k clock instead of sys_clk.

    This patch uses the mach-omap2/timer-gp.c code for 32kHz timer on
    OMAP2, moving the logic into mach-omap2/timer-gp.c, and not using
    plat-omap/timer32k.c which, for OMAP2, is redundant with the timer-gp
    code.

    Also, if CONFIG_OMAP_32K_TIMER is enabled, the gptimer-based
    clocksource is not used. Instead the default 32k sync counter is used
    as the clocksource (see the clocksource in plat-omap/common.c.) This
    is important for sleep/suspend so there is a valid counter during
    sleep. Note that the suspend/sleep code needs fixing to check for
    overflows of this counter.

    In addition, the OMAP2/3 details are removed from timer32k.c leaving
    that with only OMAP1 specifics. A follow-up patch will move it from
    plat-omap common code to mach-omap1.

    Signed-off-by: Kevin Hilman
    Signed-off-by: Tony Lindgren

    Kevin Hilman
     
  • Use omap processor specific function depending on system type.
    Based on an earlier patch by Klaus Pedersen .

    Signed-off-by: Tony Lindgren

    Tony Lindgren
     
  • This patch changes pin multiplexing init to allow registering
    custom function. The omap_cfg_reg() func will be split into
    omap processor specific functions in later patch.

    This is done to make adding omap3 pin multiplexing easier.

    Signed-off-by: Tony Lindgren

    Tony Lindgren
     
  • Currently, the GPIO interrupt handling is duplicating some of the work
    done by the generic IRQ handlers (handle_edge_irq, handle_level_irq)
    such as detecting nesting, handling re-triggers etc. Remove this
    duplication and use generic hooks based on IRQ type.

    Using generic IRQ handlers ensures correct behavior when using
    threaded interrupts introduced by the -rt patch.

    Signed-off-by: Kevin Hilman
    Signed-off-by: Tony Lindgren

    Kevin Hilman
     
  • The clearing was moved to the unmask hook because it is known to run
    after the interrupt handler has actually run. Before this patch, if
    interrupts are threaded, the clearing/unmasking of level triggered
    interrupts would be done before the threaded handler actually ran.

    Signed-off-by: Kevin Hilman
    Signed-off-by: Tony Lindgren

    Kevin Hilman
     
  • Update OMAP to use the new GPIO implementation framework. This is just a
    quick'n'dirty update ... more code could now be removed, ideally as part
    of cleaning up the entire OMAP GPIO infrastructure ...

    Signed-off-by: David Brownell
    Signed-off-by: Tony Lindgren

    David Brownell
     

20 Mar, 2008

5 commits


06 Mar, 2008

2 commits

  • * omap-fixes:
    ARM: OMAP2: Register the L4 io bus to boot OMAP2
    ARM: OMAP1: Compile in other 16xx boards to OSK defconfig
    ARM: OMAP1: Refresh H2 defconfig
    ARM: OMAP1: Refresh OSK defconfig
    ARM: OMAP: gpio lockdep updates
    ARM: OMAP1: omap1/pm.c build fix
    ARM: OMAP1: omap h2 regression fix
    ARM: OMAP1: Fix compile for boards depending on old gpio expander
    ARM: OMAP1: omap h3 regression and build fix
    ARM: OMAP: Remove compiler warning when i2c is not set
    ARM: OMAP: fix omap i2c init (regression)
    ARM: OMAP: fix false lockdep warnings
    ARM: OMAP: Fix sleep under spinlock for cpufreq
    ARM: OMAP: Pass logical DMA channel number always to callback handlers

    Russell King
     
  • __FUNCTION__ is gcc-specific, use __func__

    Signed-off-by: Harvey Harrison
    Signed-off-by: Andrew Morton
    Signed-off-by: Russell King

    Harvey Harrison
     

05 Mar, 2008

5 commits

  • Fix some spinlock issues reported by lockdep: since the gpio bank
    locks can be aquired in both irq and non-irq contexts, they need
    to be consistent about always using the irq-safe variants.

    Signed-off-by: David Brownell
    Signed-off-by: Tony Lindgren

    David Brownell
     
  • In mainline, the "old style" I2C registration was only removed for
    OMAP2, leading to init-time bugs (regressions) like:

    sysfs: duplicate filename 'i2c_omap.1' can not be created
    ------------[ cut here ]------------
    WARNING: at fs/sysfs/dir.c:424 sysfs_add_one+0x40/0xd4()
    Modules linked in:
    ... deletia ...
    [] (omap_init_i2c+0x0/0x50) from [] (omap_init_devices+0x10/0x24)
    r4:c001e000
    [] (omap_init_devices+0x0/0x24) from [] (do_initcalls+0x78/0x200)
    ... deletia ...
    ---[ end trace ca143223eefdc828 ]---
    kobject_add_internal failed for i2c_omap.1 with -EEXIST, don't try to register things with the same name in the same directory.

    The fix is obvious: remove the old init code, it's no longer needed.

    Signed-off-by: David Brownell
    Signed-off-by: Tony Lindgren

    David Brownell
     
  • Remove false lockdep warnings about lock recursion when declaring
    IRQs as being wake-capable, by marking putting GPIO irq_desc locks
    into their own class.

    (Thanks to Peter Zijlstra for helping track down such a small
    fix to this problem.)

    Signed-off-by: David Brownell
    Signed-off-by: Tony Lindgren

    David Brownell
     
  • [ 10.523437] BUG: sleeping function called from invalid context at kernel/mut6
    [ 10.523437] in_atomic():0, irqs_disabled():128
    [ 10.523437] [] (dump_stack+0x0/0x14) from [] (__might_sl)
    [ 10.523437] [] (__might_sleep+0x0/0xd4) from [] (mutex_l)
    [ 10.523437] r5 = C02F0DE8 r4 = C02F0DF0
    [ 10.523437] [] (mutex_lock+0x0/0x44) from [] (clk_get+0x)
    [ 10.523437] r4 = 00000000
    [ 10.523437] [] (clk_get+0x0/0x128) from [] (omap_getspee)
    [ 10.523437] r8 = 00000002 r7 = 00000000 r6 = C031DAF8 r5 = C0473980
    [ 10.523437] r4 = 00000000
    [ 10.523437] [] (omap_getspeed+0x0/0x5c) from [] (cpufreq)
    [ 10.523437] r5 = C0473980 r4 = 00000002

    Signed-off-by: Hiroshi DOYU
    Signed-off-by: Tony Lindgren

    Hiroshi DOYU
     
  • This makes parameter passing to DMA handlers uniform between non-chained
    and chained transfers and makes debugging easier. Additional data like
    chain_id can be always passed to handlers via callback data if needed.

    Signed-off-by: Jarkko Nikula
    Signed-off-by: Tony Lindgren

    Jarkko Nikula
     

09 Feb, 2008

8 commits


08 Feb, 2008

1 commit

  • This patchset adds a flags variable to reserve_bootmem() and uses the
    BOOTMEM_EXCLUSIVE flag in crashkernel reservation code to detect collisions
    between crashkernel area and already used memory.

    This patch:

    Change the reserve_bootmem() function to accept a new flag BOOTMEM_EXCLUSIVE.
    If that flag is set, the function returns with -EBUSY if the memory already
    has been reserved in the past. This is to avoid conflicts.

    Because that code runs before SMP initialisation, there's no race condition
    inside reserve_bootmem_core().

    [akpm@linux-foundation.org: coding-style fixes]
    [akpm@linux-foundation.org: fix powerpc build]
    Signed-off-by: Bernhard Walle
    Cc:
    Cc: "Eric W. Biederman"
    Cc: Vivek Goyal
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bernhard Walle
     

29 Jan, 2008

1 commit

  • * 'blk-end-request' of git://git.kernel.dk/linux-2.6-block: (30 commits)
    blk_end_request: changing xsysace (take 4)
    blk_end_request: changing ub (take 4)
    blk_end_request: cleanup of request completion (take 4)
    blk_end_request: cleanup 'uptodate' related code (take 4)
    blk_end_request: remove/unexport end_that_request_* (take 4)
    blk_end_request: changing scsi (take 4)
    blk_end_request: add bidi completion interface (take 4)
    blk_end_request: changing ide-cd (take 4)
    blk_end_request: add callback feature (take 4)
    blk_end_request: changing ide normal caller (take 4)
    blk_end_request: changing cpqarray (take 4)
    blk_end_request: changing cciss (take 4)
    blk_end_request: changing ide-scsi (take 4)
    blk_end_request: changing s390 (take 4)
    blk_end_request: changing mmc (take 4)
    blk_end_request: changing i2o_block (take 4)
    blk_end_request: changing viocd (take 4)
    blk_end_request: changing xen-blkfront (take 4)
    blk_end_request: changing viodasd (take 4)
    blk_end_request: changing sx8 (take 4)
    ...

    Linus Torvalds
     

28 Jan, 2008

3 commits

  • * pxa-plat: (53 commits)
    [ARM] 4762/1: Basic support for Toradex Colibri module
    [ARM] pxa: fix mci_init functions returning -1
    [ARM] 4737/1: Refactor corgi_lcd to improve readability + bugfix
    [ARM] 4747/1: pcm027: support for pcm990 baseboard for phyCORE-PXA270
    [ARM] 4746/1: pcm027: network support for phyCORE-PXA270
    [ARM] 4745/1: pcm027: default configuration
    [ARM] 4744/1: pcm027: add support for phyCORE-PXA270 CPU module
    [NET] smc91x: Make smc91x use IRQ resource trigger flags
    [ARM] pxa: add default config for littleton
    [ARM] pxa: add basic support for Littleton (PXA3xx Form Factor Platform)
    [ARM] 4664/1: Add basic support for HTC Magician PDA phones
    [ARM] 4649/1: Base support for pxa-based Toshiba e-series PDAs.
    [ARM] pxa: skip registers saving/restoring if entering standby mode
    [ARM] pxa: fix PXA27x resume
    [ARM] pxa: Avoid fiddling with CKEN register on suspend
    [ARM] pxa: Add PXA3 standby code hooked into the IRQ wake scheme
    [ARM] pxa: Add zylonite MFP wakeup configurations
    [ARM] pxa: program MFPs for low power mode when suspending
    [ARM] pxa: make MFP configuration processor independent
    [ARM] pxa: remove un-used pxa3xx_mfp_set_xxx() functions
    ...

    Conflicts:

    arch/arm/mach-pxa/ssp.c

    Signed-off-by: Russell King

    Russell King
     
  • smc91x is shared between many different platforms. Each platform needs
    to specify the interrupt type, and in some cases the irq type depends
    on more than just the build configuration - it depends on runtime
    checks.

    Rather than throwing this code into the SMC_IRQ_FLAGS definition, provide
    a way for these flags to be passed via the IRQ resource itself.

    Note that IRQF_TRIGGER_* constants are intentionally defined to correspond
    with the IORESOURCE_IRQ_* interrupt type flags, in much the same way that
    the low bits of PCI iomem resources correspond with the BAR flag bits.

    Also provide a way to configure smc91x to read the IRQ flags from the
    resource. Once all platforms have been converted over (signified
    by all definitions of SMC_IRQ_FLAGS being -1) SMC_IRQ_FLAGS should
    be removed.

    Signed-off-by: Russell King
    Acked-by: Nicolas Pitre
    Acked-by: Jeff Garzik

    Russell King
     
  • This patch converts arm's OMAP mailbox driver to use
    blk_end_request interfaces.

    If the original code was converted literally, blk_end_request would
    be called with '-EIO' because end_that_request_last() were called
    with '0' (i.e. failure).
    But I think these '0's are bugs in the original code because it's
    unlikely that all requests are treated as failure.
    (The bugs should have no effect unless these requests have an end_io
    callback.)

    So I changed them to pass '0' (i.e. success) to blk_end_request.

    Cc: Toshihiro Kobayashi
    Cc: Hiroshi DOYU
    Signed-off-by: Kiyoshi Ueda
    Signed-off-by: Jun'ichi Nomura
    Signed-off-by: Jens Axboe

    Kiyoshi Ueda
     

26 Jan, 2008

1 commit