Skip to content
  1. Nov 10, 2023
    • Mark Hasemeyer's avatar
      spi: Fix null dereference on suspend · bef4a48f
      Mark Hasemeyer authored
      
      
      A race condition exists where a synchronous (noqueue) transfer can be
      active during a system suspend. This can cause a null pointer
      dereference exception to occur when the system resumes.
      
      Example order of events leading to the exception:
      1. spi_sync() calls __spi_transfer_message_noqueue() which sets
         ctlr->cur_msg
      2. Spi transfer begins via spi_transfer_one_message()
      3. System is suspended interrupting the transfer context
      4. System is resumed
      6. spi_controller_resume() calls spi_start_queue() which resets cur_msg
         to NULL
      7. Spi transfer context resumes and spi_finalize_current_message() is
         called which dereferences cur_msg (which is now NULL)
      
      Wait for synchronous transfers to complete before suspending by
      acquiring the bus mutex and setting/checking a suspend flag.
      
      Signed-off-by: default avatarMark Hasemeyer <markhas@chromium.org>
      Link: https://lore.kernel.org/r/20231107144743.v1.1.I7987f05f61901f567f7661763646cb7d7919b528@changeid
      
      
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      Cc: stable@kernel.org
      bef4a48f
  2. Nov 06, 2023
  3. Oct 23, 2023
  4. Oct 18, 2023
  5. Oct 16, 2023
  6. Oct 12, 2023
  7. Oct 11, 2023
    • Mark Brown's avatar
      spi: Add RZ/V2M CSI target support · 8097dbd4
      Mark Brown authored
      Merge series from Fabrizio Castro <fabrizio.castro.jz@renesas.com>:
      
      The CSI IP found inside the Renesas RZ/V2M SoC supports both SPI host
      and target.  This series extends the CSI dt-bindings and driver to
      add SPI target support.
      8097dbd4
  8. Oct 10, 2023
  9. Oct 09, 2023
  10. Oct 06, 2023
  11. Sep 26, 2023
  12. Sep 25, 2023
  13. Sep 23, 2023
  14. Sep 18, 2023
  15. Sep 15, 2023
  16. Sep 12, 2023
    • Mark Brown's avatar
      spi: Use devm_clk_get_*() helper function to · fd811b62
      Mark Brown authored
      Merge series from Li Zetao <lizetao1@huawei.com>:
      
      Commit 7ef9651e ("clk: Provide new devm_clk helpers for prepared
      and enabled clocks") provides a new helper function for prepared and
      enabled clocks when a driver keeps a clock prepared (or enabled) during
      the whole lifetime of the driver. So where drivers get clocks and enable
      them immediately, it can be combined into a single function
      devm_clk_get_*(). Moreover, the unprepare and disable function
      has been registered to devm_clk_state, and before devm_clk_state is
      released, the clocks will be unprepareed and disable, so it is unnecessary
      to unprepare and disable clocks explicitly when remove drivers or in the
      error handling path.
      fd811b62
    • Mark Brown's avatar
      spi: switch to use modern name (part3) · fffae3af
      Mark Brown authored
      Merge series from Yang Yingliang <yangyingliang@huawei.com>:
      
      I'm trying to rename the legacy name to modern name used in SPI drivers,
      this is part3 patchset.
      
      After introducing devm_spi_alloc_host/spi_alloc_host(), the legacy
      named function devm_spi_alloc_master/spi_alloc_master() can be replaced.
      And also change other legacy name master/slave to modern name host/target
      or controller. Each patch compile test passed.
      fffae3af
    • Mark Brown's avatar
      spidev: A few cleanups · 7a4feff7
      Mark Brown authored
      Merge series from Andy Shevchenko <andriy.shevchenko@linux.intel.com>:
      
      A few cleanups to the spidev.c to utilize existing APIs and make it
      use less amount of Lines of Code. No functional change intended.
      7a4feff7
  17. Sep 11, 2023