1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* net/atm/resources.h - ATM-related resources */
3
4 /* Written 1995-1998 by Werner Almesberger, EPFL LRC/ICA */
5
6
7 #ifndef NET_ATM_RESOURCES_H
8 #define NET_ATM_RESOURCES_H
9
10 #include <linux/atmdev.h>
11 #include <linux/mutex.h>
12
13
14 extern struct list_head atm_devs;
15 extern struct mutex atm_dev_mutex;
16
17 int atm_getnames(void __user *buf, int __user *iobuf_len);
18 int atm_dev_ioctl(unsigned int cmd, void __user *buf, int __user *sioc_len,
19 int number, int compat);
20
21 #ifdef CONFIG_PROC_FS
22
23 #include <linux/proc_fs.h>
24
25 void *atm_dev_seq_start(struct seq_file *seq, loff_t *pos);
26 void atm_dev_seq_stop(struct seq_file *seq, void *v);
27 void *atm_dev_seq_next(struct seq_file *seq, void *v, loff_t *pos);
28
29
30 int atm_proc_dev_register(struct atm_dev *dev);
31 void atm_proc_dev_deregister(struct atm_dev *dev);
32
33 #else
34
atm_proc_dev_register(struct atm_dev * dev)35 static inline int atm_proc_dev_register(struct atm_dev *dev)
36 {
37 return 0;
38 }
39
atm_proc_dev_deregister(struct atm_dev * dev)40 static inline void atm_proc_dev_deregister(struct atm_dev *dev)
41 {
42 /* nothing */
43 }
44
45 #endif /* CONFIG_PROC_FS */
46
47 int atm_register_sysfs(struct atm_dev *adev, struct device *parent);
48 void atm_unregister_sysfs(struct atm_dev *adev);
49 #endif
50