This patch follows the discussion based on the first RFC series posted on the mailing list [1]. The discussion resulted in a couple of directives for hwspinlocks that do not want the framework imposing a s/w spinlock around the hwspinlock. i. The default should only be a s/w spinlock around the hwspinlock to ensure correctness of locking. ii. Existing users may not use raw capability, unless the platform registers support for it. iii. Platform driver for hwspinlock should dictate which locks can be operated in raw mode. iv. Platform driver and the hw holds the responsibility to ensure the correctness of acquiring the hwspinlock. This patchset implements these directives. Changes since RFC v1: - Introduce 'raw' capability for hwspinlocks. - Platform code now has to explicitly specify the raw capability of a lock. - Check to ensure that only those locks explicitly marked as raw capable can be locked/unlocked through the _raw api - QCOM patch for making lock #7 raw capable added. - Add documentation Thanks, Lina [1]. https://patches.linaro.org/47895/ Lina Iyer (2): hwspinlock: Introduce raw capability for hwspinlocks hwspinlock: qcom: Lock #7 is special lock, uses dynamic proc_id Documentation/hwspinlock.txt | 16 +++++++ drivers/hwspinlock/hwspinlock_core.c | 75 +++++++++++++++++++------------- drivers/hwspinlock/hwspinlock_internal.h | 6 +++ drivers/hwspinlock/qcom_hwspinlock.c | 22 +++++++--- include/linux/hwspinlock.h | 41 +++++++++++++++++ 5 files changed, 125 insertions(+), 35 deletions(-) -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html