162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci/* net/atm/resources.h - ATM-related resources */ 362306a36Sopenharmony_ci 462306a36Sopenharmony_ci/* Written 1995-1998 by Werner Almesberger, EPFL LRC/ICA */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#ifndef NET_ATM_RESOURCES_H 862306a36Sopenharmony_ci#define NET_ATM_RESOURCES_H 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include <linux/atmdev.h> 1162306a36Sopenharmony_ci#include <linux/mutex.h> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ciextern struct list_head atm_devs; 1562306a36Sopenharmony_ciextern struct mutex atm_dev_mutex; 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciint atm_getnames(void __user *buf, int __user *iobuf_len); 1862306a36Sopenharmony_ciint atm_dev_ioctl(unsigned int cmd, void __user *buf, int __user *sioc_len, 1962306a36Sopenharmony_ci int number, int compat); 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci#ifdef CONFIG_PROC_FS 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci#include <linux/proc_fs.h> 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_civoid *atm_dev_seq_start(struct seq_file *seq, loff_t *pos); 2662306a36Sopenharmony_civoid atm_dev_seq_stop(struct seq_file *seq, void *v); 2762306a36Sopenharmony_civoid *atm_dev_seq_next(struct seq_file *seq, void *v, loff_t *pos); 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ciint atm_proc_dev_register(struct atm_dev *dev); 3162306a36Sopenharmony_civoid atm_proc_dev_deregister(struct atm_dev *dev); 3262306a36Sopenharmony_ci 3362306a36Sopenharmony_ci#else 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_cistatic inline int atm_proc_dev_register(struct atm_dev *dev) 3662306a36Sopenharmony_ci{ 3762306a36Sopenharmony_ci return 0; 3862306a36Sopenharmony_ci} 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_cistatic inline void atm_proc_dev_deregister(struct atm_dev *dev) 4162306a36Sopenharmony_ci{ 4262306a36Sopenharmony_ci /* nothing */ 4362306a36Sopenharmony_ci} 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci#endif /* CONFIG_PROC_FS */ 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ciint atm_register_sysfs(struct atm_dev *adev, struct device *parent); 4862306a36Sopenharmony_civoid atm_unregister_sysfs(struct atm_dev *adev); 4962306a36Sopenharmony_ci#endif 50