Blame view

drivers/acpi/internal.h 2.81 KB
a192a9580   Len Brown   ACPI: Move defini...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  /*
   * acpi/internal.h
   * For use by Linux/ACPI infrastructure, not drivers
   *
   * Copyright (c) 2009, Intel Corporation.
   *
   * This program is free software; you can redistribute it and/or modify it
   * under the terms and conditions of the GNU General Public License,
   * version 2, as published by the Free Software Foundation.
   *
   * This program is distributed in the hope it will be useful, but WITHOUT
   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
   * more details.
   *
   * You should have received a copy of the GNU General Public License along with
   * this program; if not, write to the Free Software Foundation, Inc.,
   * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
   */
1195a0981   Thomas Renninger   ACPI: Provide /sy...
20
21
22
23
  #ifndef _ACPI_INTERNAL_H_
  #define _ACPI_INTERNAL_H_
  
  #include <linux/sysdev.h>
a192a9580   Len Brown   ACPI: Move defini...
24
  #define PREFIX "ACPI: "
e60cc7a6f   Bjorn Helgaas   ACPI: move privat...
25

0e46517d9   Bjorn Helgaas   ACPI: call init_a...
26
  int init_acpi_device_notify(void);
e747f2749   Bjorn Helgaas   ACPI: call acpi_s...
27
  int acpi_scan_init(void);
1c8fce27e   Zhang Rui   ACPI: introduce d...
28
  int acpi_sysfs_init(void);
e747f2749   Bjorn Helgaas   ACPI: call acpi_s...
29

a25ee9200   Zhang Rui   ACPI: introduce d...
30
31
32
33
34
  #ifdef CONFIG_DEBUG_FS
  int acpi_debugfs_init(void);
  #else
  static inline int acpi_debugfs_init(void) { return 0; }
  #endif
e60cc7a6f   Bjorn Helgaas   ACPI: move privat...
35
36
37
  /* --------------------------------------------------------------------------
                                    Power Resource
     -------------------------------------------------------------------------- */
44515374c   Bjorn Helgaas   ACPI: call acpi_p...
38
  int acpi_power_init(void);
e60cc7a6f   Bjorn Helgaas   ACPI: move privat...
39
40
  int acpi_device_sleep_wake(struct acpi_device *dev,
                             int enable, int sleep_state, int dev_state);
e60cc7a6f   Bjorn Helgaas   ACPI: move privat...
41
42
43
  int acpi_power_get_inferred_state(struct acpi_device *device);
  int acpi_power_transition(struct acpi_device *device, int state);
  extern int acpi_power_nocheck;
201b8c655   Bjorn Helgaas   ACPI: call acpi_w...
44
  int acpi_wakeup_device_init(void);
78f169965   Alex Chiang   ACPI: processor: ...
45
  void acpi_early_processor_set_pdc(void);
201b8c655   Bjorn Helgaas   ACPI: call acpi_w...
46

e60cc7a6f   Bjorn Helgaas   ACPI: move privat...
47
48
49
  /* --------------------------------------------------------------------------
                                    Embedded Controller
     -------------------------------------------------------------------------- */
1195a0981   Thomas Renninger   ACPI: Provide /sy...
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
  struct acpi_ec {
  	acpi_handle handle;
  	unsigned long gpe;
  	unsigned long command_addr;
  	unsigned long data_addr;
  	unsigned long global_lock;
  	unsigned long flags;
  	struct mutex lock;
  	wait_queue_head_t wait;
  	struct list_head list;
  	struct transaction *curr;
  	spinlock_t curr_lock;
  	struct sys_device sysdev;
  };
  
  extern struct acpi_ec *first_ec;
a5f820feb   Bjorn Helgaas   ACPI: call acpi_e...
66
  int acpi_ec_init(void);
e60cc7a6f   Bjorn Helgaas   ACPI: move privat...
67
68
  int acpi_ec_ecdt_probe(void);
  int acpi_boot_ec_enable(void);
fe955682d   Rafael J. Wysocki   ACPI / EC / PM: F...
69
70
71
  void acpi_ec_block_transactions(void);
  void acpi_ec_unblock_transactions(void);
  void acpi_ec_unblock_transactions_early(void);
e60cc7a6f   Bjorn Helgaas   ACPI: move privat...
72
73
74
75
76
  
  /*--------------------------------------------------------------------------
                                    Suspend/Resume
    -------------------------------------------------------------------------- */
  extern int acpi_sleep_init(void);
9cee43e07   Bjorn Helgaas   ACPI: call acpi_s...
77
78
79
80
81
82
  
  #ifdef CONFIG_ACPI_SLEEP
  int acpi_sleep_proc_init(void);
  #else
  static inline int acpi_sleep_proc_init(void) { return 0; }
  #endif
1195a0981   Thomas Renninger   ACPI: Provide /sy...
83
84
  
  #endif /* _ACPI_INTERNAL_H_ */