Home
last modified time | relevance | path

Searched refs:hwlock (Results 1 – 25 of 68) sorted by relevance

123

/linux/drivers/hwspinlock/
A Dhwspinlock_core.c132 ret = hwlock->bank->ops->trylock(hwlock); in __hwspin_trylock()
239 hwlock->bank->ops->relax(hwlock); in __hwspin_lock_timeout()
284 hwlock->bank->ops->unlock(hwlock); in __hwspin_unlock()
461 if (!hwlock) { in hwspin_lock_unregister_single()
468 return hwlock; in hwspin_lock_unregister_single()
687 if (!hwlock) { in hwspin_lock_get_id()
735 return hwlock; in hwspin_lock_request()
761 if (!hwlock) { in hwspin_lock_request_specific()
846 if (WARN_ON(!hwlock || !*hwlock)) in devm_hwspin_lock_match()
905 if (hwlock) { in devm_hwspin_lock_request()
[all …]
A Dhwspinlock_internal.h62 static inline int hwlock_to_id(struct hwspinlock *hwlock) in hwlock_to_id() argument
64 int local_id = hwlock - &hwlock->bank->lock[0]; in hwlock_to_id()
66 return hwlock->bank->base_id + local_id; in hwlock_to_id()
A Du8500_hsem.c89 struct hwspinlock *hwlock; in u8500_hsem_probe() local
115 for (i = 0, hwlock = &bank->lock[0]; i < num_locks; i++, hwlock++) in u8500_hsem_probe()
116 hwlock->priv = io_base + HSEM_REGISTER_OFFSET + sizeof(u32) * i; in u8500_hsem_probe()
A Domap_hwspinlock.c79 struct hwspinlock *hwlock; in omap_hwspinlock_probe() local
132 for (i = 0, hwlock = &bank->lock[0]; i < num_locks; i++, hwlock++) in omap_hwspinlock_probe()
133 hwlock->priv = io_base + LOCK_BASE_OFFSET + sizeof(u32) * i; in omap_hwspinlock_probe()
A Dsun6i_hwspinlock.c94 struct hwspinlock *hwlock; in sun6i_hwspinlock_probe() local
165 hwlock = &priv->bank->lock[i]; in sun6i_hwspinlock_probe()
166 hwlock->priv = io_base + SPINLOCK_LOCK_REGN + sizeof(u32) * i; in sun6i_hwspinlock_probe()
/linux/include/linux/
A Dhwspinlock.h63 int hwspin_lock_free(struct hwspinlock *hwlock);
65 int hwspin_lock_get_id(struct hwspinlock *hwlock);
204 return __hwspin_trylock(hwlock, HWLOCK_IRQ, NULL); in hwspin_trylock_irq()
223 return __hwspin_trylock(hwlock, HWLOCK_RAW, NULL); in hwspin_trylock_raw()
260 return __hwspin_trylock(hwlock, 0, NULL); in hwspin_trylock()
377 return __hwspin_lock_timeout(hwlock, to, 0, NULL); in hwspin_lock_timeout()
395 __hwspin_unlock(hwlock, HWLOCK_IRQSTATE, flags); in hwspin_unlock_irqrestore()
411 __hwspin_unlock(hwlock, HWLOCK_IRQ, NULL); in hwspin_unlock_irq()
426 __hwspin_unlock(hwlock, HWLOCK_RAW, NULL); in hwspin_unlock_raw()
441 __hwspin_unlock(hwlock, HWLOCK_IN_ATOMIC, NULL); in hwspin_unlock_in_atomic()
[all …]
/linux/Documentation/devicetree/bindings/hwlock/
A Dhwlock.txt1 Generic hwlock bindings
4 Generic bindings that are common to all the hwlock platform specific driver
11 hwlock providers:
18 hwlock users:
22 property "hwlocks", and an optional "hwlock-names" property.
27 #hwlock-cells. The list can have just a single hwlock
32 - hwlock-names: List of hwlock name strings defined in the same order
34 use the hwlock-names to match and get a specific hwlock.
37 1. Example of a node using a single specific hwlock:
52 the hwlock device node 'hwlock1' with #hwlock-cells value of 1, and another
[all …]
A Dsprd-hwspinlock.txt7 - #hwlock-cells : hwlock users only use the hwlock id to represent a specific
8 hwlock, so the number of cells should be <1> here.
13 Please look at the generic hwlock binding for usage information for consumers,
14 "Documentation/devicetree/bindings/hwlock/hwlock.txt"
16 Example of hwlock provider:
20 #hwlock-cells = <1>;
A Dti,omap-hwspinlock.yaml4 $id: http://devicetree.org/schemas/hwlock/ti,omap-hwspinlock.yaml#
22 "#hwlock-cells":
25 The OMAP hwspinlock users will use a 0-indexed relative hwlock number as
29 Please look at the generic hwlock binding for usage information for
30 consumers, "Documentation/devicetree/bindings/hwlock/hwlock.txt"
35 - "#hwlock-cells"
46 #hwlock-cells = <1>;
73 #hwlock-cells = <1>;
A Dqcom-hwspinlock.yaml4 $id: http://devicetree.org/schemas/hwlock/qcom-hwspinlock.yaml#
25 '#hwlock-cells':
31 - '#hwlock-cells'
37 tcsr_mutex: hwlock@1f40000 {
40 #hwlock-cells = <1>;
A Dst,stm32-hwspinlock.yaml4 $id: http://devicetree.org/schemas/hwlock/st,stm32-hwspinlock.yaml#
13 "#hwlock-cells":
30 - "#hwlock-cells"
43 #hwlock-cells = <1>;
A Dallwinner,sun6i-a31-hwspinlock.yaml4 $id: http://devicetree.org/schemas/hwlock/allwinner,sun6i-a31-hwspinlock.yaml#
42 hwlock@1c18000 {
/linux/Documentation/locking/
A Dhwspinlock.rst325 struct hwspinlock *hwlock;
329 hwlock = hwspin_lock_request();
330 if (!hwlock)
333 id = hwspin_lock_get_id(hwlock);
346 hwspin_unlock(hwlock);
349 ret = hwspin_lock_free(hwlock);
358 struct hwspinlock *hwlock;
366 if (!hwlock)
370 ret = hwspin_trylock(hwlock);
381 hwspin_unlock(hwlock);
[all …]
/linux/drivers/spi/
A Dspi-sprd-adi.c151 struct hwspinlock *hwlock; member
227 if (sadi->hwlock) { in sprd_adi_read()
228 ret = hwspin_lock_timeout_irqsave(sadi->hwlock, in sprd_adi_read()
282 if (sadi->hwlock) in sprd_adi_read()
283 hwspin_unlock_irqrestore(sadi->hwlock, &flags); in sprd_adi_read()
293 if (sadi->hwlock) { in sprd_adi_write()
294 ret = hwspin_lock_timeout_irqsave(sadi->hwlock, in sprd_adi_write()
331 if (sadi->hwlock) in sprd_adi_write()
332 hwspin_unlock_irqrestore(sadi->hwlock, &flags); in sprd_adi_write()
559 sadi->hwlock = in sprd_adi_probe()
[all …]
/linux/drivers/irqchip/
A Dirq-stm32-exti.c68 struct hwspinlock *hwlock; member
309 struct hwspinlock *hwlock = chip_data->host_data->hwlock; in stm32_irq_set_type() local
315 if (hwlock) { in stm32_irq_set_type()
316 err = hwspin_lock_timeout_in_atomic(hwlock, HWSPNLCK_TIMEOUT); in stm32_irq_set_type()
334 if (hwlock) in stm32_irq_set_type()
335 hwspin_unlock_in_atomic(hwlock); in stm32_irq_set_type()
511 struct hwspinlock *hwlock = chip_data->host_data->hwlock; in stm32_exti_h_set_type() local
518 if (hwlock) { in stm32_exti_h_set_type()
537 if (hwlock) in stm32_exti_h_set_type()
538 hwspin_unlock_in_atomic(hwlock); in stm32_exti_h_set_type()
[all …]
/linux/drivers/nvmem/
A Dsc27xx-efuse.c65 struct hwspinlock *hwlock; member
90 ret = hwspin_lock_timeout_raw(efuse->hwlock, in sc27xx_efuse_lock()
103 hwspin_unlock_raw(efuse->hwlock); in sc27xx_efuse_unlock()
233 efuse->hwlock = devm_hwspin_lock_request_specific(&pdev->dev, ret); in sc27xx_efuse_probe()
234 if (!efuse->hwlock) { in sc27xx_efuse_probe()
A Dsprd-efuse.c66 struct hwspinlock *hwlock; member
89 ret = hwspin_lock_timeout_raw(efuse->hwlock, in sprd_efuse_lock()
102 hwspin_unlock_raw(efuse->hwlock); in sprd_efuse_unlock()
390 efuse->hwlock = devm_hwspin_lock_request_specific(&pdev->dev, ret); in sprd_efuse_probe()
391 if (!efuse->hwlock) { in sprd_efuse_probe()
/linux/drivers/pinctrl/stm32/
A Dpinctrl-stm32.c112 struct hwspinlock *hwlock; member
419 if (pctl->hwlock) { in stm32_gpio_domain_activate()
430 if (pctl->hwlock) in stm32_gpio_domain_activate()
756 if (pctl->hwlock) { in stm32_pmx_set_mode()
775 if (pctl->hwlock) in stm32_pmx_set_mode()
873 if (pctl->hwlock) { in stm32_pconf_set_driving()
887 if (pctl->hwlock) in stm32_pconf_set_driving()
928 if (pctl->hwlock) { in stm32_pconf_set_speed()
942 if (pctl->hwlock) in stm32_pconf_set_speed()
983 if (pctl->hwlock) { in stm32_pconf_set_bias()
[all …]
/linux/drivers/isdn/hardware/mISDN/
A DmISDNisar.c199 spin_lock_irqsave(isar->hwlock, flags); in load_firmware()
201 spin_unlock_irqrestore(isar->hwlock, flags); in load_firmware()
216 spin_lock_irqsave(isar->hwlock, flags); in load_firmware()
257 spin_lock_irqsave(isar->hwlock, flags); in load_firmware()
288 spin_lock_irqsave(isar->hwlock, flags); in load_firmware()
310 spin_unlock_irqrestore(isar->hwlock, flags); in load_firmware()
328 spin_lock_irqsave(isar->hwlock, flags); in load_firmware()
334 spin_unlock_irqrestore(isar->hwlock, flags); in load_firmware()
355 spin_lock_irqsave(isar->hwlock, flags); in load_firmware()
385 spin_lock_irqsave(isar->hwlock, flags); in load_firmware()
[all …]
A DmISDNipac.c564 spin_lock_irqsave(isac->hwlock, flags); in isac_l1hw()
598 spin_lock_irqsave(isac->hwlock, flags); in isac_ctrl()
634 spin_lock_irqsave(isac->hwlock, flags); in isac_l1cmd()
639 spin_lock_irqsave(isac->hwlock, flags); in isac_l1cmd()
644 spin_lock_irqsave(isac->hwlock, flags); in isac_l1cmd()
670 spin_lock_irqsave(isac->hwlock, flags); in isac_l1cmd()
720 spin_lock_irqsave(isac->hwlock, flags); in dbusy_timer_handler()
1341 spin_lock_irqsave(hx->ip->hwlock, flags); in hscx_l2l1()
1350 spin_lock_irqsave(hx->ip->hwlock, flags); in hscx_l2l1()
1361 spin_lock_irqsave(hx->ip->hwlock, flags); in hscx_l2l1()
[all …]
/linux/Documentation/devicetree/bindings/nvmem/
A Dsprd-efuse.txt8 - hwlocks: Reference to a phandle of a hwlock provider node.
20 hwlocks = <&hwlock 8>;
A Dsc27xx-efuse.txt11 - hwlocks: Reference to a phandle of a hwlock provider node.
34 hwlocks = <&hwlock 12>;
/linux/drivers/soc/qcom/
A Dsmem.c266 struct hwspinlock *hwlock; member
461 ret = hwspin_lock_timeout_irqsave(__smem->hwlock, in qcom_smem_alloc()
477 hwspin_unlock_irqrestore(__smem->hwlock, &flags); in qcom_smem_alloc()
591 ret = hwspin_lock_timeout_irqsave(__smem->hwlock, in qcom_smem_get()
609 hwspin_unlock_irqrestore(__smem->hwlock, &flags); in qcom_smem_get()
981 smem->hwlock = hwspin_lock_request_specific(hwlock_id); in qcom_smem_probe()
982 if (!smem->hwlock) in qcom_smem_probe()
1000 hwspin_lock_free(__smem->hwlock); in qcom_smem_remove()
/linux/drivers/iio/adc/
A Dsc27xx_adc.c77 struct hwspinlock *hwlock; member
194 ret = hwspin_lock_timeout_raw(data->hwlock, SC27XX_ADC_HWLOCK_TIMEOUT); in sc27xx_adc_read()
253 hwspin_unlock_raw(data->hwlock); in sc27xx_adc_read()
516 sc27xx_data->hwlock = devm_hwspin_lock_request_specific(dev, ret); in sc27xx_adc_probe()
517 if (!sc27xx_data->hwlock) { in sc27xx_adc_probe()
/linux/arch/arm64/boot/dts/sprd/
A Dwhale2.dtsi172 hwlocks = <&hwlock 0>;
173 hwlock-names = "adi";
191 hwlock: hwspinlock@40500000 { label
194 #hwlock-cells = <1>;

Completed in 58 milliseconds

123