~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/power/wakeup-source.txt

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 Specifying wakeup capability for devices
  2 ============================================
  3 
  4 Any device nodes
  5 ----------------
  6 Nodes that describe devices which have wakeup capability may contain a
  7 "wakeup-source" boolean property.
  8 
  9 If the device is marked as a wakeup-source, interrupt wake capability depends
 10 on the device specific "interrupt-names" property. If no interrupts are labeled
 11 as wake capable, then it is up to the device to determine which interrupts can
 12 wake the system.
 13 
 14 However if a device has a dedicated interrupt as the wakeup source, then it
 15 needs to specify/identify it using a device specific interrupt name. In such
 16 cases only that interrupt can be used as a wakeup interrupt.
 17 
 18 While various legacy interrupt names exist, new devices should use "wakeup" as
 19 the canonical interrupt name.
 20 
 21 List of legacy properties and respective binding document
 22 ---------------------------------------------------------
 23 
 24 1. "gpio-key,wakeup"            Documentation/devicetree/bindings/input/gpio-keys{,-polled}.txt
 25 2. "has-tpo"                    Documentation/devicetree/bindings/rtc/rtc-opal.txt
 26 3. "linux,wakeup"               Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt
 27                                 Documentation/devicetree/bindings/mfd/tc3589x.txt
 28                                 Documentation/devicetree/bindings/input/touchscreen/ti,ads7843.yaml
 29 4. "linux,keypad-wakeup"        Documentation/devicetree/bindings/input/qcom,pm8921-keypad.yaml
 30 5. "linux,input-wakeup"         Documentation/devicetree/bindings/input/samsung,s3c6410-keypad.yaml
 31 6. "nvidia,wakeup-source"       Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt
 32 
 33 Examples
 34 --------
 35 
 36 1. With "wakeup" interrupt name
 37 
 38         device@10000 {
 39                 compatible      = "vendor,device-id";
 40                 reg             = <0x10000 0x1000>;
 41                 interrupts      = <0 19 4>, <0 21 4>, <0 22 4>;
 42                 interrupt-names = "ack", "err", "wakeup";
 43                 wakeup-source;
 44         };
 45 
 46 2. Without "wakeup" interrupt name
 47 
 48         embedded-controller {
 49                 compatible = "google,cros-ec-i2c";
 50                 reg = <0x1e>;
 51                 interrupts = <6 0>;
 52                 interrupt-parent = <&gpx1>;
 53                 pinctrl-names = "default";
 54                 pinctrl-0 = <&ec_irq>;
 55                 wakeup-source;
 56         };
 57 
 58 3. Without interrupts
 59 
 60         gpio_keys {
 61                 compatible = "gpio-keys";
 62                 #address-cells = <1>;
 63                 #size-cells = <0>;
 64 
 65                 button@1 {
 66                         debounce-interval = <50>;
 67                         wakeup-source;
 68                         linux,code = <116>;
 69                         label = "POWER";
 70                         gpios = <&iofpga_gpio0 0 0x4>;
 71                 };
 72                 [....]
 73         };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php