[PATCH v7 0/8] thermal: tsens: Handle critical interrupts
From: Amit Kucheria
Date: Thu Mar 12 2020 - 08:37:15 EST
TSENS IP v2.x supports critical interrupts and v2.3+ adds watchdog support
in case the FSM is stuck. Enable support in the driver.
This series was generated on top of v5.6-rc2.
Changes since v6:
- Fix up some lines over 80 characters
- Remove Link tags
Changes since v5:Â
- Introduce a function tsens_register_irq to handle uplow and critical
interrupt registration and reduce code duplication
- Clarify reason for patch 04
Changes from v4:
- Add back patch 1 from v3[*], I mistakenly didn't post it for v4.
- Remove spinlock from critical interrupt handling
- Change critical interrupt handler to fall thru watchdog bark handling to
handle critical interrupts too
[*] https://lore.kernel.org/linux-arm-msm/77dd80eb58f0db29a03097cb442d606f810a849a.1577976221.git.amit.kucheria@xxxxxxxxxx/
Changes from v3:
- Remove the DTS changes that are already queued
- Fix review comments by Bjorn
- Fixup patch description to clarify that we don't use TSENS critical
interrupts in Linux, but need it for the watchdog support that uses the
same HW irq line.
- Separate kernel-doc fixes into a separate patch.
Changes from v2:
- Handle old DTBs w/o critical irq in the same way as fix sent for 5.5
Changes from v1:
- Make tsens_features non-const to allow run time detection of features
- Pass tsens_sensor around as a const
- Fix a bug to release dev pointer in success path
- Address review comments from Bjorn and Stephen (thanks for the review)
- Add msm8998 and msm8996 DTSI changes for critical interrupts
Amit Kucheria (8):
drivers: thermal: tsens: De-constify struct tsens_features
drivers: thermal: tsens: Pass around struct tsens_sensor as a constant
drivers: thermal: tsens: use simpler variables
drivers: thermal: tsens: Release device in success path
drivers: thermal: tsens: Add critical interrupt support
drivers: thermal: tsens: Add watchdog support
drivers: thermal: tsens: kernel-doc fixup
drivers: thermal: tsens: Remove unnecessary irq flag
drivers/thermal/qcom/tsens-8960.c | 4 +-
drivers/thermal/qcom/tsens-common.c | 194 ++++++++++++++++++++++++----
drivers/thermal/qcom/tsens-v0_1.c | 6 +-
drivers/thermal/qcom/tsens-v1.c | 6 +-
drivers/thermal/qcom/tsens-v2.c | 24 +++-
drivers/thermal/qcom/tsens.c | 65 ++++++----
drivers/thermal/qcom/tsens.h | 103 +++++++++++++--
7 files changed, 331 insertions(+), 71 deletions(-)
--
2.20.1