07 Nov, 2011

1 commit

  • * 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)
    Revert "tracing: Include module.h in define_trace.h"
    irq: don't put module.h into irq.h for tracking irqgen modules.
    bluetooth: macroize two small inlines to avoid module.h
    ip_vs.h: fix implicit use of module_get/module_put from module.h
    nf_conntrack.h: fix up fallout from implicit moduleparam.h presence
    include: replace linux/module.h with "struct module" wherever possible
    include: convert various register fcns to macros to avoid include chaining
    crypto.h: remove unused crypto_tfm_alg_modname() inline
    uwb.h: fix implicit use of asm/page.h for PAGE_SIZE
    pm_runtime.h: explicitly requires notifier.h
    linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h
    miscdevice.h: fix up implicit use of lists and types
    stop_machine.h: fix implicit use of smp.h for smp_processor_id
    of: fix implicit use of errno.h in include/linux/of.h
    of_platform.h: delete needless include
    acpi: remove module.h include from platform/aclinux.h
    miscdevice.h: delete unnecessary inclusion of module.h
    device_cgroup.h: delete needless include
    net: sch_generic remove redundant use of
    net: inet_timewait_sock doesnt need
    ...

    Fix up trivial conflicts (other header files, and removal of the ab3550 mfd driver) in
    - drivers/media/dvb/frontends/dibx000_common.c
    - drivers/media/video/{mt9m111.c,ov6650.c}
    - drivers/mfd/ab3550-core.c
    - include/linux/dmaengine.h

    Linus Torvalds
     

05 Nov, 2011

1 commit

  • * 'next' of git://git.infradead.org/users/vkoul/slave-dma: (63 commits)
    dmaengine: mid_dma: mask_peripheral_interrupt only when dmac is idle
    dmaengine/ep93xx_dma: add module.h include
    pch_dma: Reduce wasting memory
    pch_dma: Fix suspend issue
    dma/timberdale: free_irq() on an error path
    dma: shdma: transfer based runtime PM
    dmaengine: shdma: protect against the IRQ handler
    dmaengine i.MX DMA/SDMA: add missing include of linux/module.h
    dmaengine: delete redundant chan_id and chancnt initialization in dma drivers
    dmaengine/amba-pl08x: Check txd->llis_va before freeing dma_pool
    dmaengine/amba-pl08x: Add support for sg len greater than one for slave transfers
    serial: sh-sci: don't filter on DMA device, use only channel ID
    ARM: SAMSUNG: Remove Samsung specific enum type for dma direction
    ASoC: Samsung: Update DMA interface
    spi/s3c64xx: Merge dma control code
    spi/s3c64xx: Add support DMA engine API
    ARM: SAMSUNG: Remove S3C-PL330-DMA driver
    ARM: S5P64X0: Use generic DMA PL330 driver
    ARM: S5PC100: Use generic DMA PL330 driver
    ARM: S5PV210: Use generic DMA PL330 driver
    ...

    Fix up fairly trivial conflicts in
    - arch/arm/mach-exynos4/{Kconfig,clock.c}
    - arch/arm/mach-s5p64x0/dma.c

    Linus Torvalds
     

04 Nov, 2011

