linux/include/linux/usb/usb338x.h

// SPDX-License-Identifier: GPL-2.0+
/*
 * USB 338x super/high/full speed USB device controller.
 * Unlike many such controllers, this one talks PCI.
 *
 * Copyright (C) 2002 NetChip Technology, Inc. (http://www.netchip.com)
 * Copyright (C) 2003 David Brownell
 * Copyright (C) 2014 Ricardo Ribalda - Qtechnology/AS
 */

#ifndef __LINUX_USB_USB338X_H
#define __LINUX_USB_USB338X_H

#include <linux/usb/net2280.h>

/*
 * Extra defined bits for net2280 registers
 */
#define SCRATCH

#define DEFECT7374_FSM_FIELD
#define SUPER_SPEED
#define DMA_REQUEST_OUTSTANDING
#define DMA_PAUSE_DONE_INTERRUPT
#define SET_ISOCHRONOUS_DELAY
#define SET_SEL
#define SUPER_SPEED_MODE

/*ep_cfg*/
#define MAX_BURST_SIZE
#define EP_FIFO_BYTE_COUNT
#define IN_ENDPOINT_ENABLE
#define IN_ENDPOINT_TYPE
#define OUT_ENDPOINT_ENABLE
#define OUT_ENDPOINT_TYPE
#define USB3380_EP_CFG_MASK_IN
#define USB3380_EP_CFG_MASK_OUT

struct usb338x_usb_ext_regs {} __packed;

struct usb338x_fifo_regs {} __packed;


/* Link layer */
struct usb338x_ll_regs {} __packed;

/* protocol layer */
struct usb338x_pl_regs {} __packed;

#endif /* __LINUX_USB_USB338X_H */