16 Dec, 2009

40 commits

  • Caused by commit 0b83ddebc6e884dc0221358cf68c461520fbdd8e ("MFD:
    twl4030: add twl4030_codec MFD as a new child to the core") interacting
    with commit b07682b6056eb6701f8cb86aa5800e6f2ea7919b ("mfd: Rename
    twl4030* driver files to enable re-use").

    This file seems to have been missed in the renaming.

    Signed-off-by: Stephen Rothwell
    Acked-by: Peter Ujfalusi
    Acked-by: Mark Brown
    Acked-by: Tony Lindgren
    Signed-off-by: Linus Torvalds

    Stephen Rothwell
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm: (80 commits)
    dm snapshot: use merge origin if snapshot invalid
    dm snapshot: report merge failure in status
    dm snapshot: merge consecutive chunks together
    dm snapshot: trigger exceptions in remaining snapshots during merge
    dm snapshot: delay merging a chunk until writes to it complete
    dm snapshot: queue writes to chunks being merged
    dm snapshot: add merging
    dm snapshot: permit only one merge at once
    dm snapshot: support barriers in snapshot merge target
    dm snapshot: avoid allocating exceptions in merge
    dm snapshot: rework writing to origin
    dm snapshot: add merge target
    dm exception store: add merge specific methods
    dm snapshot: create function for chunk_is_tracked wait
    dm snapshot: make bio optional in __origin_write
    dm mpath: reject messages when device is suspended
    dm: export suspended state to targets
    dm: rename dm_suspended to dm_suspended_md
    dm: swap target postsuspend call and setting suspended flag
    dm crypt: add plain64 iv
    ...

    Linus Torvalds
     
  • * 'for-2.6.33' of git://git.kernel.dk/linux-2.6-block:
    cfq: set workload as expired if it doesn't have any slice left
    Fix a CFQ crash in "for-2.6.33" branch of block tree
    cfq: Remove wait_request flag when idle time is being deleted
    cfq-iosched: commenting non-obvious initialization
    cfq-iosched: Take care of corner cases of group losing share due to deletion
    cfq-iosched: Get rid of cfqq wait_busy_done flag
    cfq: Optimization for close cooperating queue searching
    block,xd: Delay allocation of DMA buffers until device is known
    drbd: Following the hmac change to SHASH (see linux commit 8bd1209cfff)
    cfq-iosched: reduce write depth only if sync was delayed

    Linus Torvalds
     
  • * git://git.infradead.org/battery-2.6:
    power_supply_sysfs: Handle -ENODATA in a special way
    wm831x_backup: Remove unused variables
    gta02: Set pcf50633 charger_reference_current_ma
    pcf50633: Query charger status directly
    pcf50633: Properly reenable charging when the supply conditions change
    pcf50633: Get rid of charging restart software auto-triggering
    pcf50633: introduces battery charging current control
    pcf50633: Add ac power supply class to the charger
    wm831x: Factor out WM831x backup battery charger

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:
    USB: Close usb_find_interface race v3
    Revert "USB: Close usb_find_interface race"

    Linus Torvalds
     
  • Report output values as 1/1000 of earth gravity.

    Output values from lis3 can be read from sysfs position entry and from
    input device. Input device can be accessed as event device and as
    joystick device. Joystick device can be in two modes. Meaning of the
    output values varies from case to case depending on the chip type and
    configuration (scale). Only joystick interface in JS_CORR_BROKEN mode
    returned somehow similar output values in different configurations.
    Joystick device is in that state by default in case of lis3.

    Position sysfs entry, input event device and raw joystick device have been
    little bit broken since meaning of the output values has been varied
    between 12 and 8 bit devices. Applications which relayed on those methods
    failed if the chip is different than the expected one.

    This patch converts output values to mean similar thing in different
    configurations. Both 8 and 12 bit devices reports now same acceleration
    values. If somebody implements full scale support to the driver, output
    values will still mean the same. Scaling factor and input device range
    must be updated in that case.

    Joystick interface in JS_CORR_BROKEN mode is not touched by this patch.
    All other interfaces have different scale after this change. For 12 bit
    device scaling factor is 0.977 which keeps scaled and unscaled values are
    quite close to each others. For 8 bit device, scaled values are 18 times
    bigger than unscaled values.

    Signed-off-by: Samu Onkalo
    Acked-by: Éric Piel
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Samu Onkalo
     
  • It is possible to read position information at the chip measurement rate
    via sysfs. This patch adds possibility to configure chip measurement
    rate.

    Signed-off-by: Samu Onkalo
    Signed-off-by: Éric Piel
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Samu Onkalo
     
  • Chip is calibrated by the manufacturer. There is no need to calibarate it
    at driver level. If the chip is used as a joystick, calibaration can be
    done using joystick device calibration mechanism.

    Signed-off-by: Samu Onkalo
    Acked-by: Éric Piel
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Samu Onkalo
     
  • Implement selftest feature as specified by chip manufacturer. Control:
    read selftest sysfs entry

    Response: "OK x y z" or "FAIL x y z"

    where x, y, and z are difference between selftest mode and normal mode.
    Test is passed when values are within acceptance limit values.

    Acceptance limits are provided via platform data. See chip spesifications
    for acceptance limits. If limits are not properly set, OK / FAIL decision
    is meaningless. However, userspace application can still make decision
    based on the numeric x, y, z values.

    Selftest is meant for HW diagnostic purposes. It is not meant to be
    called during normal use of the chip. It may cause false interrupt
    events. Selftest mode delays polling of the normal results but it doesn't
    cause wrong values. Chip must be in static state during selftest. Any
    acceration during the test causes most probably failure.

    Signed-off-by: Samu Onkalo
    Acked-by: Éric Piel
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Samu Onkalo
     
  • Lis3 accelerometer sensors have quite long power on delay (up to 125
    ms). This patch adds necessary delay to power on sequence for currently
    supported lis3 chips.

    Signed-off-by: Samu Onkalo
    Tested-by: Éric Piel
    Acked-by: Éric Piel
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Samu Onkalo
     
  • Originally the driver was only targeted to 12bits sensors. When support
    for 8bits sensors was added, some slight difference in the registers were
    overlooked. This should fix it, both for initialization, and for
    displaying the rate.

    Reported-by: Kalhan Trisal
    Reported-by: Christoph Plattner
    Tested-by: Christoph Plattner
    Tested-by: Samu Onkalo
    Signed-off-by: Éric Piel
    Signed-off-by: Samu Onkalo
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Éric Piel
     
  • Most of the documentation and comments were written when the driver was
    only supporting one type of chip, only via ACPI/HP. Update the info to
    the much clearer understanding that we have now.

    Signed-off-by: Éric Piel
    Signed-off-by: Samu Onkalo
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Éric Piel
     
  • polled input device itself was not free'd.

    Signed-off-by: Samu Onkalo
    Tested-by: Éric Piel
    Acked-by: Éric Piel
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Samu Onkalo
     
  • Send input_sync after each measurement round. This helps userspace to
    detect which reported values belongs to the same measurement.

    Signed-off-by: Samu Onkalo
    Tested-by: Éric Piel
    Acked-by: Éric Piel
    Cc: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Samu Onkalo
     
  • Add control of fan minimum turn-on output levels, decoupling it from the
    fan turn-off output level. Add control of rate of change of fan output
    level. These in turn allow lower turn-off rotor speed and smoother
    transitions for better thermal and acoustic control authority. Add
    support for constant fan speed and proportional-response operations modes.

    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: Daniel J Blueman
    Cc: Jean Delvare
    Cc: David Hubbard
    Cc: Hans de Goede
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Daniel J Blueman
     
  • Improve the /proc/interrupts output so the irq number can be mapped to
    platform device on boards with multiple tmio_mmc instances.

    Signed-off-by: Magnus Damm
    Cc:
    Cc: Paul Mundt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Magnus Damm
     
  • Add SD host driver for Blackfin BF54x and BF51x.

    [akpm@linux-foundation.org: fix layout, c99 warning]
    Signed-off-by: Cliff Cai
    Signed-off-by: Bryan Wu
    Signed-off-by: Mike Frysinger
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Cliff Cai
     
  • This new revision of the IP adds some improvements to the MCI already
    present in several Atmel SOC.

    Some new registers are added and a particular way of handling DMA
    interaction lead to a new sequence in function call which is backward
    compatible: On MCI2, we must set the DMAEN bit to enable the DMA
    handshaking interface. This must happen before the data transfer command
    is sent.

    A new function is able to differentiate MCI2 code and is based on
    knowledge of processor id (cpu_is_xxx()).

    Signed-off-by: Nicolas Ferre
    Signed-off-by: Haavard Skinnemoen
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nicolas Ferre
     
  • Allow the use of another DMA controller driver in atmel-mci sd/mmc driver.
    This adds a generic dma_slave pointer to the mci platform structure where
    we can store DMA controller information. In atmel-mci we use information
    provided by this structure to initialize the driver (with new helper
    functions that are architecture dependant).

    This also adds at32/avr32 chip modifications to cope with this new access
    method.

    Signed-off-by: Nicolas Ferre
    Cc: Haavard Skinnemoen
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nicolas Ferre
     
  • Some people run general-purpose distribution kernels on netbooks with
    a card that is physically non-removable or logically non-removable
    (e.g. used for /home) and cannot be cleanly unmounted during suspend.
    Add a module parameter to set whether cards are assumed removable or
    non-removable, with the default set by CONFIG_MMC_UNSAFE_RESUME.

    In general, it is not possible to tell whether a card present in an MMC
    slot after resume is the same that was there before suspend. So there are
    two possible behaviours, each of which will cause data loss in some cases:

    CONFIG_MMC_UNSAFE_RESUME=n (default): Cards are assumed to be removed
    during suspend. Any filesystem on them must be unmounted before suspend;
    otherwise, buffered writes will be lost.

    CONFIG_MMC_UNSAFE_RESUME=y: Cards are assumed to remain present during
    suspend. They must not be swapped during suspend; otherwise, buffered
    writes will be flushed to the wrong card.

    Currently the choice is made at compile time and this allows that to be
    overridden at module load time.

    Signed-off-by: Ben Hutchings
    Cc: Wouter van Heyst
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ben Hutchings
     
  • Convert two missed s3c2410 specific gpio calls to gpiolib calls.

    Signed-off-by: Ben Dooks
    Signed-off-by: Simtec Linux Team
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ben Dooks
     
  • This is still in use especially to develop SDIO device drivers on laptop
    machines which are lacking SDIO slots. This adapter supports SDIO cards
    only due to lack of 136-bit response capability.

    Signed-off-by: Nicolas Pitre
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nicolas Pitre
     
  • Remove check for host->iclk being NULL from error path since we already
    know it is non-null and use return value from clk_get.

    Signed-off-by: Ladislav Michl
    Acked-by: Tony Lindgren
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ladislav Michl
     
  • Add cpufreq support to MMC driver. The clock divider value has to be
    modified according to the controller input frequency.

    Signed-off-by: Chaithrika U S
    Cc: Linus Walleij
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chaithrika U S
     
  • Currently DaVinci EDMA driver supports multiple EDMA channel controller
    instances. edma_alloc_channel() api returns a 32 bit value which has the
    channel controller number in MSB and the EDMA channel number in LSB. The
    variables which store the value returned by edma_alloc_channel() have to
    be 32 bit wide now.

    Signed-off-by: Sudhakar Rajashekhara
    Acked-by: Vipin Bhandari
    Cc: Purshotam Kumar
    Acked-by: David Brownell
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Sudhakar Rajashekhara
     
  • Add support for MMC/SD controller driver for all DaVinci family SoC. This
    patch supports davinci family SoC's DM6446, DM355, DM365 and
    DA830/OMAPL137.

    The patch has been tested on DM355 EVM.

    The MMCSD controller specifications for DM355 can be found at
    http://focus.ti.com/general/docs/litabsmultiplefilelist.tsp?literatureNumber=spruee2c

    Signed-off-by: Vipin Bhandari
    Signed-off-by: Purshotam Kumar
    Acked-by: David Brownell
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vipin Bhandari
     
  • If the NULL test on mrq is needed, then the derefernce should be after the
    NULL test.

    A simplified version of the semantic match that detects this problem is as
    follows (http://coccinelle.lip6.fr/):

    //
    @match exists@
    expression x, E;
    identifier fld;
    @@

    * x->fld
    ... when != \(x = E\|&x\)
    * x == NULL
    //

    Signed-off-by: Julia Lawall
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Julia Lawall
     
  • Rework the current CIS tuple parsing code, reusing the existing
    infrastructure and providing an easy way to add new CISTPL_FUNCE parsers
    by TPLFE_TYPE.

    Valid known CIS tuples are now silently queued for the SDIO function
    driver when not parsed/processed (-EILSEQ) by the SDIO core. Unknown CIS
    tuples (-ENOENT) are queued too for the SDIO function driver without
    aborting the initialization, but emit a warning in the kernel log.

    CISTPL_FUNCE tuples can be "whitelisted" now by adding a matching entry to
    the cis_tpl_funce_list table.

    Signed-off-by: Albert Herranz
    Acked-by: Pierre Ossman
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Albert Herranz
     
  • After a failing allocation of mmc or a failed ioremap in mxcmci_probe host was
    used uninitialized.

    Signed-off-by: Uwe Kleine-König
    Acked-by: Sascha Hauer
    Cc: Pierre Ossman
    Cc: Martin Fuzzey
    Cc: Pierre Ossman
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Uwe Kleine-König
     
  • Rather than have the EDD depend on !ia64 (and assuming that only ia64,
    x86, x86_64 will be including this Kconfig), have EDD depend on the only
    arches which can support this code. This should allow all other arches to
    cleanly include the firmware Kconfig.

    Also simplify the x86 string used by FIRMWARE_MEMMAP to match EDD.

    Signed-off-by: Mike Frysinger
    Acked-by: Matt Domsch
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mike Frysinger
     
  • Recently, We marked strstrip() as must_check. because it was frequently
    misused and it should be checked. However, we found one exception.
    scsi/ipr.c intentionally ignore return value of strstrip. Because it
    wishes to keep the whitespace at the beginning.

    Thus we need to keep with and without checked whitespace trim function.
    This patch adds a new strim() and changes ipr.c to use it.

    [akpm@linux-foundation.org: coding-style fixes]
    Suggested-by: Alan Cox
    Signed-off-by: KOSAKI Motohiro
    Cc: James Bottomley
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KOSAKI Motohiro
     
  • Signed-off-by: Joe Perches
    Cc: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Signed-off-by: Joe Perches
    Cc: Jeff Garzik
    Cc: Tejun Heo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Signed-off-by: Joe Perches
    Acked-by: Matt Mackall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joe Perches
     
  • Makes use of skip_spaces() defined in lib/string.c for removing leading
    spaces from strings all over the tree.

    It decreases lib.a code size by 47 bytes and reuses the function tree-wide:
    text data bss dec hex filename
    64688 584 592 65864 10148 (TOTALS-BEFORE)
    64641 584 592 65817 10119 (TOTALS-AFTER)

    Also, while at it, if we see (*str && isspace(*str)), we can be sure to
    remove the first condition (*str) as the second one (isspace(*str)) also
    evaluates to 0 whenever *str == 0, making it redundant. In other words,
    "a char equals zero is never a space".

    Julia Lawall tried the semantic patch (http://coccinelle.lip6.fr) below,
    and found occurrences of this pattern on 3 more files:
    drivers/leds/led-class.c
    drivers/leds/ledtrig-timer.c
    drivers/video/output.c

    @@
    expression str;
    @@

    ( // ignore skip_spaces cases
    while (*str && isspace(*str)) { \(str++;\|++str;\) }
    |
    - *str &&
    isspace(*str)
    )

    Signed-off-by: André Goddard Rosa
    Cc: Julia Lawall
    Cc: Martin Schwidefsky
    Cc: Jeff Dike
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Cc: "H. Peter Anvin"
    Cc: Richard Purdie
    Cc: Neil Brown
    Cc: Kyle McMartin
    Cc: Henrique de Moraes Holschuh
    Cc: David Howells
    Cc:
    Cc: Samuel Ortiz
    Cc: Patrick McHardy
    Cc: Takashi Iwai
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    André Goddard Rosa
     
  • To avoid a collision with the newly-added kernel-wide skip_spaces().

    Signed-off-by: André Goddard Rosa
    Cc: James Bottomley
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • The kernel offers with TIOCL_GETKMSGREDIRECT ioctl() the possibility to
    redirect the kernel messages to a specific console.

    However, since it's not possible to switch to the kernel message console
    after a panic(), it would be nice if the kernel would print the panic
    message on the current console.

    This patch series adds a new interface to access the global kmsg_redirect
    variable by a function to be able to use it in code where
    CONFIG_VT_CONSOLE is not set (kernel/panic.c).

    This patch:

    Instead of using and exporting a global value kmsg_redirect, introduce a
    function vt_kmsg_redirect() that both can set and return the console where
    messages are printed.

    Change all users of kmsg_redirect (the VT code itself and kernel/power.c)
    to the new interface.

    The main advantage is that vt_kmsg_redirect() can also be used when
    CONFIG_VT_CONSOLE is not set.

    Signed-off-by: Bernhard Walle
    Cc: Alan Cox
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bernhard Walle
     
  • With generic modular drivers handling all of this stuff, the
    geode-specific code can go away. The cs5535-gpio, cs5535-mfgpt, and
    cs5535-clockevt drivers now handle this.

    Signed-off-by: Andres Salomon
    Cc: Jordan Crouse
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Cc: john stultz
    Cc: Chris Ball
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andres Salomon
     
  • ..and include them in the lxfb/gxfb drivers rather than asm/geode.h (where
    possible).

    Signed-off-by: Andres Salomon
    Cc: Jordan Crouse
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Cc: john stultz
    Cc: Chris Ball
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andres Salomon
     
  • Signed-off-by: Andres Salomon
    Cc: Jordan Crouse
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Cc: john stultz
    Cc: Chris Ball
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andres Salomon