#include <linux/jiffies.h>
#include <linux/errno.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <scsi/scsi.h>
#include <scsi/scsi_cmnd.h>
#include "usb.h"
#include "transport.h"
#include "protocol.h"
#include "debug.h"
#include "scsiglue.h"
#define DRV_NAME …
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;
MODULE_IMPORT_NS(…);
#define UNUSUAL_DEV …
static struct usb_device_id sddr55_usb_ids[] = …;
MODULE_DEVICE_TABLE(usb, sddr55_usb_ids);
#undef UNUSUAL_DEV
#define UNUSUAL_DEV …
static struct us_unusual_dev sddr55_unusual_dev_list[] = …;
#undef UNUSUAL_DEV
#define short_pack(lsb,msb) …
#define LSB_of(s) …
#define MSB_of(s) …
#define PAGESIZE …
#define set_sense_info(sk, asc, ascq) …
struct sddr55_card_info { … };
#define NOT_ALLOCATED …
#define BAD_BLOCK …
#define CIS_BLOCK …
#define UNUSED_BLOCK …
static int
sddr55_bulk_transport(struct us_data *us, int direction,
unsigned char *data, unsigned int len) { … }
static int sddr55_status(struct us_data *us)
{ … }
static int sddr55_read_data(struct us_data *us,
unsigned int lba,
unsigned int page,
unsigned short sectors) { … }
static int sddr55_write_data(struct us_data *us,
unsigned int lba,
unsigned int page,
unsigned short sectors) { … }
static int sddr55_read_deviceID(struct us_data *us,
unsigned char *manufacturerID,
unsigned char *deviceID) { … }
static int sddr55_reset(struct us_data *us)
{ … }
static unsigned long sddr55_get_capacity(struct us_data *us) { … }
static int sddr55_read_map(struct us_data *us) { … }
static void sddr55_card_info_destructor(void *extra) { … }
static int sddr55_transport(struct scsi_cmnd *srb, struct us_data *us)
{ … }
static struct scsi_host_template sddr55_host_template;
static int sddr55_probe(struct usb_interface *intf,
const struct usb_device_id *id)
{ … }
static struct usb_driver sddr55_driver = …;
module_usb_stor_driver(sddr55_driver, sddr55_host_template, DRV_NAME);