Home
last modified time | relevance | path

Searched +full:irq +full:- +full:can +full:- +full:wake (Results 1 – 25 of 1021) sorted by relevance

12345678910>>...41

/kernel/linux/linux-6.6/drivers/base/power/
Dwakeirq.c1 // SPDX-License-Identifier: GPL-2.0
5 #include <linux/irq.h>
13 * dev_pm_attach_wake_irq - Attach device interrupt as a wake IRQ
15 * @wirq: Wake irq specific data
17 * Internal function to attach a dedicated wake-up interrupt as a wake IRQ.
24 return -EINVAL; in dev_pm_attach_wake_irq()
26 spin_lock_irqsave(&dev->power.lock, flags); in dev_pm_attach_wake_irq()
27 if (dev_WARN_ONCE(dev, dev->power.wakeirq, in dev_pm_attach_wake_irq()
28 "wake irq already initialized\n")) { in dev_pm_attach_wake_irq()
29 spin_unlock_irqrestore(&dev->power.lock, flags); in dev_pm_attach_wake_irq()
[all …]
/kernel/linux/linux-5.10/drivers/base/power/
Dwakeirq.c1 // SPDX-License-Identifier: GPL-2.0
5 #include <linux/irq.h>
13 * dev_pm_attach_wake_irq - Attach device interrupt as a wake IRQ
15 * @irq: Device wake-up capable interrupt
16 * @wirq: Wake irq specific data
19 * dedicated wake-up interrupt as a wake IRQ.
21 static int dev_pm_attach_wake_irq(struct device *dev, int irq, in dev_pm_attach_wake_irq() argument
27 return -EINVAL; in dev_pm_attach_wake_irq()
29 spin_lock_irqsave(&dev->power.lock, flags); in dev_pm_attach_wake_irq()
30 if (dev_WARN_ONCE(dev, dev->power.wakeirq, in dev_pm_attach_wake_irq()
[all …]
/kernel/linux/linux-6.6/include/linux/
Dlis3lv02d.h1 /* SPDX-License-Identifier: GPL-2.0 */
6 * struct lis3lv02d_platform_data - lis3 chip family platform data
14 * @irq_cfg: On chip irq source and type configuration (click /
15 * data available / wake up, open drain, polarity)
16 * @irq_flags1: Additional irq triggering flags for irq channel 0
17 * @irq_flags2: Additional irq triggering flags for irq channel 1
18 * @duration1: Wake up unit 1 duration parameter
19 * @duration2: Wake up unit 2 duration parameter
20 * @wakeup_flags: Wake up unit 1 flags
21 * @wakeup_thresh: Wake up unit 1 threshold value
[all …]
/kernel/linux/linux-5.10/include/linux/
Dlis3lv02d.h1 /* SPDX-License-Identifier: GPL-2.0 */
6 * struct lis3lv02d_platform_data - lis3 chip family platform data
14 * @irq_cfg: On chip irq source and type configuration (click /
15 * data available / wake up, open drain, polarity)
16 * @irq_flags1: Additional irq triggering flags for irq channel 0
17 * @irq_flags2: Additional irq triggering flags for irq channel 1
18 * @duration1: Wake up unit 1 duration parameter
19 * @duration2: Wake up unit 2 duration parameter
20 * @wakeup_flags: Wake up unit 1 flags
21 * @wakeup_thresh: Wake up unit 1 threshold value
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/arm/
Datmel-sysregs.txt4 - compatible: Should be "atmel,sama5d2-chipid"
5 - reg : Should contain registers location and length
8 - compatible: Should be "atmel,at91sam9260-pit"
9 - reg: Should contain registers location and length
10 - interrupts: Should contain interrupt for the PIT which is the IRQ line
14 - compatible: Should be "microchip,sam9x60-pit64b"
15 - reg: Should contain registers location and length
16 - interrupts: Should contain interrupt for PIT64B timer
17 - clocks: Should contain the available clock sources for PIT64B timer.
20 - compatible: Should be "atmel,at91rm9200-st", "syscon", "simple-mfd"
[all …]
/kernel/linux/linux-6.6/drivers/phy/motorola/
Dphy-mapphone-mdm6600.c1 // SPDX-License-Identifier: GPL-2.0
35 PHY_MDM6600_MODE0, /* out USB mode0 and OOB wake */
36 PHY_MDM6600_MODE1, /* out USB mode1, in OOB wake */
111 struct gpio_desc *enable_gpio = ddata->ctrl_gpios[PHY_MDM6600_ENABLE]; in phy_mdm6600_init()
113 if (!ddata->enabled) in phy_mdm6600_init()
114 return -EPROBE_DEFER; in phy_mdm6600_init()
124 struct gpio_desc *enable_gpio = ddata->ctrl_gpios[PHY_MDM6600_ENABLE]; in phy_mdm6600_power_on()
126 if (!ddata->enabled) in phy_mdm6600_power_on()
127 return -ENODEV; in phy_mdm6600_power_on()
132 if (pm_runtime_enabled(&x->dev)) in phy_mdm6600_power_on()
[all …]
/kernel/linux/linux-5.10/drivers/phy/motorola/
Dphy-mapphone-mdm6600.c1 // SPDX-License-Identifier: GPL-2.0
35 PHY_MDM6600_MODE0, /* out USB mode0 and OOB wake */
36 PHY_MDM6600_MODE1, /* out USB mode1, in OOB wake */
111 struct gpio_desc *enable_gpio = ddata->ctrl_gpios[PHY_MDM6600_ENABLE]; in phy_mdm6600_init()
113 if (!ddata->enabled) in phy_mdm6600_init()
114 return -EPROBE_DEFER; in phy_mdm6600_init()
124 struct gpio_desc *enable_gpio = ddata->ctrl_gpios[PHY_MDM6600_ENABLE]; in phy_mdm6600_power_on()
126 if (!ddata->enabled) in phy_mdm6600_power_on()
127 return -ENODEV; in phy_mdm6600_power_on()
132 if (pm_runtime_enabled(&x->dev)) in phy_mdm6600_power_on()
[all …]
/kernel/linux/linux-5.10/Documentation/power/
Dsuspend-and-interrupts.rst10 -----------------------------------
14 ->prepare, ->suspend and ->suspend_late callbacks have been executed for all
29 Device IRQs are re-enabled during system resume, right before the "early" phase
30 of resuming devices (that is, before starting to execute ->resume_early
35 ------------------------
37 There are interrupts that can legitimately trigger during the entire system
38 suspend-resume cycle, including the "noirq" phases of suspending and resuming
41 but also to IPIs and to some other special-purpose interrupts.
43 The IRQF_NO_SUSPEND flag is used to indicate that to the IRQ subsystem when
44 requesting a special-purpose interrupt. It causes suspend_device_irqs() to
[all …]
/kernel/linux/linux-6.6/Documentation/power/
Dsuspend-and-interrupts.rst10 -----------------------------------
14 ->prepare, ->suspend and ->suspend_late callbacks have been executed for all
29 Device IRQs are re-enabled during system resume, right before the "early" phase
30 of resuming devices (that is, before starting to execute ->resume_early
35 ------------------------
37 There are interrupts that can legitimately trigger during the entire system
38 suspend-resume cycle, including the "noirq" phases of suspending and resuming
41 but also to IPIs and to some other special-purpose interrupts.
43 The IRQF_NO_SUSPEND flag is used to indicate that to the IRQ subsystem when
44 requesting a special-purpose interrupt. It causes suspend_device_irqs() to
[all …]
/kernel/linux/linux-5.10/drivers/gpu/drm/
Ddrm_vblank_work.c1 // SPDX-License-Identifier: MIT
15 * Many DRM drivers need to program hardware in a time-sensitive manner, many
18 * simply do said time-sensitive programming in the driver's IRQ handler,
21 * time-critical programming independently of the CPU.
24 * doesn't need to be concerned with extremely time-sensitive programming,
25 * there's a few situations where it can't be helped. Some unforgiving
26 * hardware may require that certain time-sensitive programming be handled
28 * handle in an IRQ handler. Another such situation would be where the driver
30 * period, but might possibly block and thus cannot be handled in an IRQ
31 * context. Both of these situations can't be solved perfectly in Linux since
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/
Ddrm_vblank_work.c1 // SPDX-License-Identifier: MIT
15 * Many DRM drivers need to program hardware in a time-sensitive manner, many
18 * simply do said time-sensitive programming in the driver's IRQ handler,
21 * time-critical programming independently of the CPU.
24 * doesn't need to be concerned with extremely time-sensitive programming,
25 * there's a few situations where it can't be helped. Some unforgiving
26 * hardware may require that certain time-sensitive programming be handled
28 * handle in an IRQ handler. Another such situation would be where the driver
30 * period, but might possibly block and thus cannot be handled in an IRQ
31 * context. Both of these situations can't be solved perfectly in Linux since
[all …]
/kernel/linux/linux-5.10/drivers/soc/qcom/
Drpmh-rsc.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
24 #include <soc/qcom/cmd-db.h>
26 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
28 #include "rpmh-internal.h"
31 #include "trace-rpmh.h"
91 * - The main rpmh-rsc address is the base of a register space that can
93 * (DRV_PRNT_CHLD_CONFIG). Also found within the rpmh-rsc register
95 * specified in the device tree by "qcom,tcs-offset" and used to
97 * - TCS blocks come one after another. Type, count, and order are
[all …]
/kernel/linux/linux-6.6/drivers/soc/qcom/
Drpmh-rsc.c1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved.
31 #include <soc/qcom/cmd-db.h>
33 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
35 #include "rpmh-internal.h"
38 #include "trace-rpmh.h"
99 * - The main rpmh-rsc address is the base of a register space that can
101 * (DRV_PRNT_CHLD_CONFIG). Also found within the rpmh-rsc register
103 * specified in the device tree by "qcom,tcs-offset" and used to
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/net/
Dsmsc911x.txt1 * Smart Mixed-Signal Connectivity (SMSC) LAN911x/912x Controller
4 - compatible : Should be "smsc,lan<model>", "smsc,lan9115"
5 - reg : Address and length of the io space for SMSC LAN
6 - interrupts : one or two interrupt specifiers
7 - The first interrupt is the SMSC LAN interrupt line
8 - The second interrupt (if present) is the PME (power
9 management event) interrupt that is able to wake up the host
11 - phy-mode : See ethernet.txt file in the same directory
14 - reg-shift : Specify the quantity to shift the register offsets by
15 - reg-io-width : Specify the size (in bytes) of the IO accesses that
[all …]
Dbtusb.txt2 ---------------------------------------------------
6 - compatible : should comply with the format "usbVID,PID" specified in
7 Documentation/devicetree/bindings/usb/usb-device.txt
13 "usb4ca,301a" (Qualcomm QCA6174A (Lite-On))
17 Documentation/devicetree/bindings/net/marvell-bt-8xxx.txt
21 - interrupt-names: (see below)
22 - interrupts : The interrupt specified by the name "wakeup" is the interrupt
23 that shall be used for out-of-band wake-on-bt. Driver will
25 irq will be enabled so that the bluetooth chip can wakeup host
26 platform out of band. During system resume, the irq will be
[all …]
/kernel/linux/linux-6.6/drivers/soc/xilinx/
Dxlnx_event_manager.c1 // SPDX-License-Identifier: GPL-2.0
12 #include <linux/firmware/xlnx-event-manager.h>
13 #include <linux/firmware/xlnx-zynqmp.h>
16 #include <linux/irq.h>
26 static int event_manager_availability = -EACCES;
31 /* Max number of driver can register for same event */
48 * struct agent_cb - Registered callback function and private data.
60 * struct registered_event_data - Registered Event Data.
61 * @key: key is the combine id(Node-Id | Event-Id) of type u64
62 * where upper u32 for Node-Id and lower u32 for Event-Id,
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/net/
Dbtusb.txt2 ---------------------------------------------------
6 - compatible : should comply with the format "usbVID,PID" specified in
7 Documentation/devicetree/bindings/usb/usb-device.yaml
13 "usb4ca,301a" (Qualcomm QCA6174A (Lite-On))
17 Documentation/devicetree/bindings/net/marvell-bt-8xxx.txt
21 - interrupt-names: (see below)
22 - interrupts : The interrupt specified by the name "wakeup" is the interrupt
23 that shall be used for out-of-band wake-on-bt. Driver will
25 irq will be enabled so that the bluetooth chip can wakeup host
26 platform out of band. During system resume, the irq will be
[all …]
Dsmsc,lan9115.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Smart Mixed-Signal Connectivity (SMSC) LAN911x/912x Controller
10 - Shawn Guo <shawnguo@kernel.org>
13 - $ref: ethernet-controller.yaml#
18 - const: smsc,lan9115
19 - items:
20 - enum:
21 - smsc,lan89218
[all …]
/kernel/linux/linux-5.10/drivers/input/touchscreen/
Degalax_ts.c1 // SPDX-License-Identifier: GPL-2.0
14 - auto idle mode support
21 #include <linux/irq.h>
31 * which can only report one point at a given time.
64 static irqreturn_t egalax_ts_interrupt(int irq, void *dev_id) in egalax_ts_interrupt() argument
67 struct input_dev *input_dev = ts->input_dev; in egalax_ts_interrupt()
68 struct i2c_client *client = ts->client; in egalax_ts_interrupt()
77 } while (ret == -EAGAIN && tries++ < EGALAX_MAX_TRIES); in egalax_ts_interrupt()
97 dev_dbg(&client->dev, "point invalid\n"); in egalax_ts_interrupt()
104 dev_dbg(&client->dev, "%s id:%d x:%d y:%d z:%d", in egalax_ts_interrupt()
[all …]
/kernel/linux/linux-5.10/drivers/rtc/
Drtc-bd70528.c1 // SPDX-License-Identifier: GPL-2.0-or-later
8 #include <linux/mfd/rohm-bd70528.h>
9 #include <linux/mfd/rohm-bd71828.h>
66 ret = regmap_read(bd70528->regmap, BD70528_REG_WAKE_EN, &ctrl_reg); in bd70528_set_wake()
85 return regmap_write(bd70528->regmap, BD70528_REG_WAKE_EN, in bd70528_set_wake()
98 * Is the timeout registers counting down, or is the disable - re-enable in bd70528_set_elapsed_tmr()
99 * going to restart the elapsed-time counting? If counting is restarted in bd70528_set_elapsed_tmr()
107 ret = regmap_read(bd70528->regmap, BD70528_REG_ELAPSED_TIMER_EN, in bd70528_set_elapsed_tmr()
127 return regmap_write(bd70528->regmap, BD70528_REG_ELAPSED_TIMER_EN, in bd70528_set_elapsed_tmr()
136 ret = bd70528_wdt_set(r->parent, new_state & BD70528_WDT_STATE_BIT, in bd70528_set_rtc_based_timers()
[all …]
/kernel/linux/linux-5.10/drivers/gpio/
Dgpio-brcmstb.c2 * Copyright (C) 2015-2017 Broadcom
4 * This program is free software; you can redistribute it and/or
71 #define GPIO_BIT(gpio) ((gpio) & (MAX_GPIO_PER_BANK - 1))
77 return bank->parent_priv; in brcmstb_gpio_gc_to_priv()
83 void __iomem *reg_base = bank->parent_priv->reg_base; in __brcmstb_gpio_get_active_irqs()
85 return bank->gc.read_reg(reg_base + GIO_STAT(bank->id)) & in __brcmstb_gpio_get_active_irqs()
86 bank->gc.read_reg(reg_base + GIO_MASK(bank->id)); in __brcmstb_gpio_get_active_irqs()
95 spin_lock_irqsave(&bank->gc.bgpio_lock, flags); in brcmstb_gpio_get_active_irqs()
97 spin_unlock_irqrestore(&bank->gc.bgpio_lock, flags); in brcmstb_gpio_get_active_irqs()
105 return hwirq - (bank->gc.base - bank->parent_priv->gpio_base); in brcmstb_gpio_hwirq_to_offset()
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/input/
Datmel,maxtouch.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Nick Dyer <nick@shmanahar.org>
11 - Linus Walleij <linus.walleij@linaro.org>
18 - $ref: input.yaml#
30 vdda-supply:
34 vdd-supply:
38 reset-gpios:
45 wake-gpios:
[all …]
/kernel/linux/linux-5.10/drivers/char/tpm/
Dtpm_tis_spi_cr50.c1 // SPDX-License-Identifier: GPL-2.0
23 * - can go to sleep not earlier than after CR50_SLEEP_DELAY_MSEC.
24 * - needs up to CR50_WAKE_START_DELAY_USEC to wake after sleep.
25 * - requires waiting for "ready" IRQ, if supported; or waiting for at least
26 * CR50_NOIRQ_ACCESS_DELAY_MSEC between transactions, if IRQ is not supported.
27 * - waits for up to CR50_FLOW_CONTROL for flow control 'ready' indication.
66 cr50_phy->irq_confirmed = true; in cr50_spi_irq_handler()
67 complete(&cr50_phy->spi_phy.ready); in cr50_spi_irq_handler()
78 unsigned long allowed_access = phy->last_access + phy->access_delay; in cr50_ensure_access_delay()
80 struct device *dev = &phy->spi_phy.spi_device->dev; in cr50_ensure_access_delay()
[all …]
/kernel/linux/linux-5.10/drivers/net/ethernet/apple/
Dmace.c1 // SPDX-License-Identifier: GPL-2.0-only
30 static int port_aaui = -1;
86 static irqreturn_t mace_interrupt(int irq, void *dev_id);
87 static irqreturn_t mace_txdma_intr(int irq, void *dev_id);
88 static irqreturn_t mace_rxdma_intr(int irq, void *dev_id);
96 * If we can't get a skbuff when we need it, we use this area for DMA.
115 int j, rev, rc = -EBUSY; in mace_probe()
118 printk(KERN_ERR "can't use MACE %pOF: need 3 addrs and 3 irqs\n", in mace_probe()
120 return -ENODEV; in mace_probe()
123 addr = of_get_property(mace, "mac-address", NULL); in mace_probe()
[all …]
/kernel/linux/linux-6.6/drivers/net/ethernet/apple/
Dmace.c1 // SPDX-License-Identifier: GPL-2.0-only
29 static int port_aaui = -1;
85 static irqreturn_t mace_interrupt(int irq, void *dev_id);
86 static irqreturn_t mace_txdma_intr(int irq, void *dev_id);
87 static irqreturn_t mace_rxdma_intr(int irq, void *dev_id);
95 * If we can't get a skbuff when we need it, we use this area for DMA.
115 int j, rev, rc = -EBUSY; in mace_probe()
118 printk(KERN_ERR "can't use MACE %pOF: need 3 addrs and 3 irqs\n", in mace_probe()
120 return -ENODEV; in mace_probe()
123 addr = of_get_property(mace, "mac-address", NULL); in mace_probe()
[all …]

12345678910>>...41