2005-10-13 20:54:41 +04:00
/* initialisation functions */
extern int devices_init ( void ) ;
extern int buses_init ( void ) ;
extern int classes_init ( void ) ;
extern int firmware_init ( void ) ;
2006-05-09 14:53:49 +04:00
# ifdef CONFIG_SYS_HYPERVISOR
extern int hypervisor_init ( void ) ;
# else
static inline int hypervisor_init ( void ) { return 0 ; }
# endif
2005-10-13 20:54:41 +04:00
extern int platform_bus_init ( void ) ;
extern int system_bus_init ( void ) ;
extern int cpu_dev_init ( void ) ;
extern int attribute_container_init ( void ) ;
2005-04-17 02:20:36 +04:00
extern int bus_add_device ( struct device * dev ) ;
2007-02-06 03:15:26 +03:00
extern void bus_attach_device ( struct device * dev ) ;
2005-04-17 02:20:36 +04:00
extern void bus_remove_device ( struct device * dev ) ;
extern int bus_add_driver ( struct device_driver * ) ;
extern void bus_remove_driver ( struct device_driver * ) ;
2005-03-21 21:52:54 +03:00
extern void driver_detach ( struct device_driver * drv ) ;
2005-06-23 03:09:05 +04:00
extern int driver_probe_device ( struct device_driver * , struct device * ) ;
2005-03-21 21:52:54 +03:00
2006-01-19 19:30:17 +03:00
extern void sysdev_shutdown ( void ) ;
extern int sysdev_suspend ( pm_message_t state ) ;
extern int sysdev_resume ( void ) ;
2005-04-17 02:20:36 +04:00
static inline struct class_device * to_class_dev ( struct kobject * obj )
{
return container_of ( obj , struct class_device , kobj ) ;
}
static inline
struct class_device_attribute * to_class_dev_attr ( struct attribute * _attr )
{
return container_of ( _attr , struct class_device_attribute , attr ) ;
}
2006-06-21 00:59:20 +04:00
extern char * make_class_name ( const char * name , struct kobject * kobj ) ;
2005-04-17 02:20:36 +04:00
2007-06-18 03:42:54 +04:00
extern int devres_release_all ( struct device * dev ) ;
2007-04-14 00:15:19 +04:00
extern struct kset devices_subsys ;