1 commit

  • * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (37 commits)
    MIPS: O32: Provide definition of registers ta0 .. ta3.
    MIPS: perf: Add Octeon support for hardware perf.
    MIPS: perf: Add support for 64-bit perf counters.
    MIPS: perf: Reorganize contents of perf support files.
    MIPS: perf: Cleanup formatting in arch/mips/kernel/perf_event.c
    MIPS: Add accessor macros for 64-bit performance counter registers.
    MIPS: Add probes for more Octeon II CPUs.
    MIPS: Add more CPU identifiers for Octeon II CPUs.
    MIPS: XLR, XLS: Add comment for smp setup
    MIPS: JZ4740: GPIO: Check correct IRQ in demux handler
    MIPS: JZ4740: GPIO: Simplify IRQ demuxer
    MIPS: JZ4740: Use generic irq chip
    MIPS: Alchemy: remove all CONFIG_SOC_AU1??? defines
    MIPS: Alchemy: kill au1xxx.h header
    MIPS: Alchemy: clean DMA code of CONFIG_SOC_AU1??? defines
    MIPS, IDE: Alchem, au1xxx-ide: Remove pb1200/db1200 header dep
    MIPS: Alchemy: Redo PCI as platform driver
    MIPS: Alchemy: more base address cleanup
    MIPS: Alchemy: rewrite USB platform setup.
    MIPS: Alchemy: abstract USB block control register access
    ...

    Fix up trivial conflicts in:
    arch/mips/alchemy/devboards/db1x00/platform.c
    drivers/ide/Kconfig
    drivers/mmc/host/au1xmmc.c
    drivers/video/Kconfig
    sound/mips/Kconfig

    Linus Torvalds
     

03 Nov, 2011

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/hwspinlock:
    hwspinlock: add MAINTAINERS entries
    hwspinlock/omap: omap_hwspinlock_remove should be __devexit
    hwspinlock/u8500: add hwspinlock driver
    hwspinlock/core: register a bank of hwspinlocks in a single API call
    hwspinlock/core: remove stubs for register/unregister
    hwspinlock/core: use a mutex to protect the radix tree
    hwspinlock/core/omap: fix id issues on multiple hwspinlock devices
    hwspinlock/omap: simplify allocation scheme
    hwspinlock/core: simplify 'owner' handling
    hwspinlock/core: simplify Kconfig

    Fix up trivial conflicts (addition of omap_hwspinlock_pdata, removal of
    omap_spinlock_latency) in arch/arm/mach-omap2/hwspinlock.c

    Also, do an "evil merge" to fix a compile error in omap_hsmmc.c which
    for some reason was reported in the same email thread as the "please
    pull hwspinlock changes".

    Linus Torvalds
     

02 Nov, 2011

2 commits

  • * 'next/devel' of git://git.linaro.org/people/arnd/arm-soc: (50 commits)
    ARM: tegra: update defconfig
    arm/tegra: Harmony: Configure PMC for low-level interrupts
    arm/tegra: device tree support for ventana board
    arm/tegra: add support for ventana pinmuxing
    arm/tegra: prepare Seaboard pinmux code for derived boards
    arm/tegra: pinmux: ioremap registers
    gpio/tegra: Convert to a platform device
    arm/tegra: Convert pinmux driver to a platform device
    arm/dt: Tegra: Add pinmux node to tegra20.dtsi
    arm/tegra: Prep boards for gpio/pinmux conversion to pdevs
    ARM: mx5: fix clock usage for suspend
    ARM i.MX entry-macro.S: remove now unused code
    ARM i.MX boards: use CONFIG_MULTI_IRQ_HANDLER
    ARM i.MX tzic: add handle_irq function
    ARM i.MX avic: add handle_irq function
    ARM: mx25: Add the missing IIM base definition
    ARM i.MX avic: convert to use generic irq chip
    mx31moboard: Add poweroff support
    ARM: mach-qong: Add watchdog support
    ARM: davinci: AM18x: Add wl1271/wlan support
    ...

    Fix up conflicts in:
    arch/arm/mach-at91/at91sam9g45.c
    arch/arm/mach-mx5/devices-imx53.h
    arch/arm/plat-mxc/include/mach/memory.h

    Linus Torvalds
     
  • * 'next/cleanup' of git://git.linaro.org/people/arnd/arm-soc: (125 commits)
    ARM: mach-mxs: fix machines' initializers order
    mmc: mxcmmc: explicitly includes mach/hardware.h
    arm/imx: explicitly includes mach/hardware.h in pm-imx27.c
    arm/imx: remove mx27_setup_weimcs() from mx27.h
    arm/imx: explicitly includes mach/hardware.h in mach-kzm_arm11_01.c
    arm/imx: remove mx31_setup_weimcs() from mx31.h
    ARM: tegra: devices.c should include devices.h
    ARM: tegra: cpu-tegra: unexport two functions
    ARM: tegra: cpu-tegra: sparse type fix
    ARM: tegra: dma: staticify some tables and functions
    ARM: tegra: tegra2_clocks: don't export some tables
    ARM: tegra: tegra_powergate_is_powered should be static
    ARM: tegra: tegra_rtc_read_ms should be static
    ARM: tegra: tegra_init_cache should be static
    ARM: tegra: pcie: 0 -> NULL changes
    ARM: tegra: pcie: include board.h
    ARM: tegra: pcie: don't cast __iomem pointers
    ARM: tegra: tegra2_clocks: 0 -> NULL changes
    ARM: tegra: tegra2_clocks: don't cast __iomem pointers
    ARM: tegra: timer: don't cast __iomem pointers
    ...

    Fix up trivial conflicts in
    arch/arm/mach-omap2/Makefile,
    arch/arm/mach-u300/{Makefile.boot,core.c}
    arch/arm/plat-{mxc,omap}/devices.c

    Linus Torvalds
     

