/linux-4.4.14/include/linux/ |
D | hwspinlock.h | 30 struct hwspinlock; 67 struct hwspinlock *hwspin_lock_request(void); 68 struct hwspinlock *hwspin_lock_request_specific(unsigned int id); 69 int hwspin_lock_free(struct hwspinlock *hwlock); 71 int hwspin_lock_get_id(struct hwspinlock *hwlock); 72 int __hwspin_lock_timeout(struct hwspinlock *, unsigned int, int, 74 int __hwspin_trylock(struct hwspinlock *, int, unsigned long *); 75 void __hwspin_unlock(struct hwspinlock *, int, unsigned long *); 92 static inline struct hwspinlock *hwspin_lock_request(void) in hwspin_lock_request() 97 static inline struct hwspinlock *hwspin_lock_request_specific(unsigned int id) in hwspin_lock_request_specific() [all …]
|
/linux-4.4.14/Documentation/ |
D | hwspinlock.txt | 14 A generic hwspinlock framework allows platform-independent drivers to use 15 the hwspinlock device in order to access data structures that are shared 28 the remote processors, and access to it is synchronized using the hwspinlock 32 A common hwspinlock interface makes it possible to have generic, platform- 37 struct hwspinlock *hwspin_lock_request(void); 38 - dynamically assign an hwspinlock and return its address, or NULL 39 in case an unused hwspinlock isn't available. Users of this 44 struct hwspinlock *hwspin_lock_request_specific(unsigned int id); 45 - assign a specific hwspinlock id and return its address, or NULL 46 if that hwspinlock is already in use. Usually board code will [all …]
|
D | 00-INDEX | 210 hwspinlock.txt
|
/linux-4.4.14/Documentation/devicetree/bindings/hwlock/ |
D | omap-hwspinlock.txt | 5 - compatible: Should be "ti,omap4-hwspinlock" for 7 - reg: Contains the hwspinlock module register address space 9 - ti,hwmods: Name of the hwmod associated with the hwspinlock device 10 - #hwlock-cells: Should be 1. The OMAP hwspinlock users will use a 12 specifier value for requesting a specific hwspinlock 13 within a hwspinlock bank. 21 hwspinlock: spinlock@4a0f6000 { 22 compatible = "ti,omap4-hwspinlock";
|
D | sirf,hwspinlock.txt | 6 "sirf,hwspinlock" 8 - reg : the register address of hwspinlock 18 compatible = "sirf,hwspinlock";
|
/linux-4.4.14/drivers/hwspinlock/ |
D | hwspinlock_core.c | 89 int __hwspin_trylock(struct hwspinlock *hwlock, int mode, unsigned long *flags) in __hwspin_trylock() 178 int __hwspin_lock_timeout(struct hwspinlock *hwlock, unsigned int to, in __hwspin_lock_timeout() 230 void __hwspin_unlock(struct hwspinlock *hwlock, int mode, unsigned long *flags) in __hwspin_unlock() 298 struct hwspinlock *hwlock; in of_hwspin_lock_get_id() 343 static int hwspin_lock_register_single(struct hwspinlock *hwlock, int id) in hwspin_lock_register_single() 345 struct hwspinlock *tmp; in hwspin_lock_register_single() 368 static struct hwspinlock *hwspin_lock_unregister_single(unsigned int id) in hwspin_lock_unregister_single() 370 struct hwspinlock *hwlock = NULL; in hwspin_lock_unregister_single() 411 struct hwspinlock *hwlock; in hwspin_lock_register() 458 struct hwspinlock *hwlock, *tmp; in hwspin_lock_unregister() [all …]
|
D | hwspinlock_internal.h | 37 int (*trylock)(struct hwspinlock *lock); 38 void (*unlock)(struct hwspinlock *lock); 39 void (*relax)(struct hwspinlock *lock); 48 struct hwspinlock { struct 67 struct hwspinlock lock[0]; 70 static inline int hwlock_to_id(struct hwspinlock *hwlock) in hwlock_to_id()
|
D | u8500_hsem.c | 59 static int u8500_hsem_trylock(struct hwspinlock *lock) in u8500_hsem_trylock() 72 static void u8500_hsem_unlock(struct hwspinlock *lock) in u8500_hsem_unlock() 83 static void u8500_hsem_relax(struct hwspinlock *lock) in u8500_hsem_relax() 98 struct hwspinlock *hwlock; in u8500_hsem_probe()
|
D | omap_hwspinlock.c | 45 static int omap_hwspinlock_trylock(struct hwspinlock *lock) in omap_hwspinlock_trylock() 53 static void omap_hwspinlock_unlock(struct hwspinlock *lock) in omap_hwspinlock_unlock() 71 static void omap_hwspinlock_relax(struct hwspinlock *lock) in omap_hwspinlock_relax() 86 struct hwspinlock *hwlock; in omap_hwspinlock_probe()
|
D | sirf_hwspinlock.c | 35 static int sirf_hwspinlock_trylock(struct hwspinlock *lock) in sirf_hwspinlock_trylock() 43 static void sirf_hwspinlock_unlock(struct hwspinlock *lock) in sirf_hwspinlock_unlock() 59 struct hwspinlock *hwlock; in sirf_hwspinlock_probe()
|
D | qcom_hwspinlock.c | 31 static int qcom_hwspinlock_trylock(struct hwspinlock *lock) in qcom_hwspinlock_trylock() 48 static void qcom_hwspinlock_unlock(struct hwspinlock *lock) in qcom_hwspinlock_unlock() 116 array_size = QCOM_MUTEX_NUM_LOCKS * sizeof(struct hwspinlock); in qcom_hwspinlock_probe()
|
/linux-4.4.14/Documentation/devicetree/bindings/soc/qcom/ |
D | qcom,smem.txt | 25 Definition: reference to a hwspinlock used to protect allocations from
|
/linux-4.4.14/drivers/ |
D | Makefile | 148 obj-$(CONFIG_HWSPINLOCK) += hwspinlock/
|
D | Kconfig | 141 source "drivers/hwspinlock/Kconfig"
|
/linux-4.4.14/arch/arm/boot/dts/ |
D | am33xx.dtsi | 357 hwspinlock: spinlock@480ca000 { label 358 compatible = "ti,omap4-hwspinlock";
|
D | omap4.dtsi | 397 hwspinlock: spinlock@4a0f6000 { label 398 compatible = "ti,omap4-hwspinlock";
|
D | am4372.dtsi | 445 hwspinlock: spinlock@480ca000 { label 446 compatible = "ti,omap4-hwspinlock";
|
D | omap5.dtsi | 446 hwspinlock: spinlock@4a0f6000 { label 447 compatible = "ti,omap4-hwspinlock";
|
D | atlas7.dtsi | 111 hwspinlock { 112 compatible = "sirf,hwspinlock";
|
D | dra7.dtsi | 809 hwspinlock: spinlock@4a0f6000 { label 810 compatible = "ti,omap4-hwspinlock";
|
/linux-4.4.14/drivers/soc/qcom/ |
D | smem.c | 239 struct hwspinlock *hwlock;
|
/linux-4.4.14/ |
D | MAINTAINERS | 1657 F: drivers/hwspinlock/u8500_hsem.c 4907 F: Documentation/hwspinlock.txt 4908 F: drivers/hwspinlock/hwspinlock_* 4909 F: include/linux/hwspinlock.h 7741 F: drivers/hwspinlock/omap_hwspinlock.c
|