Home
last modified time | relevance | path

Searched refs:hwspinlock (Results 1 – 25 of 45) sorted by relevance

12

/linux-6.15/include/linux/
H A Dhwspinlock.h24 struct hwspinlock;
61 struct hwspinlock *hwspin_lock_request_specific(unsigned int id);
62 int hwspin_lock_free(struct hwspinlock *hwlock);
64 int __hwspin_lock_timeout(struct hwspinlock *, unsigned int, int,
66 int __hwspin_trylock(struct hwspinlock *, int, unsigned long *);
67 void __hwspin_unlock(struct hwspinlock *, int, unsigned long *);
69 int hwspin_lock_bust(struct hwspinlock *hwlock, unsigned int id);
100 static inline int hwspin_lock_free(struct hwspinlock *hwlock) in hwspin_lock_free()
190 static inline int hwspin_trylock_irq(struct hwspinlock *hwlock) in hwspin_trylock_irq()
246 static inline int hwspin_trylock(struct hwspinlock *hwlock) in hwspin_trylock()
[all …]
/linux-6.15/Documentation/locking/
H A Dhwspinlock.rst84 hwspinlock).
113 release the hwspinlock as soon as possible.
276 Unlock a previously-locked hwspinlock.
288 Unlock a previously-locked hwspinlock.
298 Unlock a previously-locked hwspinlock.
309 #include <linux/hwspinlock.h>
314 struct hwspinlock *hwlock;
374 if the hwspinlock is still in use).
398 struct hwspinlock lock[0];
405 * struct hwspinlock - this struct represents a single hwspinlock instance
[all …]
H A Dindex.rst23 hwspinlock
/linux-6.15/drivers/hwspinlock/
H A Dhwspinlock_internal.h31 int (*trylock)(struct hwspinlock *lock);
32 void (*unlock)(struct hwspinlock *lock);
33 int (*bust)(struct hwspinlock *lock, unsigned int id);
34 void (*relax)(struct hwspinlock *lock);
43 struct hwspinlock { struct
62 struct hwspinlock lock[];
65 static inline int hwlock_to_id(struct hwspinlock *hwlock) in hwlock_to_id()
H A Dhwspinlock_core.c373 struct hwspinlock *hwlock; in of_hwspin_lock_get_id()
455 struct hwspinlock *tmp; in hwspin_lock_register_single()
480 struct hwspinlock *hwlock = NULL; in hwspin_lock_unregister_single()
521 struct hwspinlock *hwlock; in hwspin_lock_register()
568 struct hwspinlock *hwlock, *tmp; in hwspin_lock_unregister()
682 struct hwspinlock *tmp; in __hwspin_lock_request()
727 struct hwspinlock *hwlock; in hwspin_lock_request_specific()
776 struct hwspinlock *tmp; in hwspin_lock_free()
817 struct hwspinlock **hwlock = res; in devm_hwspin_lock_match()
827 hwspin_lock_free(*(struct hwspinlock **)res); in devm_hwspin_lock_release()
[all …]
H A Du8500_hsem.c50 static int u8500_hsem_trylock(struct hwspinlock *lock) in u8500_hsem_trylock()
63 static void u8500_hsem_unlock(struct hwspinlock *lock) in u8500_hsem_unlock()
74 static void u8500_hsem_relax(struct hwspinlock *lock) in u8500_hsem_relax()
89 struct hwspinlock *hwlock; in u8500_hsem_probe()
H A Dsprd_hwspinlock.c40 static int sprd_hwspinlock_trylock(struct hwspinlock *lock) in sprd_hwspinlock_trylock()
60 static void sprd_hwspinlock_unlock(struct hwspinlock *lock) in sprd_hwspinlock_unlock()
68 static void sprd_hwspinlock_relax(struct hwspinlock *lock) in sprd_hwspinlock_relax()
89 struct hwspinlock *lock; in sprd_hwspinlock_probe()
H A Domap_hwspinlock.c38 static int omap_hwspinlock_trylock(struct hwspinlock *lock) in omap_hwspinlock_trylock()
46 static void omap_hwspinlock_unlock(struct hwspinlock *lock) in omap_hwspinlock_unlock()
64 static void omap_hwspinlock_relax(struct hwspinlock *lock) in omap_hwspinlock_relax()
H A Dqcom_hwspinlock.c28 static int qcom_hwspinlock_trylock(struct hwspinlock *lock) in qcom_hwspinlock_trylock()
45 static void qcom_hwspinlock_unlock(struct hwspinlock *lock) in qcom_hwspinlock_unlock()
67 static int qcom_hwspinlock_bust(struct hwspinlock *lock, unsigned int id) in qcom_hwspinlock_bust()
219 array_size = QCOM_MUTEX_NUM_LOCKS * sizeof(struct hwspinlock); in qcom_hwspinlock_probe()
H A Dstm32_hwspinlock.c28 static int stm32_hwspinlock_trylock(struct hwspinlock *lock) in stm32_hwspinlock_trylock()
39 static void stm32_hwspinlock_unlock(struct hwspinlock *lock) in stm32_hwspinlock_unlock()
46 static void stm32_hwspinlock_relax(struct hwspinlock *lock) in stm32_hwspinlock_relax()
H A Dsun6i_hwspinlock.c63 static int sun6i_hwspinlock_trylock(struct hwspinlock *lock) in sun6i_hwspinlock_trylock()
70 static void sun6i_hwspinlock_unlock(struct hwspinlock *lock) in sun6i_hwspinlock_unlock()
94 struct hwspinlock *hwlock; in sun6i_hwspinlock_probe()
/linux-6.15/Documentation/devicetree/bindings/hwlock/
H A Dti,omap-hwspinlock.yaml4 $id: http://devicetree.org/schemas/hwlock/ti,omap-hwspinlock.yaml#
15 - ti,omap4-hwspinlock # for OMAP44xx, OMAP54xx, AM33xx, AM43xx, DRA7xx SoCs
16 - ti,am64-hwspinlock # for K3 AM64x SoCs
17 - ti,am654-hwspinlock # for K3 AM65x, J721E and J7200 SoCs
25 The OMAP hwspinlock users will use a 0-indexed relative hwlock number as
26 the argument specifier value for requesting a specific hwspinlock within
27 a hwspinlock bank.
43 compatible = "ti,omap4-hwspinlock";
H A Dst,stm32-hwspinlock.yaml4 $id: http://devicetree.org/schemas/hwlock/st,stm32-hwspinlock.yaml#
17 const: st,stm32-hwspinlock
41 hwspinlock@4c000000 {
42 compatible = "st,stm32-hwspinlock";
H A Dsprd,hwspinlock-r3p0.yaml4 $id: http://devicetree.org/schemas/hwlock/sprd,hwspinlock-r3p0.yaml#
16 const: sprd,hwspinlock-r3p0
44 compatible = "sprd,hwspinlock-r3p0";
H A Dallwinner,sun6i-a31-hwspinlock.yaml4 $id: http://devicetree.org/schemas/hwlock/allwinner,sun6i-a31-hwspinlock.yaml#
18 const: allwinner,sun6i-a31-hwspinlock
47 compatible = "allwinner,sun6i-a31-hwspinlock";
H A Dqcom-hwspinlock.yaml4 $id: http://devicetree.org/schemas/hwlock/qcom-hwspinlock.yaml#
/linux-6.15/Documentation/translations/zh_CN/locking/
H A Dindex.rst33 * hwspinlock
/linux-6.15/arch/arm64/boot/dts/sprd/
H A Dwhale2.dtsi196 hwlock: hwspinlock@40500000 {
197 compatible = "sprd,hwspinlock-r3p0";
/linux-6.15/drivers/nvmem/
H A Dsc27xx-efuse.c64 struct hwspinlock *hwlock;
H A Dsprd-efuse.c66 struct hwspinlock *hwlock;
/linux-6.15/drivers/
H A DMakefile157 obj-$(CONFIG_HWSPINLOCK) += hwspinlock/
H A DKconfig162 source "drivers/hwspinlock/Kconfig"
/linux-6.15/drivers/irqchip/
H A Dirq-stm32mp-exti.c74 struct hwspinlock *hwlock;
372 struct hwspinlock *hwlock = chip_data->host_data->hwlock; in stm32mp_exti_set_type()
/linux-6.15/drivers/base/regmap/
H A Dinternal.h181 struct hwspinlock *hwlock;
/linux-6.15/drivers/spi/
H A Dspi-sprd-adi.c149 struct hwspinlock *hwlock;

12