1. 14 Nov, 2019 1 commit
    • Ulf Hansson's avatar
      mwifiex: Re-work support for SDIO HW reset · cdb2256f
      Ulf Hansson authored
      The SDIO HW reset procedure in mwifiex_sdio_card_reset_work() is broken,
      when the SDIO card is shared with another SDIO func driver. This is the
      case when the Bluetooth btmrvl driver is being used in combination with
      mwifiex. More precisely, when mwifiex_sdio_card_reset_work() runs to resets
      the SDIO card, the btmrvl driver doesn't get notified about it. Beyond that
      point, the btmrvl driver will fail to communicate with the SDIO card.
      
      This is a generic problem for SDIO func drivers sharing an SDIO card, which
      are about to be addressed in subsequent changes to the mmc core and the
      mmc_hw_reset() interface. In principle, these changes means the
      mmc_hw_reset() interface starts to return 1 if the are multiple drivers for
      the SDIO card, as to indicate to the caller that the reset needed to be
      scheduled asynchronously through a hotplug mechanism of the SDIO card.
      
      Let's prepare the mwifiex driver to support the upcoming new behaviour of
      mmc_hw_reset(), which means extending the mwifiex_sdio_card_reset_work() to
      support the asynchronous SDIO HW reset path. This also means, we need to
      allow the ->remove() callback to run, without waiting for the FW to be
      loaded. Additionally, during system suspend, mwifiex_sdio_suspend() may be
      called when a reset has been scheduled, but waiting to be executed. In this
      scenario let's simply return -EBUSY to abort the suspend process, as to
      allow the reset to be completed first.
      Reviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
      Tested-by: default avatarDouglas Anderson <dianders@chromium.org>
      Cc: stable@vger.kernel.org # v5.4+
      Acked-by: default avatarKalle Valo <kvalo@codeaurora.org>
      Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
      cdb2256f
  2. 13 Nov, 2019 37 commits
  3. 11 Nov, 2019 1 commit
  4. 10 Nov, 2019 1 commit
    • Linus Torvalds's avatar
      Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 44866956
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "A set of fixes that have trickled in over the last couple of weeks:
      
         - MAINTAINER update for Cavium/Marvell ThunderX2
      
         - stm32 tweaks to pinmux for Joystick/Camera, and RAM allocation for
           CAN interfaces
      
         - i.MX fixes for voltage regulator GPIO mappings, fixes voltage
           scaling issues
      
         - More i.MX fixes for various issues on i.MX eval boards: interrupt
           storm due to u-boot leaving pins in new states, fixing power button
           config, a couple of compatible-string corrections.
      
         - Powerdown and Suspend/Resume fixes for Allwinner A83-based tablets
      
         - A few documentation tweaks and a fix of a memory leak in the reset
           subsystem"
      
      * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        MAINTAINERS: update Cavium ThunderX2 maintainers
        ARM: dts: stm32: change joystick pinctrl definition on stm32mp157c-ev1
        ARM: dts: stm32: remove OV5640 pinctrl definition on stm32mp157c-ev1
        ARM: dts: stm32: Fix CAN RAM mapping on stm32mp157c
        ARM: dts: stm32: relax qspi pins slew-rate for stm32mp157
        arm64: dts: zii-ultra: fix ARM regulator GPIO handle
        ARM: sunxi: Fix CPU powerdown on A83T
        ARM: dts: sun8i-a83t-tbs-a711: Fix WiFi resume from suspend
        arm64: dts: imx8mn: fix compatible string for sdma
        arm64: dts: imx8mm: fix compatible string for sdma
        reset: fix reset_control_ops kerneldoc comment
        ARM: dts: imx6-logicpd: Re-enable SNVS power key
        soc: imx: gpc: fix initialiser format
        ARM: dts: imx6qdl-sabreauto: Fix storm of accelerometer interrupts
        arm64: dts: ls1028a: fix a compatible issue
        reset: fix reset_control_get_exclusive kerneldoc comment
        reset: fix reset_control_lookup kerneldoc comment
        reset: fix of_reset_control_get_count kerneldoc comment
        reset: fix of_reset_simple_xlate kerneldoc comment
        reset: Fix memory leak in reset_control_array_put()
      44866956