Home
last modified time | relevance | path

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

/linux-4.1.27/include/linux/
Dhwspinlock.h29 struct hwspinlock;
66 struct hwspinlock *hwspin_lock_request(void);
67 struct hwspinlock *hwspin_lock_request_specific(unsigned int id);
68 int hwspin_lock_free(struct hwspinlock *hwlock);
69 int hwspin_lock_get_id(struct hwspinlock *hwlock);
70 int __hwspin_lock_timeout(struct hwspinlock *, unsigned int, int,
72 int __hwspin_trylock(struct hwspinlock *, int, unsigned long *);
73 void __hwspin_unlock(struct hwspinlock *, int, unsigned long *);
90 static inline struct hwspinlock *hwspin_lock_request(void) in hwspin_lock_request()
95 static inline struct hwspinlock *hwspin_lock_request_specific(unsigned int id) in hwspin_lock_request_specific()
[all …]
/linux-4.1.27/Documentation/
Dhwspinlock.txt14 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 …]
D00-INDEX210 hwspinlock.txt
/linux-4.1.27/drivers/hwspinlock/
Dhwspinlock_core.c88 int __hwspin_trylock(struct hwspinlock *hwlock, int mode, unsigned long *flags) in __hwspin_trylock()
177 int __hwspin_lock_timeout(struct hwspinlock *hwlock, unsigned int to, in __hwspin_lock_timeout()
229 void __hwspin_unlock(struct hwspinlock *hwlock, int mode, unsigned long *flags) in __hwspin_unlock()
260 static int hwspin_lock_register_single(struct hwspinlock *hwlock, int id) in hwspin_lock_register_single()
262 struct hwspinlock *tmp; in hwspin_lock_register_single()
285 static struct hwspinlock *hwspin_lock_unregister_single(unsigned int id) in hwspin_lock_unregister_single()
287 struct hwspinlock *hwlock = NULL; in hwspin_lock_unregister_single()
328 struct hwspinlock *hwlock; in hwspin_lock_register()
375 struct hwspinlock *hwlock, *tmp; in hwspin_lock_unregister()
403 static int __hwspin_lock_request(struct hwspinlock *hwlock) in __hwspin_lock_request()
[all …]
Dhwspinlock_internal.h37 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()
Domap_hwspinlock.c44 static int omap_hwspinlock_trylock(struct hwspinlock *lock) in omap_hwspinlock_trylock()
52 static void omap_hwspinlock_unlock(struct hwspinlock *lock) in omap_hwspinlock_unlock()
70 static void omap_hwspinlock_relax(struct hwspinlock *lock) in omap_hwspinlock_relax()
85 struct hwspinlock *hwlock; in omap_hwspinlock_probe()
Du8500_hsem.c59 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()
/linux-4.1.27/drivers/
DMakefile146 obj-$(CONFIG_HWSPINLOCK) += hwspinlock/
DKconfig137 source "drivers/hwspinlock/Kconfig"
/linux-4.1.27/arch/arm/boot/dts/
Datlas7.dtsi87 hwspinlock {
88 compatible = "sirf,hwspinlock";
Dam33xx.dtsi340 hwspinlock: spinlock@480ca000 { label
341 compatible = "ti,omap4-hwspinlock";
Dam4372.dtsi392 hwspinlock: spinlock@480ca000 { label
393 compatible = "ti,omap4-hwspinlock";
Domap4.dtsi396 hwspinlock: spinlock@4a0f6000 { label
397 compatible = "ti,omap4-hwspinlock";
Domap5.dtsi445 hwspinlock: spinlock@4a0f6000 { label
446 compatible = "ti,omap4-hwspinlock";
Ddra7.dtsi794 hwspinlock: spinlock@4a0f6000 { label
795 compatible = "ti,omap4-hwspinlock";
/linux-4.1.27/arch/arm/mach-omap2/
DMakefile281 obj-y += hwspinlock.o
/linux-4.1.27/
DMAINTAINERS1550 F: drivers/hwspinlock/u8500_hsem.c
4558 F: Documentation/hwspinlock.txt
4559 F: drivers/hwspinlock/hwspinlock_*
4560 F: include/linux/hwspinlock.h
7132 F: drivers/hwspinlock/omap_hwspinlock.c
7133 F: arch/arm/mach-omap2/hwspinlock.c