01 Nov, 2011

6 commits


29 Oct, 2011

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (83 commits)
    mmc: fix compile error when CONFIG_BLOCK is not enabled
    mmc: core: Cleanup eMMC4.5 conditionals
    mmc: omap_hsmmc: if multiblock reads are broken, disable them
    mmc: core: add workaround for controllers with broken multiblock reads
    mmc: core: Prevent too long response times for suspend
    mmc: recognise SDIO cards with SDIO_CCCR_REV 3.00
    mmc: sd: Handle SD3.0 cards not supporting UHS-I bus speed mode
    mmc: core: support HPI send command
    mmc: core: Add cache control for eMMC4.5 device
    mmc: core: Modify the timeout value for writing power class
    mmc: core: new discard feature support at eMMC v4.5
    mmc: core: mmc sanitize feature support for v4.5
    mmc: dw_mmc: modify DATA register offset
    mmc: sdhci-pci: add flag for devices that can support runtime PM
    mmc: omap_hsmmc: ensure pbias configuration is always done
    mmc: core: Add Power Off Notify Feature eMMC 4.5
    mmc: sdhci-s3c: fix potential NULL dereference
    mmc: replace printk with appropriate display macro
    mmc: core: Add default timeout value for CMD6
    mmc: sdhci-pci: add runtime pm support
    ...

    Linus Torvalds
     

27 Oct, 2011

