xref: /haiku/headers/private/kernel/fs/devfs.h (revision d2e1e872611179c9cfaa43ce11bd58b1e3554e4b)
1 /*
2  * Copyright 2002-2008, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
3  * Distributed under the terms of the MIT License.
4  *
5  * Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
6  * Distributed under the terms of the NewOS License.
7  */
8 #ifndef _DEVFS_H
9 #define _DEVFS_H
10 
11 
12 #include <Drivers.h>
13 
14 struct kernel_args;
15 
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 void devfs_add_preloaded_drivers(struct kernel_args* args);
22 
23 status_t devfs_add_driver(const char *path);
24 
25 void devfs_driver_added(const char *path);
26 void devfs_driver_removed(const char *path);
27 
28 status_t devfs_unpublish_file_device(const char *path);
29 status_t devfs_publish_file_device(const char *path, const char *filePath);
30 
31 status_t devfs_unpublish_partition(const char *path);
32 status_t devfs_publish_partition(const char *path, const partition_info *info);
33 
34 status_t devfs_unpublish_device(const char *path, bool disconnect);
35 status_t devfs_publish_device(const char *path, device_hooks *calls);
36 status_t devfs_publish_directory(const char *path);
37 status_t devfs_rescan_driver(const char *driverName);
38 
39 #ifdef __cplusplus
40 }
41 #endif
42 
43 #endif /* _DEVFS_H */
44