xref: /titanic_44/usr/src/cmd/hal/hald/solaris/devinfo_acpi.h (revision ff3124eff995e6cd8ebd8c6543648e0670920034)
1 /***************************************************************************
2  *
3  * devinfo_acpi.h : definitions for acpi devices
4  *
5  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
6  * Use is subject to license terms.
7  *
8  * Licensed under the Academic Free License version 2.1
9  *
10  **************************************************************************/
11 
12 #pragma ident	"%Z%%M%	%I%	%E% SMI"
13 
14 #ifndef DEVINFO_ACPI_H
15 #define	DEVINFO_ACPI_H
16 
17 #include "devinfo.h"
18 
19 extern DevinfoDevHandler devinfo_acpi_handler;
20 extern DevinfoDevHandler devinfo_power_button_handler;
21 
22 #define	MINOR_SHIFT			8
23 #define	MINOR2TYPE(minor)		((minor) >> MINOR_SHIFT)
24 
25 /* Battery device types */
26 enum batt_type {
27 	BATT_TYPE_UNKNOWN = -1,
28 	BATT_TYPE_CBAT,
29 	BATT_TYPE_AC,
30 	BATT_TYPE_SBAT
31 };
32 
33 HalDevice *devinfo_battery_add_major(HalDevice *parent, di_node_t node,
34     char *devfs_path, char *device_type, gboolean rescan, HalDevice *battery_d);
35 void devinfo_acpi_add_minor(HalDevice *parent, di_node_t node,
36     char *minor_path, dev_t dev);
37 void devinfo_battery_remove_minor(char *parent_devfs_path, gchar *udi);
38 void devinfo_battery_device_rescan(char *parent_devfs_path, gchar *udi);
39 const gchar *devinfo_acpi_get_prober(HalDevice *d, int *timeout);
40 void devinfo_power_button_rescan(void);
41 void devinfo_brightness_hotkeys_rescan(char *subclass);
42 
43 void devinfo_lid_device_rescan(char *subclass, gchar *udi);
44 
45 #endif /* DEVINFO_ACPI_H */
46