27 commits

  • Code cleanup, putting all eMMC 4.5 detection cases together.
    This patch removes one if-statement and assembles all. And it also
    removes variable initialization below else-statement -- all members
    of card structure are already set to zero at card-init.

    Signed-off-by: Seungwon Jeon
    Signed-off-by: Chris Ball

    Seungwon Jeon
     
  • When device data indicates that multiple block reads are not supported
    on a given HSMMC controller instance, log a message to the console, and
    pass the appropriate MMC capability flag to the MMC core.

    Signed-off-by: Paul Walmsley
    Cc: Dave Hylands
    Tested-by: Steve Sakoman
    Signed-off-by: Chris Ball

    Paul Walmsley
     
  • Due to hardware bugs, some MMC host controllers don't support
    multiple-block reads[1]. To resolve, add a new MMC capability flag,
    MMC_CAP2_NO_MULTI_READ, which can be set by affected host controller
    drivers. When this capability is set, all reads will be issued one
    sector at a time.

    1. See for example Advisory 2.1.1.128 "MMC: Multiple Block Read
    Operation Issue" in _OMAP3530/3525/3515/3503 Silicon Errata_
    Revision F (October 2010) (SPRZ278F), available from
    http://focus.ti.com/lit/er/sprz278f/sprz278f.pdf

    Signed-off-by: Paul Walmsley
    Cc: Dave Hylands
    Tested-by: Steve Sakoman
    Signed-off-by: Chris Ball

    Paul Walmsley
     
  • * 'clk' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm:
    ARM: 7131/1: clkdev: Add Common Macro for clk_lookup
    clk: spi-pl022: convert to clk_prepare()/clk_unprepare()
    clk: timer-sp: convert to clk_prepare()/clk_unprepare()
    clk: sa1111: convert to clk_prepare()/clk_unprepare()
    clk: mmci: convert to clk_prepare()/clk_unprepare()
    clk: amba-pl011: convert to clk_prepare()/clk_unprepare()
    clk: amba-pl010: convert to clk_prepare()/clk_unprepare()
    clk: amba-clcd: convert to clk_prepare()/clk_unprepare()
    clk: amba bus: convert to clk_prepare()/clk_unprepare()
    clk: provide prepare/unprepare functions

    Linus Torvalds
     
  • * 'amba' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm:
    ARM: 7079/1: spi: Fix builderror in spi-pl022.c
    PM: add runtime PM support to MMCI
    PM: add runtime PM support to core Primecell driver

    Linus Torvalds
     
  • * 'gpio' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm: (43 commits)
    ARM: 7135/1: ep93xx: bring back missing
    ARM: 7104/1: plat-pxa: break out GPIO driver specifics
    ARM: 7103/1: plat-pxa: move PXA GPIO driver to GPIO subsystem
    ARM: 7042/3: mach-ep93xx: break out GPIO driver specifics
    ARM: 7101/1: arm/tegra: Replace with
    ARM: 7094/1: arm/tegra: Move EN_VDD_1V05_GPIO to board-harmony.h
    ARM: 7083/1: rewrite U300 GPIO to use gpiolib
    ARM: 7074/1: gpio: davinci: eliminate unused variable warnings
    ARM: 7063/1: Orion: gpio: add missing include of linux/types.h
    ARM: 7055/1: arm/tegra: mach/gpio.h: include linux/types.h to fix build
    ARM: 7054/1: arm/tegra: Delete custom gpio_to_irq, and irq_to_gpio
    ARM: 7053/1: gpio/tegra: Implement gpio_chip.to_irq
    ARM: 7052/1: gpio/tegra: Remove use of irq_to_gpio
    ARM: 7057/1: mach-pnx4008: rename GPIO header
    ARM: 7056/1: plat-nomadik: kill off
    ARM: 7050/1: mach-sa1100: delete irq_to_gpio() function
    ARM: 7049/1: mach-sa1100: move SA1100 GPIO driver to GPIO subsystem
    ARM: 7045/1: mach-lpc32xx: break out GPIO driver specifics
    ARM: 7044/1: mach-lpc32xx: move LPC32XX GPIO driver to GPIO subsystem
    ARM: 7043/1: mach-ixp2000: rename GPIO header
    ...

    Fix up trivial conflicts in arch/arm/mach-u300/Kconfig manually

    Linus Torvalds
     
  • While trying to suspend the mmc host there could still be
    ongoing requests that we need to wait for. At the same time
    a device driver must respond to a suspend request rather quickly.

    Instead of potentially wait "forever" by claiming the host we now
    "try" to claim the host instead. If it fails, -EBUSY is returned.

    Signed-off-by: Ulf Hansson
    Reviewed-by: Sujit Reddy Thumma
    Acked-by: Linus Walleij
    Signed-off-by: Chris Ball

    Ulf Hansson
     
  • Table 6-2: CCCR bit Definitions, address 00h. Part E1 SDIO Simplified
    Specification Version 3.00, Feb. 25, 2011.

    This patch has been tested with Marvell WLAN device SD8797.

    Signed-off-by: Bing Zhao
    Signed-off-by: Chris Ball

    Bing Zhao
     
  • Here is Essential conditions to indicate Version 3.00 Card
    (SD_SPEC=2 and SD_SPEC3=1) :
    (1) The card shall support CMD6
    (2) The card shall support CMD8
    (3) The card shall support CMD42
    (4) User area capacity shall be up to 2GB (SDSC) or 32GB (SDHC)
    User area capacity shall be more than or equal to 32GB and
    up to 2TB (SDXC)
    (5) Speed Class shall be supported (SDHC or SDXC)

    So even if SD card doesn't support any of the newly defined
    UHS-I bus speed mode, it can advertise itself as SD3.0 cards
    as long as it supports all the essential conditions of
    SD3.0 cards. Given this, these type of cards should atleast
    run in High Speed mode @50MHZ if it supports HS.

    But current initialization sequence for SD3.0 cards is
    such that these non-UHS-I SD3.0 cards runs in Default
    Speed mode @25MHz.

    This patch makes sure that these non-UHS-I SD3.0 cards run
    in High Speed Mode @50MHz.

    Tested this patch with SanDisk Extreme SDHC 8GB Class 10 card.

    Reported-by: "Hiremath, Vaibhav"
    Signed-off-by: Subhash Jadavani
    Signed-off-by: Chris Ball

    Subhash Jadavani
     
  • HPI command is defined in eMMC4.41.
    This feature is important for eMMC4.5 devices.

    Signed-off-by: Jaehoon Chung
    Signed-off-by: Chris Ball

    Jaehoon Chung
     
  • This patch adds cache feature of eMMC4.5 Spec.
    If device supports cache capability, host can utilize some specific
    operations.

    Signed-off-by: Seungwon Jeon
    Signed-off-by: Jaehoon Chung
    Signed-off-by: Chris Ball

    Seungwon Jeon
     
  • This patch will apply the generic CMD6 timeout to switch command
    for power class.

    Signed-off-by: Seungwon Jeon
    Signed-off-by: Chris Ball

    Seungwon Jeon
     
  • MMC v4.5 supports the DISCARD feature (CMD38). It's different from
    trim and there's no check bit. Currently it's only supported at v4.5.

    Signed-off-by: Kyungmin Park
    Signed-off-by: Jaehoon Chung
    Signed-off-by: Chris Ball

    Kyungmin Park
     
  • In the v4.5, there's no secure erase & trim support.
    Instead it supports the sanitize feature.

    Signed-off-by: Kyungmin Park
    Signed-off-by: Jaehoon Chung
    Signed-off-by: Chris Ball

    Kyungmin Park
     
  • In dw_mmc 2.40a spec, Data register's offset is changed.
    Before we used Data register offset 0x100. but if somebody uses a
    2.40a controller, we must use 0x200 for Data register.

    This patch adds a version-id checking point and uses SDMMC_DATA(x)
    instead of SDMMC_DATA. It assumes 2.40a is the latest version.

    Signed-off-by: Jaehoon Chung
    Signed-off-by: Kyungmin Park
    Acked-by: James Hogan
    Signed-off-by: Chris Ball

    Jaehoon Chung
     
  • Only allow runtime PM for devices that specifically indicate
    that they support it.

    Signed-off-by: Adrian Hunter
    Signed-off-by: Chris Ball

    Adrian Hunter
     
  • Go through the driver's set_power() functions rather than
    calling regulator_enable/disable() directly because otherwise
    pbias configuration for MMC1 is not done.

    Signed-off-by: Adrian Hunter
    Acked-by: Balaji T K
    Signed-off-by: Chris Ball

    Adrian Hunter
     
  • This patch adds support for the power off notify feature, available in
    eMMC 4.5 devices. If the host has support for this feature, then the
    mmc core will notify the device by setting the POWER_OFF_NOTIFICATION
    byte in the extended csd register with a value of 1 (POWER_ON).

    For suspend mode short timeout is used, whereas for the normal poweroff
    long timeout is used.

    Signed-off-by: Girish K S
    Signed-off-by: Jaehoon Chung
    Signed-off-by: Chris Ball

    Girish K S
     
  • sc->clk_bus[ptr] could be NULL.

    Signed-off-by: Jaehoon Chung
    Signed-off-by: Kyungmin Park
    Signed-off-by: Chris Ball

    Jaehoon Chung
     
  • All the files using printk function for displaying kernel messages
    in the mmc driver have been replaced with corresponding macro.

    Signed-off-by: Girish K S
    Signed-off-by: Chris Ball

    Girish K S
     
  • EXT_CSD[248] includes the default maximum timeout for CMD6.
    This field is added at eMMC4.5 Spec. And it can be used for default
    timeout except for some operations which don't define the timeout
    (i.e. background operation, sanitize, flush cache) in eMMC4.5 Spec.

    Signed-off-by: Seungwon Jeon
    Signed-off-by: Jaehoon Chung
    Signed-off-by: Chris Ball

    Seungwon Jeon
     
  • Ths patch allows runtime PM for sdhci-pci, runtime suspending after
    inactivity of 50ms and ensuring runtime resume before SDHC registers
    are accessed. During runtime suspend, interrupts are masked.
    The host controller state is restored at runtime resume.

    For Medfield, the host controller's card detect mechanism is
    supplanted by an always-on GPIO which provides for card detect wake-up.

    Signed-off-by: Adrian Hunter
    Signed-off-by: Chris Ball

    Adrian Hunter
     
  • mmc_request_done() is sometimes called from interrupt or other atomic
    context. Mostly all mmc_request_done() does is complete(), however it
    contains code to retry on error, which uses ->request(). As the error
    path is certainly not performance critical, this may be moved to the
    waiting function mmc_wait_for_req_done().

    This allows ->request() to use runtime PM get_sync() and guarantee it
    is never in an atomic context.

    Signed-off-by: Adrian Hunter
    Acked-by: Ulf Hansson
    Signed-off-by: Chris Ball

    Adrian Hunter
     
  • We are cleaning up the implicit presence of module.h; these guys are
    some of the people who just assume it will be there. Call it out
    explitly for those that really need it.

    Signed-off-by: Paul Gortmaker
    Signed-off-by: Chris Ball

    Paul Gortmaker
     
  • Commit "mmc: add module param to set fault injection attributes" adds
    a module_param to this file. But it is relying on the old implicit
    "module.h is everywhere" behaviour, and without the explicit include
    of moduleparam.h, the pending module.h split up produces this error:

    core/debugfs.c:28:35: error: expected ')' before numeric constant

    Signed-off-by: Stephen Rothwell
    Signed-off-by: Paul Gortmaker
    Signed-off-by: Chris Ball

    Stephen Rothwell
     
  • It allows gerneral purpose partitions in MMC Device. And I try to simply
    make mmc_blk_alloc_parts using mmc_part structure suggested by Andrei
    Warkentin. After patching, we see general purpose partitions like this:
    > cat /proc/partitions
    179 0 847872 mmcblk0
    179 192 4096 mmcblk0gp3
    179 160 4096 mmcblk0gp2
    179 128 4096 mmcblk0gp1
    179 96 1052672 mmcblk0gp0
    179 64 1024 mmcblk0boot1
    179 32 1024 mmcblk0boot0

    Signed-off-by: Namjae Jeon
    Acked-by: Andrei Warkentin
    Signed-off-by: Chris Ball

    Namjae Jeon
     
  • f39b2dd9d ("mmc: core: Bus width testing needs to handle suspend/resume")
    added code to only compare read-only ext_csd fields in bus width testing
    code, yet it's comparing some fields that are never set.

    The affected fields are ext_csd.raw_erased_mem_count and
    ext_csd.raw_partition_support.

    Signed-off-by: Andrei Warkentin
    Acked-by: Philip Rakity
    Cc:
    Signed-off-by: Chris Ball

    Andrei Warkentin