1. 25 8月, 2013 21 次提交
    • L
      mmc: mmc_spi: Support CD/RO GPIOs · bf287a90
      Laurent Pinchart 提交于
      Add support for passing CD/RO GPIO numbers directly to the mmc_spi
      driver instead of relying solely on board code callbacks to retrieve the
      CD/RO signals values. The driver will enable debouncing on the card
      detect GPIO if the cd_debounce field is set to a non-zero value.
      Signed-off-by: NLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
      Reviewed-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      bf287a90
    • L
      mmc: slot-gpio: Add debouncing capability to mmc_gpio_request_cd() · 214fc309
      Laurent Pinchart 提交于
      Add a debounce parameter to the mmc_gpio_request_cd() function that
      enables GPIO debouncing when set to a non-zero value. This can be used
      by MMC host drivers to enable debouncing on the card detect signal.
      Signed-off-by: NLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
      Reviewed-by: NH Hartley Sweeten <hsweeten@visionengravers.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      214fc309
    • J
      mmc: dw_mmc-pltfm: include 'dw_mmc-pltfm.h' · 7725a52c
      Jingoo Han 提交于
      Include 'dw_mmc-pltfm.h' header file in order to fix the following
      sparse warnings:
      
      drivers/mmc/host/dw_mmc-pltfm.c:36:5: warning: symbol 'dw_mci_pltfm_register' was not declared. Should it be static?
      drivers/mmc/host/dw_mmc-pltfm.c:94:1: warning: symbol 'dw_mci_pltfm_pmops' was not declared. Should it be static?
      drivers/mmc/host/dw_mmc-pltfm.c:118:5: warning: symbol 'dw_mci_pltfm_remove' was not declared. Should it be static?
      Suggested-by: NDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: NJingoo Han <jg1.han@samsung.com>
      Acked-by: NSeungwon Jeon <tgih.jun@samsung.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      7725a52c
    • S
      mmc: tmio_mmc_dma: fix PIO fallback on SDHI · f936f9b6
      Sergei Shtylyov 提交于
      I'm testing SH-Mobile SDHI driver in DMA mode with  a new DMA controller  using
      'bonnie++' and getting DMA error after which the tmio_mmc_dma.c code falls back
      to PIO but all commands time out after that.  It turned out that the fallback
      code calls tmio_mmc_enable_dma() with RX/TX channels already freed and pointers
      to them cleared, so that the function bails out early instead  of clearing the
      DMA bit in the CTL_DMA_ENABLE register. The regression was introduced by commit
      162f43e3 (mmc: tmio: fix a deadlock).
      Moving tmio_mmc_enable_dma() calls to the top of the PIO fallback code in
      tmio_mmc_start_dma_{rx|tx}() helps.
      Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Acked-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de>
      Cc: stable@vger.kernel.org # 3.1+
      Signed-off-by: NChris Ball <cjb@laptop.org>
      f936f9b6
    • J
      mmc: dw_mmc: add missing MFD_SYSCON dependency for SOCFPGA · e33c2025
      Jingoo Han 提交于
      Added missing MFD_SYSCON dependency for SOCFPGA in order to fix
      the following link error.
      
      drivers/mmc/host/dw_mmc-socfpga.c:49: undefined reference to `syscon_regmap_lookup_by_compatible'
      Signed-off-by: NJingoo Han <jg1.han@samsung.com>
      Acked-by: NJaehoon Chung <jh80.chung@samsung.com>
      Acked-by: NSeungwon Jeon <tgih.jun@samsung.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      e33c2025
    • M
    • F
      mmc: fix null pointer use in mmc_blk_remove_req · 8efb83a2
      Franck Jullien 提交于
      A previous commit (fdfa20c1) reordered the shutdown sequence
      in mmc_blk_remove_req. However, mmc_cleanup_queue is now called before
      we get the card pointer, and mmc_cleanup_queue sets mq->card to NULL.
      
      This patch moves the card pointer assignment before mmc_cleanup_queue.
      Signed-off-by: NFranck Jullien <franck.jullien@gmail.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      8efb83a2
    • J
      mmc: mmc_test: replace strict_strtol() with kstrtol_from_user() · 4be7085f
      Jingoo Han 提交于
      The usage of strict_strtol() is not preferred, because
      strict_strtol() is obsolete. Thus, kstrtol() should be used.
      
      Also, both kstrtol() and copy_from_user() can be replaced
      with kstrtol_from_user() to make the code simpler.
      Signed-off-by: NJingoo Han <jg1.han@samsung.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      4be7085f
    • B
      mmc: atmel-mci: prepare clk before calling enable · b3894f26
      Boris BREZILLON 提交于
      Replace clk_enable/disable with clk_prepare_enable/disable_unprepare to
      avoid common clk framework warnings.
      Signed-off-by: NBoris BREZILLON <b.brezillon@overkiz.com>
      Acked-by: NLudovic Desroches <ludovic.desroches@atmel.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      b3894f26
    • J
      mmc: sd: fix the maximum au_size for SD3.0 · 77776fd0
      Jaehoon Chung 提交于
      Since SD Physical Layer specification V3.0, AU_SIZE is supported up
      to 0xf.  So If SD-card is supported v3.0, then max_au should be 0xf.
      Signed-off-by: NJaehoon Chung <jh80.chung@samsung.com>
      Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      77776fd0
    • W
      mmc: core: free mmc_card if cmd 3,9,7 fails in mmc_sd_init_card · 7fca9675
      Wei WANG 提交于
      In function mmc_sd_init_card, if command 3/9/7 got failed, mmc_card
      allocated just before won't be freed. This would cause memory leak.
      Signed-off-by: NWei WANG <wei_wang@realsil.com.cn>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      7fca9675
    • W
      mmc: host: Remove a duplicate line in Makefile · 0506bc57
      Wei WANG 提交于
      Signed-off-by: NWei WANG <wei_wang@realsil.com.cn>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      0506bc57
    • F
      mmc: omap_hsmmc: fix dependency on indirect header inclusion · 031cd037
      Felipe Balbi 提交于
      omap_hsmmc.c depends on <linux/sizes.h> being included indirectly by
      another header. Once we enable COMPILE_TEST for this driver, we might
      compile under architectures which won't include <linux/sizes.h> for us.
      In fact, one such case is x86.
      
      In order to prevent compile breakages, let's explicitly include
      <linux/sizes.h>.
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      Acked-by: NBalaji T K <balajitk@ti.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      031cd037
    • D
      mmc: dw_mmc: Handle DW_MCI_QUIRK_IDMAC_DTO properly · 476d79f1
      Doug Anderson 提交于
      In (1fb5f68a mmc: dw_mmc: Don't loop when handling an interrupt), the
      code for handling DW_MCI_QUIRK_IDMAC_DTO became dead code.  Move it to
      where it ought to live.
      
      Found by code inspection and compile-tested only--I don't know of any
      boards that need DW_MCI_QUIRK_IDMAC_DTO.
      Signed-off-by: NDoug Anderson <dianders@chromium.org>
      Acked-by: NSeungwon Jeon <tgih.jun@samsung.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      476d79f1
    • K
      mmc: block: fix a bug of error handling in MMC driver · c8760069
      KOBAYASHI Yoshitake 提交于
      Current MMC driver doesn't handle generic error (bit19 of device
      status) in write sequence. As a result, write data gets lost when
      generic error occurs. For example, a generic error when updating a
      filesystem management information causes a loss of write data and
      corrupts the filesystem. In the worst case, the system will never
      boot.
      
      This patch includes the following functionality:
        1. To enable error checking for the response of CMD12 and CMD13
           in write command sequence
        2. To retry write sequence when a generic error occurs
      
      Messages are added for v2 to show what occurs.
      Signed-off-by: NKOBAYASHI Yoshitake <yoshitake.kobayashi@toshiba.co.jp>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      c8760069
    • S
      mmc: sdhci: request irq after sdhci_init() is called · 2af502ca
      Shawn Guo 提交于
      Generally request_irq() should be called after hardware has been
      initialized into a sane state.  However, sdhci driver currently calls
      request_irq() before sdhci_init().  At least, the following kernel panic
      seen on i.MX6 is caused by that.  The sdhci controller on i.MX6 may have
      noisy glitch on DAT1 line, which will trigger SDIO interrupt handling
      once request_irq() is called.  But at this point, the SDIO interrupt
      handler host->sdio_irq_thread has not been registered yet.  Thus, we
      see the NULL pointer access with wake_up_process(host->sdio_irq_thread)
      in mmc_signal_sdio_irq().
      
      Fix the panic by simply reverse the calling sequence between
      request_irq() and sdhci_init().
      
      sdhci-pltfm: SDHCI platform and OF driver helper
      mmc0: no vqmmc regulator found
      mmc0: no vmmc regulator found
      Unable to handle kernel NULL pointer dereference at virtual address 00000000
      pgd = 80004000
      [00000000] *pgd=00000000
      Internal error: Oops: 5 [#1] SMP ARM
      Modules linked in:
      CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.0+ #3
      task: 9f860000 ti: 9f862000 task.ti: 9f862000
      PC is at wake_up_process+0xc/0x44
      LR is at sdhci_irq+0x378/0x93c
      pc : [<8004f768>]    lr : [<803fb698>]    psr: 40000193
      sp : 9f863ba0  ip : 9f863bb8  fp : 9f863bb4
      r10: 9f807900  r9 : 80761fbc  r8 : 00000000
      r7 : 00000000  r6 : 00000000  r5 : 00000001  r4 : 9fa68000
      r3 : 00000001  r2 : 00000002  r1 : 20000193  r0 : 00000000
      Flags: nZcv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
      Control: 10c53c7d  Table: 8000404a  DAC: 00000017
      Process swapper/0 (pid: 1, stack limit = 0x9f862238)
      Stack: (0x9f863ba0 to 0x9f864000)
      3ba0: 00000001 9fa68000 9f863c04 9f863bb8 803fb698 8004f768 8011af00 80265aac
      3bc0: 00000000 000003d9 00000000 9fa51880 00000001 00000000 9f863c14 9fa53640
      3be0: 00000001 00000000 00000000 00000036 80761fbc 9f807900 9f863c3c 9f863c08
      3c00: 80075154 803fb32c 802c2b38 802c63d8 802c63cc 9f807900 00000001 9f862000
      3c20: 00000036 00000000 9f807930 60000113 9f863c54 9f863c40 800752ec 8007510c
      3c40: 9f807900 00000001 9f863c6c 9f863c58 80078324 800752a8 00000036 8071fd64
      3c60: 9f863c84 9f863c70 80074ac0 80078294 00000140 8072ab78 9f863cac 9f863c88
      3c80: 8000ee34 80074aa4 00000000 a080e10c 8072acbc 9f863cd0 a080e100 00000036
      3ca0: 9f863ccc 9f863cb0 80008600 8000edec 805386a8 60000113 ffffffff 9f863d04
      3cc0: 9f863d24 9f863cd0 8000e0c0 800085dc 9f807950 60000113 00000007 00000000
      3ce0: 9f807900 9fa53640 9f807950 9fa68240 00000036 9f807930 60000113 9f863d24
      3d00: 9f863d28 9f863d18 80076834 805386a8 60000113 ffffffff 9f863d64 9f863d28
      3d20: 80076834 80538688 00000000 800bfe4c 00002fac 00000001 9f863d54 9fa53640
      3d40: 9f807900 803fb320 9fa68240 00000080 00000000 00000036 9f863d94 9f863d68
      3d60: 80076b38 80076674 00000080 9fa68240 9fa68000 04000000 9fa6836c 9fa68380
      3d80: 806d620c 80700350 9f863dc4 9f863d98 803fce8c 80076a88 9fa532c0 9fa68240
      3da0: 9fa51490 9fa51490 9fa68240 00000000 9f8ae600 9f81d080 9f863df4 9f863dc8
      3dc0: 803fea0c 803fc808 9f863de4 9f863dd8 80125850 807b1ed8 807576b8 9f8ae610
      3de0: 00000000 807576b8 9f863e04 9f863df8 802ee0d4 803fe798 9f863e2c 9f863e08
      3e00: 802ecd1c 802ee0c0 00000000 9f8ae610 807576b8 9f8ae644 00000000 000000a9
      3e20: 9f863e4c 9f863e30 802ecec0 802ecc30 9f83355c 807576b8 802ece2c 00000000
      3e40: 9f863e74 9f863e50 802eb3d8 802ece38 9f83355c 9f8ac3b4 9f833570 807576b8
      3e60: 80746e70 9fa51400 9f863e84 9f863e78 802ec838 802eb388 9f863eb4 9f863e88
      3e80: 802ec3d0 802ec824 80692748 807620c0 9f863eb4 807576b8 00000006 807620c0
      3ea0: 00000000 000000a9 9f863edc 9f863eb8 802ed3e8 802ec2fc 9f862000 00000006
      3ec0: 807620c0 00000000 000000a9 80700350 9f863eec 9f863ee0 802ee2f8 802ed374
      3ee0: 9f863efc 9f863ef0 80700364 802ee2b8 9f863f54 9f863f00 8000870c 8070035c
      3f00: 9f863f54 9f863f10 9f862000 00000000 00000000 00000006 00000006 806d3aa4
      3f20: 00000000 80688b18 9f863f54 80713560 00000006 80713540 807620c0 000000a9
      3f40: 806d620c 8071ec24 9f863f94 9f863f58 806d6994 800086dc 00000006 00000006
      3f60: 806d620c f6bfffff fb7f5df7 00000000 8052da28 00000000 00000000 00000000
      3f80: 00000000 00000000 9f863fac 9f863f98 8052da38 806d689c ffffffff 00000000
      3fa0: 00000000 9f863fb0 8000e5d8 8052da34 00000000 00000000 00000000 00000000
      3fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
      3fe0: 00000000 00000000 00000000 00000000 00000013 00000000 d9cdf5ff 1fff5ffe
      Backtrace:
      [<8004f75c>] (wake_up_process+0x0/0x44) from [<803fb698>] (sdhci_irq+0x378/0x93c)
       r4:9fa68000 r3:00000001
      [<803fb320>] (sdhci_irq+0x0/0x93c) from [<80075154>] (handle_irq_event_percpu+0x54/0x19c)
      [<80075100>] (handle_irq_event_percpu+0x0/0x19c) from [<800752ec>] (handle_irq_event+0x50/0x70)
      [<8007529c>] (handle_irq_event+0x0/0x70) from [<80078324>] (handle_fasteoi_irq+0x9c/0x170)
       r5:00000001 r4:9f807900
      [<80078288>] (handle_fasteoi_irq+0x0/0x170) from [<80074ac0>] (generic_handle_irq+0x28/0x38)
       r5:8071fd64 r4:00000036
      [<80074a98>] (generic_handle_irq+0x0/0x38) from [<8000ee34>] (handle_IRQ+0x54/0xb4)
       r4:8072ab78 r3:00000140
      [<8000ede0>] (handle_IRQ+0x0/0xb4) from [<80008600>] (gic_handle_irq+0x30/0x64)
       r8:00000036 r7:a080e100 r6:9f863cd0 r5:8072acbc r4:a080e10c
      r3:00000000
      [<800085d0>] (gic_handle_irq+0x0/0x64) from [<8000e0c0>] (__irq_svc+0x40/0x54)
      Exception stack(0x9f863cd0 to 0x9f863d18)
      3cc0:                                     9f807950 60000113 00000007 00000000
      3ce0: 9f807900 9fa53640 9f807950 9fa68240 00000036 9f807930 60000113 9f863d24
      3d00: 9f863d28 9f863d18 80076834 805386a8 60000113 ffffffff
       r7:9f863d04 r6:ffffffff r5:60000113 r4:805386a8
      [<8053867c>] (_raw_spin_unlock_irqrestore+0x0/0x30) from [<80076834>] (__setup_irq+0x1cc/0x414)
      [<80076668>] (__setup_irq+0x0/0x414) from [<80076b38>] (request_threaded_irq+0xbc/0x140)
      [<80076a7c>] (request_threaded_irq+0x0/0x140) from [<803fce8c>] (sdhci_add_host+0x690/0xb88)
      [<803fc7fc>] (sdhci_add_host+0x0/0xb88) from [<803fea0c>] (sdhci_esdhc_imx_probe+0x280/0x4d4)
       r8:9f81d080 r7:9f8ae600 r6:00000000 r5:9fa68240 r4:9fa51490
      [<803fe78c>] (sdhci_esdhc_imx_probe+0x0/0x4d4) from [<802ee0d4>] (platform_drv_probe+0x20/0x24)
       r8:807576b8 r7:00000000 r6:9f8ae610 r5:807576b8 r4:807b1ed8
      [<802ee0b4>] (platform_drv_probe+0x0/0x24) from [<802ecd1c>] (driver_probe_device+0xf8/0x208)
      [<802ecc24>] (driver_probe_device+0x0/0x208) from [<802ecec0>] (__driver_attach+0x94/0x98)
       r8:000000a9 r7:00000000 r6:9f8ae644 r5:807576b8 r4:9f8ae610
      r3:00000000
      [<802ece2c>] (__driver_attach+0x0/0x98) from [<802eb3d8>] (bus_for_each_dev+0x5c/0x90)
       r6:00000000 r5:802ece2c r4:807576b8 r3:9f83355c
      [<802eb37c>] (bus_for_each_dev+0x0/0x90) from [<802ec838>] (driver_attach+0x20/0x28)
       r6:9fa51400 r5:80746e70 r4:807576b8
      [<802ec818>] (driver_attach+0x0/0x28) from [<802ec3d0>] (bus_add_driver+0xe0/0x234)
      [<802ec2f0>] (bus_add_driver+0x0/0x234) from [<802ed3e8>] (driver_register+0x80/0x14c)
       r8:000000a9 r7:00000000 r6:807620c0 r5:00000006 r4:807576b8
      [<802ed368>] (driver_register+0x0/0x14c) from [<802ee2f8>] (platform_driver_register+0x4c/0x60)
      [<802ee2ac>] (platform_driver_register+0x0/0x60) from [<80700364>] (sdhci_esdhc_imx_driver_init+0x14/0x1c)
      [<80700350>] (sdhci_esdhc_imx_driver_init+0x0/0x1c) from [<8000870c>] (do_one_initcall+0x3c/0x164)
      [<800086d0>] (do_one_initcall+0x0/0x164) from [<806d6994>] (kernel_init_freeable+0x104/0x1d0)
      [<806d6890>] (kernel_init_freeable+0x0/0x1d0) from [<8052da38>] (kernel_init+0x10/0xec)
      [<8052da28>] (kernel_init+0x0/0xec) from [<8000e5d8>] (ret_from_fork+0x14/0x3c)
       r4:00000000 r3:ffffffff
      Code: e89da800 e1a0c00d e92dd818 e24cb004 (e5903000)
      ---[ end trace e9af3588936b63f0 ]---
      Kernel panic - not syncing: Fatal exception in interrupt
      Signed-off-by: NShawn Guo <shawn.guo@linaro.org>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      2af502ca
    • F
      mmc: mxs-mmc: Check the return value from stmp_reset_block() · 02c18c47
      Fabio Estevam 提交于
      stmp_reset_block() may fail, so let's check its return value and
      propagate it in the case of error.
      Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com>
      Acked-by: NShawn Guo <shawn.guo@linaro.org>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      02c18c47
    • F
      mmc: mxs-mmc: Use devm_clk_get() · a5adbffd
      Fabio Estevam 提交于
      Using devm_clk_get() allows us to remove the clk_put() calls, so
      let's use it to simplify the code.
      
      Rename the 'out_clk_put' label to 'out_clk_disable' now that clk_put
      is removed.
      Signed-off-by: NFabio Estevam <festevam@gmail.com>
      Acked-by: NShawn Guo <shawn.guo@linaro.org>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      a5adbffd
    • W
      mmc: jz4740: fix return value check in jz4740_mmc_probe() · 3e7e8c18
      Wei Yongjun 提交于
      In case of error, the function devm_ioremap_resource() returns ERR_PTR()
      and never returns NULL. The NULL test in the return value check should
      be replaced with IS_ERR(). Also there is already a error message within
      devm_ioremap_resource(), so remove the dev_err call to avoid redundant
      error message.
      Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      3e7e8c18
    • S
      mmc: vub300: Staticize vub300_init_card · 37c955a7
      Sachin Kamat 提交于
      'vub300_init_card' is used only in this file. Make it
      static.
      Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      37c955a7
    • S
      mmc: sdhci-bcm2835: Staticize bcm2835_sdhci_get_min_clock · 51b2fcef
      Sachin Kamat 提交于
      'bcm2835_sdhci_get_min_clock' is used only in this file.
      Make it static.
      Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      51b2fcef
  2. 24 7月, 2013 1 次提交
  3. 11 7月, 2013 14 次提交
    • L
      Merge tag 'mmc-updates-for-3.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc · bfffbea1
      Linus Torvalds 提交于
      Pull MMC updates from Chris Ball:
       "MMC highlights for 3.11:
      
        Core:
         - Add support for eMMC 5.1 devices
         - Add MMC_CAP_AGGRESSIVE_PM capability for aggressive power
           management of eMMC/SD between requests, using runtime PM
         - Add an ioctl to perform the eMMC 4.5 Sanitize command.  Sample code
           at:
      
             git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git
      
        Drivers:
         - dw_mmc: Add support for Rockchip's Cortex-A9 SoCs
         - dw_mmc: Add support for Altera SoCFPGAs
         - sdhci-esdhc-imx: Add support for 8-bit bus width, non-removable
           cards
         - sdhci-bcm-kona: New driver for Broadcom Kona (281xx) SoCs
         - sdhi/tmio: Add DT DMA support"
      
      * tag 'mmc-updates-for-3.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (87 commits)
        mmc: bcm281xx SDHCI driver
        mmc: sdhci: add card_event callback to sdhci
        mmc: core: Fixup Oops for SDIO shutdown
        mmc: sdhci-pci: add another device id
        mmc: esdhc: Fix bug when writing to SDHCI_HOST_CONTROL register
        mmc: esdhc: Add support for 8-bit bus width and non-removable card
        mmc: core: production year for eMMC 4.41 and later
        mmc: omap: remove unnecessary #if 0's
        mmc: sdhci: fix ctrl_2 on super-speed selection
        mmc: dw_mmc-pltfm: add Rockchip variant
        mmc: dw_mmc-pltfm: move probe and remove below dt match table
        mmc: dw_mmc-pltfm: remove static from dw_mci_pltfm_remove
        mmc: sdhci-acpi: add support for eMMC hardware reset for HID 80860F14
        mmc: sdhci-pci: add support for eMMC hardware reset for BYT eMMC.
        mmc: dw_mmc: Add support DW SD/MMC driver on SOCFPGA
        mmc: sdhci: fix caps2 for HS200
        sdhci-pxav3: Fix runtime PM initialization
        mmc: core: Add DT-bindings for MMC_CAP2_FULL_PWR_CYCLE
        mmc: core: Invent MMC_CAP2_FULL_PWR_CYCLE
        mmc: core: Enable power_off_notify for eMMC shutdown sequence
        ...
      bfffbea1
    • L
      Merge tag 'for-3.11-rc1' of git://gitorious.org/linux-pwm/linux-pwm · 34ae0a6f
      Linus Torvalds 提交于
      Pull pwm changes from Thierry Reding:
       "A new driver supports driving PWM signals using the TPU unit found on
        various Renesas SoCs.  Furthermore support is added for the NXP
        PCA9685 LED controller.  Another big chunk is the sysfs interface
        which has been in the works for quite some time.
      
        The remaining patches are a random assortment of cleanups and fixes"
      
      * tag 'for-3.11-rc1' of git://gitorious.org/linux-pwm/linux-pwm:
        pwm: pwm-tiehrpwm: Use clk_enable/disable instead clk_prepare/unprepare.
        pwm: pca9685: Fix wrong argument to set MODE1_SLEEP bit
        pwm: renesas-tpu: Add MODULE_ALIAS to make module auto loading work
        pwm: renesas-tpu: fix return value check in tpu_probe()
        pwm: Add Renesas TPU PWM driver
        pwm: Add sysfs interface
        pwm: Fill in missing .owner fields
        pwm: add pca9685 driver
        pwm: atmel-tcb: prepare clk before calling enable
        pwm: devm: alloc correct pointer size
        pwm: mxs: Let device core handle pinctrl
        MAINTAINERS: Update PWM subsystem entry
      34ae0a6f
    • L
      Merge tag 'for-v3.11' of git://git.infradead.org/battery-2.6 · 7d3107d2
      Linus Torvalds 提交于
      Pull battery subsystem update from Anton Vorontsov:
       "Nothing exciting this time, just assorted fixes and cleanups"
      
      * tag 'for-v3.11' of git://git.infradead.org/battery-2.6: (25 commits)
        charger-manager: Fix regulator_get() return check
        charger-manager: Fix a bug when it unregisters notifier block of extcon
        tps65090-charger: Add dt node to power_supply
        sbs-battery: Add dt to power_supply struct
        power_supply: Add of_node_put to fix refcount
        power_supply: Move of_node out of the #ifdef CONFIG_OF
        power/reset: Make the vexpress driver optional on arm and arm64
        charger-manager: Add missing newlines, fix a couple of typos, add pr_fmt
        tps65090-charger: Fix AC detect
        MAINTAINERS: Update email address for Anton Vorontsov
        charger-manager: Ensure event is not used as format string
        power_supply: Replace strict_strtoul() with kstrtoul()
        generic-adc-battery: Fix checking if none of the channels are supported
        power: Use platform_{get,set}_drvdata()
        pm2301_charger: Return error if create_singlethread_workqueue fails
        pm2301_charger: Fix NULL pointer dereference
        lp8727_charger: Support the device tree feature
        twl4030_charger: Remove unnecessary platform_set_drvdata()
        rx51_battery: Remove unnecessary platform_set_drvdata()
        jz4740-battery: Remove unnecessary platform_set_drvdata()
        ...
      7d3107d2
    • L
      Merge tag 'mfd-3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-next · 3aa78e0c
      Linus Torvalds 提交于
      Pull MFD update from Samuel Ortiz:
       "For the 3.11 merge we only have one new MFD driver for the Kontron
        PLD.
      
        But we also have:
         - Support for the TPS659038 PMIC from the palmas driver.
         - Intel's Coleto Creek and Avoton SoCs support from the lpc_ich
           driver.
         - RTL8411B support from the rtsx driver.
         - More DT support for the Arizona, max8998, twl4030-power and the
           ti_am335x_tsadc drivers.
         - The SSBI driver move under MFD.
         - A conversion to the devm_* API for most of the MFD drivers.
         - The twl4030-power got split from twl-core into its own module.
         - A major ti_am335x_adc cleanup, leading to a proper DT support.
         - Our regular arizona and wm* updates and cleanups from the Wolfson
           folks.
         - A better error handling and initialization, and a regulator
           subdevice addition for the 88pm80x driver.
         - A bulk platform_set_drvdata() call removal that's no longer need
           since commit 0998d063 ("device-core: Ensure drvdata = NULL when
           no driver is bound")
      
      * tag 'mfd-3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-next: (102 commits)
        mfd: sec: Provide max_register to regmap
        mfd: wm8994: Remove duplicate check for active JACKDET
        MAINTAINERS: Add include directory to MFD file patterns
        mfd: sec: Remove fields not used since regmap conversion
        watchdog: Kontron PLD watchdog timer driver
        mfd: max8998: Add support for Device Tree
        regulator: max8998: Use arrays for specifying voltages in platform data
        mfd: max8998: Add irq domain support
        regulator: palmas: Add TPS659038 support
        mfd: Kontron PLD mfd driver
        mfd: palmas: Add TPS659038 PMIC support
        mfd: palmas: Add SMPS10_BOOST feature
        mfd: palmas: Check if irq is valid
        mfd: lpc_ich: iTCO_wdt patch for Intel Coleto Creek DeviceIDs
        mfd: twl-core: Change TWL6025 references to TWL6032
        mfd: davinci_voicecodec: Fix build breakage
        mfd: vexpress: Make the driver optional for arm and arm64
        mfd: htc-egpio: Use devm_ioremap_nocache() instead of ioremap_nocache()
        mfd: davinci_voicecodec: Convert to use devm_* APIs
        mfd: twl4030-power: Fix relocking on error
        ...
      3aa78e0c
    • L
      Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · dc5ef1f5
      Linus Torvalds 提交于
      Pull hwmon update from Jean Delvare.
      
      * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        hwmon: (lm63) Drop redundant safety on cache lifetime
        hwmon: (lm90) Drop redundant safety on cache lifetime
      dc5ef1f5
    • L
      Merge tag 'regulator-v3.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 50aaa6bc
      Linus Torvalds 提交于
      Pull regulator fixes from Mark Brown:
       "Fixes for the merge window
      
        A set of small fixes for issues noticed during the merge window, all
        very much non-invasive"
      
      * tag 'regulator-v3.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        MAINTAINERS: Update git repository
        regulator: max8997: Fix a trivial typo in documentation
        regulator: s5m8767: Fix a trivial typo in documentation
        regulator: s2mps11: Convert ramp rate to uV/us and set default ramp rate
        regulator: s5m8767: Update s5m8767-regulator bindings document
      50aaa6bc
    • L
      Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394 · bb93109e
      Linus Torvalds 提交于
      Pull firewire updates from Stefan Richter:
       "Make struct ieee1394_device_id.driver_data actually avaliable to 1394
        protocol drivers.  This is especially useful to 1394 audio drivers for
        model-specific parameters and methods"
      
      * tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
        firewire: remove support of fw_driver.driver.probe and .remove methods
        firewire: introduce fw_driver.probe and .remove methods
      bb93109e
    • L
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 23e3a1d9
      Linus Torvalds 提交于
      Pull x86 fix from Ingo Molnar:
       "irq-tracing fixlet"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/tracing: Add irq_enter/exit() in smp_trace_reschedule_interrupt()
      23e3a1d9
    • L
      Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblaze · 72c1c2f1
      Linus Torvalds 提交于
      Pull microblaze update from Michal Simek:
       "This Microblaze merge window is quite minimal.
      
        I have also added to my branch one xilinx systemace sparse fix because
        haven't got any reply from block maintainer."
      
      * 'next' of git://git.monstr.eu/linux-2.6-microblaze:
        xilinx systemace: Fix sparse warnings
        microblaze: Move __NR_syscalls from uapi
        microblaze: Enable KGDB in defconfig
        microblaze: Don't mark arch_kgdb_ops as const.
      72c1c2f1
    • L
      Merge tag 'metag-fixes-for-v3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag · 2d6244b3
      Linus Torvalds 提交于
      Pull arch/metag fixes from James Hogan:
       "This is just a single fix to fix bad UDP checksums sometimes being
        generated to IP addresses *.*.255.255"
      
      * tag 'metag-fixes-for-v3.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag:
        metag: checksum.h: fix carry in csum_tcpudp_nofold
      2d6244b3
    • L
      Merge tag 'blackfin-for-linus' of... · 49283f60
      Linus Torvalds 提交于
      Merge tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux
      
      Pull blackfin updates from Steven Miao:
       "blackfin updates for Linux 3.11"
      
      * tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux:
        smp: refine bf561 smpboot code
        bf609: stmmac: fix build after stmmac_mdio_bus_data changed
        bf609: add cpu revision 0.1
        bf609: rename bfin6xx_spi to bfin_spi3
        kgdb: blackfin: include irq_regs.h in kgdb.c
      49283f60
    • L
      Merge tag 'arc-v3.11-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 8f041e6c
      Linus Torvalds 提交于
      Pull second set of ARC architecture updates from Vineet Gupta:
       "Couple of Platform updates (Device Tree files primarily) given that
        the corresponding drivers (net/ethernet/arc/*, irqctl/irq-tb10x.c)
        have now been merged into your tree.
      
        Ideally these shd have been part of same submissions, oh well..."
      
      * tag 'arc-v3.11-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: [TB10x] Updates for irqchip driver
        ARC: [plat-arcfpga] Enable arc_emac for ARCAngle4 Board
      8f041e6c
    • L
      Merge branch 'parisc-for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · b2477596
      Linus Torvalds 提交于
      Pull parisc updates from Helge Deller:
       "The PA-RISC updates for v3.11 include a gcc miscompilation fix,
        gzip-compressed vmlinuz support, a fix in the PCI code for ATI FireGL
        support on c8000 machines, a fix to prevent that %sr1 is being
        clobbered and a few smaller optimizations and documentation updates"
      
      * 'parisc-for-3.11' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Fix gcc miscompilation in pa_memcpy()
        parisc: Ensure volatile space register %sr1 is not clobbered
        parisc: optimize mtsp(0,sr) inline assembly
        parisc: switch to gzip-compressed vmlinuz kernel
        parisc: document the shadow registers
        parisc: more capabilities info in /proc/cpuinfo
        parisc: fix LMMIO mismatch between PAT length and MASK register
      b2477596
    • L
      Merge tag 'please-pull-fix-ia64-warnings' of... · 61e31291
      Linus Torvalds 提交于
      Merge tag 'please-pull-fix-ia64-warnings' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux
      
      P{ill ia64 warning fix from Tony Luck:
       "Add some casts to avoid warnings from efi_runtime_services_t members"
      
      * tag 'please-pull-fix-ia64-warnings' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        [IA64] sim: Add casts to avoid assignment warnings
      61e31291
  4. 10 7月, 2013 4 次提交
    • M
      xilinx systemace: Fix sparse warnings · 4937a269
      Michal Simek 提交于
      Fix sysace sparse warnings.
      Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
      4937a269
    • M
      microblaze: Move __NR_syscalls from uapi · 40c2702a
      Michal Simek 提交于
      The reason is that other applications like strace
      think that every __NR_xx is syscall.
      Also __NR_syscalls is not used by user applications/libs.
      Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
      40c2702a
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next · 496322bc
      Linus Torvalds 提交于
      Pull networking updates from David Miller:
       "This is a re-do of the net-next pull request for the current merge
        window.  The only difference from the one I made the other day is that
        this has Eliezer's interface renames and the timeout handling changes
        made based upon your feedback, as well as a few bug fixes that have
        trickeled in.
      
        Highlights:
      
         1) Low latency device polling, eliminating the cost of interrupt
            handling and context switches.  Allows direct polling of a network
            device from socket operations, such as recvmsg() and poll().
      
            Currently ixgbe, mlx4, and bnx2x support this feature.
      
            Full high level description, performance numbers, and design in
            commit 0a4db187 ("Merge branch 'll_poll'")
      
            From Eliezer Tamir.
      
         2) With the routing cache removed, ip_check_mc_rcu() gets exercised
            more than ever before in the case where we have lots of multicast
            addresses.  Use a hash table instead of a simple linked list, from
            Eric Dumazet.
      
         3) Add driver for Atheros CQA98xx 802.11ac wireless devices, from
            Bartosz Markowski, Janusz Dziedzic, Kalle Valo, Marek Kwaczynski,
            Marek Puzyniak, Michal Kazior, and Sujith Manoharan.
      
         4) Support reporting the TUN device persist flag to userspace, from
            Pavel Emelyanov.
      
         5) Allow controlling network device VF link state using netlink, from
            Rony Efraim.
      
         6) Support GRE tunneling in openvswitch, from Pravin B Shelar.
      
         7) Adjust SOCK_MIN_RCVBUF and SOCK_MIN_SNDBUF for modern times, from
            Daniel Borkmann and Eric Dumazet.
      
         8) Allow controlling of TCP quickack behavior on a per-route basis,
            from Cong Wang.
      
         9) Several bug fixes and improvements to vxlan from Stephen
            Hemminger, Pravin B Shelar, and Mike Rapoport.  In particular,
            support receiving on multiple UDP ports.
      
        10) Major cleanups, particular in the area of debugging and cookie
            lifetime handline, to the SCTP protocol code.  From Daniel
            Borkmann.
      
        11) Allow packets to cross network namespaces when traversing tunnel
            devices.  From Nicolas Dichtel.
      
        12) Allow monitoring netlink traffic via AF_PACKET sockets, in a
            manner akin to how we monitor real network traffic via ptype_all.
            From Daniel Borkmann.
      
        13) Several bug fixes and improvements for the new alx device driver,
            from Johannes Berg.
      
        14) Fix scalability issues in the netem packet scheduler's time queue,
            by using an rbtree.  From Eric Dumazet.
      
        15) Several bug fixes in TCP loss recovery handling, from Yuchung
            Cheng.
      
        16) Add support for GSO segmentation of MPLS packets, from Simon
            Horman.
      
        17) Make network notifiers have a real data type for the opaque
            pointer that's passed into them.  Use this to properly handle
            network device flag changes in arp_netdev_event().  From Jiri
            Pirko and Timo Teräs.
      
        18) Convert several drivers over to module_pci_driver(), from Peter
            Huewe.
      
        19) tcp_fixup_rcvbuf() can loop 500 times over loopback, just use a
            O(1) calculation instead.  From Eric Dumazet.
      
        20) Support setting of explicit tunnel peer addresses in ipv6, just
            like ipv4.  From Nicolas Dichtel.
      
        21) Protect x86 BPF JIT against spraying attacks, from Eric Dumazet.
      
        22) Prevent a single high rate flow from overruning an individual cpu
            during RX packet processing via selective flow shedding.  From
            Willem de Bruijn.
      
        23) Don't use spinlocks in TCP md5 signing fast paths, from Eric
            Dumazet.
      
        24) Don't just drop GSO packets which are above the TBF scheduler's
            burst limit, chop them up so they are in-bounds instead.  Also
            from Eric Dumazet.
      
        25) VLAN offloads are missed when configured on top of a bridge, fix
            from Vlad Yasevich.
      
        26) Support IPV6 in ping sockets.  From Lorenzo Colitti.
      
        27) Receive flow steering targets should be updated at poll() time
            too, from David Majnemer.
      
        28) Fix several corner case regressions in PMTU/redirect handling due
            to the routing cache removal, from Timo Teräs.
      
        29) We have to be mindful of ipv4 mapped ipv6 sockets in
            upd_v6_push_pending_frames().  From Hannes Frederic Sowa.
      
        30) Fix L2TP sequence number handling bugs, from James Chapman."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1214 commits)
        drivers/net: caif: fix wrong rtnl_is_locked() usage
        drivers/net: enic: release rtnl_lock on error-path
        vhost-net: fix use-after-free in vhost_net_flush
        net: mv643xx_eth: do not use port number as platform device id
        net: sctp: confirm route during forward progress
        virtio_net: fix race in RX VQ processing
        virtio: support unlocked queue poll
        net/cadence/macb: fix bug/typo in extracting gem_irq_read_clear bit
        Documentation: Fix references to defunct linux-net@vger.kernel.org
        net/fs: change busy poll time accounting
        net: rename low latency sockets functions to busy poll
        bridge: fix some kernel warning in multicast timer
        sfc: Fix memory leak when discarding scattered packets
        sit: fix tunnel update via netlink
        dt:net:stmmac: Add dt specific phy reset callback support.
        dt:net:stmmac: Add support to dwmac version 3.610 and 3.710
        dt:net:stmmac: Allocate platform data only if its NULL.
        net:stmmac: fix memleak in the open method
        ipv6: rt6_check_neigh should successfully verify neigh if no NUD information are available
        net: ipv6: fix wrong ping_v6_sendmsg return value
        ...
      496322bc
    • L
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 2e17c5a9
      Linus Torvalds 提交于
      Pull drm updates from Dave Airlie:
       "Okay this is the big one, I was stalled on the fbdev pull req as I
        stupidly let fbdev guys merge a patch I required to fix a warning with
        some patches I had, they ended up merging the patch from the wrong
        place, but the warning should be fixed.  In future I'll just take the
        patch myself!
      
        Outside drm:
      
        There are some snd changes for the HDMI audio interactions on haswell,
        they've been acked for inclusion via my tree.  This relies on the
        wound/wait tree from Ingo which is already merged.
      
        Major changes:
      
        AMD finally released the dynamic power management code for all their
        GPUs from r600->present day, this is great, off by default for now but
        also a huge amount of code, in fact it is most of this pull request.
      
        Since it landed there has been a lot of community testing and Alex has
        sent a lot of fixes for any bugs found so far.  I suspect radeon might
        now be the biggest kernel driver ever :-P p.s.  radeon.dpm=1 to enable
        dynamic powermanagement for anyone.
      
        New drivers:
      
        Renesas r-car display unit.
      
        Other highlights:
      
         - core: GEM CMA prime support, use new w/w mutexs for TTM
           reservations, cursor hotspot, doc updates
         - dvo chips: chrontel 7010B support
         - i915: Haswell (fbc, ips, vecs, watermarks, audio powerwell),
           Valleyview (enabled by default, rc6), lots of pll reworking, 30bpp
           support (this time for sure)
         - nouveau: async buffer object deletion, context/register init
           updates, kernel vp2 engine support, GF117 support, GK110 accel
           support (with external nvidia ucode), context cleanups.
         - exynos: memory leak fixes, Add S3C64XX SoC series support, device
           tree updates, common clock framework support,
         - qxl: cursor hotspot support, multi-monitor support, suspend/resume
           support
         - mgag200: hw cursor support, g200 mode limiting
         - shmobile: prime support
         - tegra: fixes mostly
      
        I've been banging on this quite a lot due to the size of it, and it
        seems to okay on everything I've tested it on."
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (811 commits)
        drm/radeon/dpm: implement vblank_too_short callback for si
        drm/radeon/dpm: implement vblank_too_short callback for cayman
        drm/radeon/dpm: implement vblank_too_short callback for btc
        drm/radeon/dpm: implement vblank_too_short callback for evergreen
        drm/radeon/dpm: implement vblank_too_short callback for 7xx
        drm/radeon/dpm: add checks against vblank time
        drm/radeon/dpm: add helper to calculate vblank time
        drm/radeon: remove stray line in old pm code
        drm/radeon/dpm: fix display_gap programming on rv7xx
        drm/nvc0/gr: fix gpc firmware regression
        drm/nouveau: fix minor thinko causing bo moves to not be async on kepler
        drm/radeon/dpm: implement force performance level for TN
        drm/radeon/dpm: implement force performance level for ON/LN
        drm/radeon/dpm: implement force performance level for SI
        drm/radeon/dpm: implement force performance level for cayman
        drm/radeon/dpm: implement force performance levels for 7xx/eg/btc
        drm/radeon/dpm: add infrastructure to force performance levels
        drm/radeon: fix surface setup on r1xx
        drm/radeon: add support for 3d perf states on older asics
        drm/radeon: set default clocks for SI when DPM is disabled
        ...
      2e17c5a9