08 Aug, 2009

1 commit

  • sdhci_alloc_host returns an ERR_PTR value in an error case instead of NULL.

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

    //
    @match exists@
    expression x, E;
    statement S1, S2;
    @@

    x = sdhci_alloc_host(...)
    ... when != x = E
    (
    * if (x == NULL || ...) S1 else S2
    |
    * if (x == NULL && ...) S1 else S2
    )
    //

    Signed-off-by: Julia Lawall
    Acked-by: Anton Vorontsov
    Cc: Matt Fleming
    Cc: Ian Molton
    Cc: "Roberto A. Foglietta"
    Cc: Philip Langdale
    Cc: Pierre Ossman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Julia Lawall
     

31 Jul, 2009

3 commits


30 Jul, 2009

1 commit

  • Since commit 8dfd0374be84793360db7fff2e635d2cd3bbcb21 ("MMC core: limit
    minimum initialization frequency to 400kHz") MMC core checks for minimum
    frequency, and that causes following messages flood when using eSDHC
    controllers:

    ...
    mmc0: Minimum clock frequency too high for identification mode
    mmc0: Minimum clock frequency too high for identification mode
    ...

    The warnings are legitimate, since if we'd use 133 MHz clocks for standard
    SDHCI controllers, we'd not able to scale frequency down to 400 kHz.

    But eSDHC controllers have a non-standard SD clock management, so we can
    divide clock by 256 * 16, not just 256.

    This patch introduces get_min_clock() callback for sdhci core and
    implements it for sdhci-of driver, and thus fixes the issue.

    Signed-off-by: Anton Vorontsov
    Cc: Matt Fleming
    Cc: Ian Molton
    Cc: "Roberto A. Foglietta"
    Cc: Pierre Ossman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Anton Vorontsov
     

21 Jul, 2009

1 commit

  • Standard data flow for MMC/SD/SDIO cards requires that the mvsdio
    controller be set for big endian operation. This is causing problems
    with buffers which length is not a multiple of 4 bytes as the last
    partial word doesn't get shifted all the way and stored properly in
    memory. Let's compensate for this.

    Signed-off-by: Nicolas Pitre
    CC: stable@kernel.org
    Signed-off-by: Linus Torvalds

    Nicolas Pitre
     

09 Jul, 2009

1 commit


03 Jul, 2009

1 commit


01 Jul, 2009

1 commit

  • Add a new spi_master.flags word listing constraints relevant to that
    controller. Define the first constraint bit: a half duplex restriction.
    Include that constraint in the OMAP1 MicroWire controller driver.

    Have the mmc_spi host be the first customer of this flag. Its coding
    relies heavily on full duplex transfers, so it must fail when the
    underlying controller driver won't perform them.

    (The spi_write_then_read routine could use it too: use the
    temporarily-withdrawn full-duplex speedup unless this flag is set, in
    which case the existing code applies. Similarly, any spi_master
    implementing only SPI_3WIRE should set the flag.)

    Signed-off-by: David Brownell
    Cc: Marek Szyprowski
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     

22 Jun, 2009

8 commits


15 Jun, 2009

2 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc: (25 commits)
    atmel-mci: add MCI2 register definitions
    atmel-mci: Integrate AT91 specific definition in header file
    tmio_mmc: allow compilation for ASIC3
    mmc_block: do not DMA to stack
    sdhci: Print ADMA status and pointer on debug
    tmio_mmc: fix clock setup
    tmio_mmc: map SD control registers after enabling the MFD cell
    tmio_mmc: correct probe return value for num_resources != 3
    tmio_mmc: don't use set_irq_type
    tmio_mmc: add bus_shift support
    MFD,mmc: tmio_mmc: make HCLK configurable
    mmc_spi: don't use EINVAL for possible transmission errors
    cb710: more cleanup for the DEBUG case.
    sdhci: platform driver for SDHCI
    mxcmmc: remove frequency workaround
    cb710: handle DEBUG define in Makefile
    cb710: add missing parenthesis
    cb710: fix printk format string
    mmc: Driver for CB710/720 memory card reader (MMC part)
    pxamci: add regulator support.
    ...

    Linus Torvalds
     
  • * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (417 commits)
    MAINTAINERS: EB110ATX is not ebsa110
    MAINTAINERS: update Eric Miao's email address and status
    fb: add support of LCD display controller on pxa168/910 (base layer)
    [ARM] 5552/1: ep93xx get_uart_rate(): use EP93XX_SYSCON_PWRCNT and EP93XX_SYSCON_PWRCN
    [ARM] pxa/sharpsl_pm: zaurus needs generic pxa suspend/resume routines
    [ARM] 5544/1: Trust PrimeCell resource sizes
    [ARM] pxa/sharpsl_pm: cleanup of gpio-related code.
    [ARM] pxa/sharpsl_pm: drop set_irq_type calls
    [ARM] pxa/sharpsl_pm: merge pxa-specific code into generic one
    [ARM] pxa/sharpsl_pm: merge the two sharpsl_pm.c since it's now pxa specific
    [ARM] sa1100: remove unused collie_pm.c
    [ARM] pxa: fix the conflicting non-static declarations of global_gpios[]
    [ARM] 5550/1: Add default configure file for w90p910 platform
    [ARM] 5549/1: Add clock api for w90p910 platform.
    [ARM] 5548/1: Add gpio api for w90p910 platform
    [ARM] 5551/1: Add multi-function pin api for w90p910 platform.
    [ARM] Make ARM_VIC_NR depend on ARM_VIC
    [ARM] 5546/1: ARM PL022 SSP/SPI driver v3
    ARM: OMAP4: SMP: Update defconfig for OMAP4430
    ARM: OMAP4: SMP: Enable SMP support for OMAP4430
    ...

    Linus Torvalds
     

14 Jun, 2009

21 commits