#include <linux/module.h>
#include <linux/jiffies.h>
#include <linux/kernel.h>
#include <linux/mm.h>
#include <linux/errno.h>
#include <linux/atmdev.h>
#include <linux/sonet.h>
#include <linux/delay.h>
#include <linux/timer.h>
#include <linux/init.h>
#include <linux/capability.h>
#include <linux/slab.h>
#include <asm/param.h>
#include <linux/uaccess.h>
#include <linux/atomic.h>
#include "suni.h"
#if 0
#define DPRINTK …
#else
#define DPRINTK(format,args...) …
#endif
#define PRIV(dev) …
#define PUT(val,reg) …
#define GET(reg) …
#define REG_CHANGE(mask,shift,value,reg) …
static struct timer_list poll_timer;
static struct suni_priv *sunis = …;
static DEFINE_SPINLOCK(sunis_lock);
#define ADD_LIMITED …
static void suni_hz(struct timer_list *timer)
{ … }
#undef ADD_LIMITED
static int fetch_stats(struct atm_dev *dev,struct sonet_stats __user *arg,int zero)
{ … }
#define HANDLE_FLAG …
static int change_diag(struct atm_dev *dev,void __user *arg,int set)
{ … }
#undef HANDLE_FLAG
static int get_diag(struct atm_dev *dev,void __user *arg)
{ … }
static int set_loopback(struct atm_dev *dev,int mode)
{ … }
static int set_sonet(struct atm_dev *dev)
{ … }
static int set_sdh(struct atm_dev *dev)
{ … }
static int get_framing(struct atm_dev *dev, void __user *arg)
{ … }
static int set_framing(struct atm_dev *dev, void __user *arg)
{ … }
static int suni_ioctl(struct atm_dev *dev,unsigned int cmd,void __user *arg)
{ … }
static void poll_los(struct atm_dev *dev)
{ … }
static void suni_int(struct atm_dev *dev)
{ … }
static int suni_start(struct atm_dev *dev)
{ … }
static int suni_stop(struct atm_dev *dev)
{ … }
static const struct atmphy_ops suni_ops = …;
int suni_init(struct atm_dev *dev)
{ … }
EXPORT_SYMBOL(…);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;