]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - include/acpi/acpi_bus.h
[ACPI] merge acpi-2.6.12 branch into latest Linux 2.6.13-rc...
[karo-tx-linux.git] / include / acpi / acpi_bus.h
index 9ad142476f3301eeb9961acf5e0dece7c8deddc5..8d0e1290bc7626eef77e6cf264687c1b3559cfe5 100644 (file)
@@ -351,6 +351,27 @@ int acpi_match_ids (struct acpi_device     *device, char   *ids);
 int acpi_create_dir(struct acpi_device *);
 void acpi_remove_dir(struct acpi_device *);
 
+
+/*
+ * Bind physical devices with ACPI devices
+ */
+#include <linux/device.h>
+struct acpi_bus_type {
+       struct list_head        list;
+       struct bus_type         *bus;
+       /* For general devices under the bus*/
+       int (*find_device)(struct device *, acpi_handle*);
+       /* For bridges, such as PCI root bridge, IDE controller */
+       int (*find_bridge)(struct device *, acpi_handle *);
+};
+int register_acpi_bus_type(struct acpi_bus_type *);
+int unregister_acpi_bus_type(struct acpi_bus_type *);
+struct device *acpi_get_physical_device(acpi_handle);
+/* helper */
+acpi_handle acpi_get_child(acpi_handle, acpi_integer);
+acpi_handle acpi_get_pci_rootbridge_handle(unsigned int, unsigned int);
+#define DEVICE_ACPI_HANDLE(dev) ((acpi_handle)((dev)->firmware_data))
+
 #endif /*CONFIG_ACPI_BUS*/
 
 #endif /*__ACPI_BUS_H__*/