18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* net/atm/resources.h - ATM-related resources */ 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ci/* Written 1995-1998 by Werner Almesberger, EPFL LRC/ICA */ 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#ifndef NET_ATM_RESOURCES_H 88c2ecf20Sopenharmony_ci#define NET_ATM_RESOURCES_H 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#include <linux/atmdev.h> 118c2ecf20Sopenharmony_ci#include <linux/mutex.h> 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ciextern struct list_head atm_devs; 158c2ecf20Sopenharmony_ciextern struct mutex atm_dev_mutex; 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ciint atm_getnames(void __user *buf, int __user *iobuf_len); 188c2ecf20Sopenharmony_ciint atm_dev_ioctl(unsigned int cmd, void __user *buf, int __user *sioc_len, 198c2ecf20Sopenharmony_ci int number, int compat); 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci#ifdef CONFIG_PROC_FS 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci#include <linux/proc_fs.h> 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_civoid *atm_dev_seq_start(struct seq_file *seq, loff_t *pos); 268c2ecf20Sopenharmony_civoid atm_dev_seq_stop(struct seq_file *seq, void *v); 278c2ecf20Sopenharmony_civoid *atm_dev_seq_next(struct seq_file *seq, void *v, loff_t *pos); 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ciint atm_proc_dev_register(struct atm_dev *dev); 318c2ecf20Sopenharmony_civoid atm_proc_dev_deregister(struct atm_dev *dev); 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci#else 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_cistatic inline int atm_proc_dev_register(struct atm_dev *dev) 368c2ecf20Sopenharmony_ci{ 378c2ecf20Sopenharmony_ci return 0; 388c2ecf20Sopenharmony_ci} 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_cistatic inline void atm_proc_dev_deregister(struct atm_dev *dev) 418c2ecf20Sopenharmony_ci{ 428c2ecf20Sopenharmony_ci /* nothing */ 438c2ecf20Sopenharmony_ci} 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci#endif /* CONFIG_PROC_FS */ 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ciint atm_register_sysfs(struct atm_dev *adev, struct device *parent); 488c2ecf20Sopenharmony_civoid atm_unregister_sysfs(struct atm_dev *adev); 498c2ecf20Sopenharmony_ci#endif 50