#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/init.h>
#include <linux/kobject.h>
#include <linux/atmdev.h>
#include "common.h"
#include "resources.h"
#define to_atm_dev(cldev) …
static ssize_t type_show(struct device *cdev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t address_show(struct device *cdev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t atmaddress_show(struct device *cdev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t atmindex_show(struct device *cdev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t carrier_show(struct device *cdev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t link_rate_show(struct device *cdev,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(address);
static DEVICE_ATTR_RO(atmaddress);
static DEVICE_ATTR_RO(atmindex);
static DEVICE_ATTR_RO(carrier);
static DEVICE_ATTR_RO(type);
static DEVICE_ATTR_RO(link_rate);
static struct device_attribute *atm_attrs[] = …;
static int atm_uevent(const struct device *cdev, struct kobj_uevent_env *env)
{ … }
static void atm_release(struct device *cdev)
{ … }
static struct class atm_class = …;
int atm_register_sysfs(struct atm_dev *adev, struct device *parent)
{ … }
void atm_unregister_sysfs(struct atm_dev *adev)
{ … }
int __init atm_sysfs_init(void)
{ … }
void __exit atm_sysfs_exit(void)
{ … }