#include <linux/blkdev.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <scsi/scsi_cmnd.h>
#include <scsi/scsi_device.h>
#include <scsi/scsi_host.h>
#include <scsi/scsi_eh.h>
#include <scsi/scsi_dbg.h>
#define THIRD_PARTY_COPY_OUT 0x83
#define THIRD_PARTY_COPY_IN 0x84
const struct value_name_pair *arr;
static const char * cdb_byte0_names[] = {
"Test Unit Ready", "Rezero Unit/Rewind", NULL, "Request Sense",
"Format Unit/Medium", "Read Block Limits", NULL,
"Read(6)", NULL, "Write(6)", "Seek(6)", NULL, NULL,
NULL, "Read Reverse", "Write Filemarks", "Space", "Inquiry",
"Verify(6)", "Recover Buffered Data", "Mode Select(6)",
"Release(6)", "Copy", "Erase", "Mode Sense(6)",
"Start/Stop Unit", "Receive Diagnostic", "Send Diagnostic",
"Prevent/Allow Medium Removal", NULL,
"Read Format Capacities", "Set Window",
"Read Capacity(10)", NULL, NULL, "Read(10)",
"Read Generation", "Write(10)", "Seek(10)", "Erase(10)",
"Write Verify(10)", "Verify(10)", "Search High", "Search Equal",
"Search Low", "Set Limits", "Prefetch/Read Position",
"Synchronize Cache(10)", "Lock/Unlock Cache(10)",
"Medium Scan", "Compare", "Copy Verify", "Write Buffer",
"Update Block", "Read Long(10)", "Write Long(10)",
"Change Definition", "Write Same(10)",
"Unmap/Read sub-channel", "Read TOC/PMA/ATIP",
"Read density support", "Play audio(10)", "Get configuration",
"Play audio msf", "Sanitize/Play audio track/index",
"Play track relative(10)", "Get event status notification",
"Pause/resume", "Log Select", "Log Sense", "Stop play/scan",
"Xdwrite", "Xpwrite, Read disk info", "Xdread, Read track info",
"Reserve track", "Send OPC info", "Mode Select(10)",
"Reserve(10)", "Release(10)", "Repair track", "Read master cue",
"Mode Sense(10)", "Close track/session",
"Read buffer capacity", "Send cue sheet", "Persistent reserve in",
"Persistent reserve out",
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, "Extended CDB",
"Xdwrite(16)", "Rebuild(16)", "Regenerate(16)",
"Third party copy out", "Third party copy in",
"ATA command pass through(16)", "Access control in",
"Access control out", "Read(16)", "Compare and Write",
"Write(16)", "ORWrite", "Read attributes", "Write attributes",
"Write and verify(16)", "Verify(16)",
"Pre-fetch(16)", "Synchronize cache(16)",
"Lock/unlock cache(16)", "Write same(16)", NULL,
NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, "Service action bidirectional",
"Service action in(16)", "Service action out(16)",
"Report luns", "ATA command pass through(12)/Blank",
"Security protocol in", "Maintenance in", "Maintenance out",
"Move medium/play audio(12)",
"Exchange medium", "Move medium attached", "Read(12)",