mbox series

[v7,00/10] mhi: pci_generic: Misc improvements

Message ID 1609768179-10132-1-git-send-email-loic.poulain@linaro.org
Headers show
Series mhi: pci_generic: Misc improvements | expand

Message

Loic Poulain Jan. 4, 2021, 1:49 p.m. UTC
This series adjust some configuration values to ensure stability and
robustness of mhi pci devices (timeout, number of events, burst mode).

It also includes support for system sleep as well as a recovery procedure
that can be triggered when a PCI error is reported, either by PCI AER or by
the new health-check mechanism.

All these changes have been tested with Telit FN980m module

v2:
  - Cancel recovery work on suspend
v3:
  - enable doorbell_mode_switch for burst channel (HW)
  - Add mhi_initialize_controller helper patch
v4:
  - Delete hard reset on module unload, MHI reset is enough (Jeffrey)
  - Move soc reset support in MHI core (Jeffrey)
  - burst mode: enable doorbell_mode_switch for HW channels (Bhaumik)
  - Add diag channels
v5:
  - Remove useless call to mhi_initialize_controller in alloc_controller (hemant)
  - Add define for post reset timeout (hemant)
  - Fix static misses (hemant)
v6:
  - Add debug print in case of recovery success (Mani)
  - Return error code in case of resume failure (Mani)
v7:
  - Removed mhi_initialize_controller API (Mani)
  - Added controller specific reset callback (Mani)
  - Reworked error handling using reset_prepare/done (Mani)

Loic Poulain (10):
  bus: mhi: core: Add device hardware reset support
  mhi: pci-generic: Increase number of hardware events
  mhi: pci_generic: Enable burst mode for hardware channels
  mhi: pci_generic: Add support for reset
  mhi: pci_generic: Add suspend/resume/recovery procedure
  mhi: pci_generic: Add PCI error handlers
  mhi: pci_generic: Add health-check
  mhi: pci_generic: Increase controller timeout value
  mhi: pci_generic: Add diag channels
  mhi: pci_generic: Set irq moderation value to 1ms for hw channels

 drivers/bus/mhi/core/main.c   |  13 ++
 drivers/bus/mhi/pci_generic.c | 359 +++++++++++++++++++++++++++++++++++++++---
 include/linux/mhi.h           |   9 ++
 3 files changed, 361 insertions(+), 20 deletions(-)

-- 
2.7.4