linux/drivers/usb/atm/usbatm.h

/* SPDX-License-Identifier: GPL-2.0+ */
/******************************************************************************
 *  usbatm.h - Generic USB xDSL driver core
 *
 *  Copyright (C) 2001, Alcatel
 *  Copyright (C) 2003, Duncan Sands, SolNegro, Josep Comas
 *  Copyright (C) 2004, David Woodhouse
 ******************************************************************************/

#ifndef	_USBATM_H_
#define _USBATM_H_

#include <linux/atm.h>
#include <linux/atmdev.h>
#include <linux/completion.h>
#include <linux/device.h>
#include <linux/kernel.h>
#include <linux/kref.h>
#include <linux/list.h>
#include <linux/stringify.h>
#include <linux/usb.h>
#include <linux/mutex.h>
#include <linux/ratelimit.h>

/*
#define VERBOSE_DEBUG
*/

#define usb_err(instance, format, arg...)
#define usb_info(instance, format, arg...)
#define usb_warn(instance, format, arg...)
#define usb_dbg(instance, format, arg...)

/* FIXME: move to dev_* once ATM is driver model aware */
#define atm_printk(level, instance, format, arg...)

#define atm_err(instance, format, arg...)
#define atm_info(instance, format, arg...)
#define atm_warn(instance, format, arg...)
#define atm_dbg(instance, format, ...)
#define atm_rldbg(instance, format, ...)

/* flags, set by mini-driver in bind() */

#define UDSL_SKIP_HEAVY_INIT
#define UDSL_USE_ISOC
#define UDSL_IGNORE_EILSEQ


/* mini driver */

struct usbatm_data;

/*
*  Assuming all methods exist and succeed, they are called in this order:
*
*	bind, heavy_init, atm_start, ..., atm_stop, unbind
*/

struct usbatm_driver {};

extern int usbatm_usb_probe(struct usb_interface *intf, const struct usb_device_id *id,
		struct usbatm_driver *driver);
extern void usbatm_usb_disconnect(struct usb_interface *intf);


struct usbatm_channel {};

/* main driver data */

struct usbatm_data {};

static inline void *to_usbatm_driver_data(struct usb_interface *intf)
{}

#endif	/* _USBATM_H_ */