1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>Chapter&#160;6.&#160;libata SCSI translation/emulation</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="libATA Developer's Guide"><link rel="up" href="index.html" title="libATA Developer's Guide"><link rel="prev" href="API-ata-port-detach.html" title="ata_port_detach"><link rel="next" href="API-ata-std-bios-param.html" title="ata_std_bios_param"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&#160;6.&#160;libata SCSI translation/emulation</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-ata-port-detach.html">Prev</a>&#160;</td><th width="60%" align="center">&#160;</th><td width="20%" align="right">&#160;<a accesskey="n" href="API-ata-std-bios-param.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="libataScsiInt"></a>Chapter&#160;6.&#160;libata SCSI translation/emulation</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="refentrytitle"><a href="API-ata-std-bios-param.html"><span class="phrase">ata_std_bios_param</span></a></span><span class="refpurpose"> &#8212; 
2  generic bios head/sector/cylinder calculator used by sd.
3 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-unlock-native-capacity.html"><span class="phrase">ata_scsi_unlock_native_capacity</span></a></span><span class="refpurpose"> &#8212; 
4     unlock native capacity
5 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-slave-config.html"><span class="phrase">ata_scsi_slave_config</span></a></span><span class="refpurpose"> &#8212; 
6     Set SCSI device attributes
7 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-slave-destroy.html"><span class="phrase">ata_scsi_slave_destroy</span></a></span><span class="refpurpose"> &#8212; 
8     SCSI device is about to be destroyed
9 </span></dt><dt><span class="refentrytitle"><a href="API---ata-change-queue-depth.html"><span class="phrase">__ata_change_queue_depth</span></a></span><span class="refpurpose"> &#8212; 
10     helper for ata_scsi_change_queue_depth
11 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-change-queue-depth.html"><span class="phrase">ata_scsi_change_queue_depth</span></a></span><span class="refpurpose"> &#8212; 
12     SCSI callback for queue depth config
13 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-queuecmd.html"><span class="phrase">ata_scsi_queuecmd</span></a></span><span class="refpurpose"> &#8212; 
14     Issue SCSI cdb to libata-managed device
15 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-simulate.html"><span class="phrase">ata_scsi_simulate</span></a></span><span class="refpurpose"> &#8212; 
16     simulate SCSI command on ATA device
17 </span></dt><dt><span class="refentrytitle"><a href="API-ata-sas-port-alloc.html"><span class="phrase">ata_sas_port_alloc</span></a></span><span class="refpurpose"> &#8212; 
18     Allocate port for a SAS attached SATA device
19 </span></dt><dt><span class="refentrytitle"><a href="API-ata-sas-port-start.html"><span class="phrase">ata_sas_port_start</span></a></span><span class="refpurpose"> &#8212; 
20     Set port up for dma.
21 </span></dt><dt><span class="refentrytitle"><a href="API-ata-sas-port-stop.html"><span class="phrase">ata_sas_port_stop</span></a></span><span class="refpurpose"> &#8212; 
22     Undo <code class="function">ata_sas_port_start</code>
23 </span></dt><dt><span class="refentrytitle"><a href="API-ata-sas-async-probe.html"><span class="phrase">ata_sas_async_probe</span></a></span><span class="refpurpose"> &#8212; 
24     simply schedule probing and return
25 </span></dt><dt><span class="refentrytitle"><a href="API-ata-sas-port-init.html"><span class="phrase">ata_sas_port_init</span></a></span><span class="refpurpose"> &#8212; 
26     Initialize a SATA device
27 </span></dt><dt><span class="refentrytitle"><a href="API-ata-sas-port-destroy.html"><span class="phrase">ata_sas_port_destroy</span></a></span><span class="refpurpose"> &#8212; 
28     Destroy a SATA port allocated by ata_sas_port_alloc
29 </span></dt><dt><span class="refentrytitle"><a href="API-ata-sas-slave-configure.html"><span class="phrase">ata_sas_slave_configure</span></a></span><span class="refpurpose"> &#8212; 
30     Default slave_config routine for libata devices
31 </span></dt><dt><span class="refentrytitle"><a href="API-ata-sas-queuecmd.html"><span class="phrase">ata_sas_queuecmd</span></a></span><span class="refpurpose"> &#8212; 
32     Issue SCSI cdb to libata-managed device
33 </span></dt><dt><span class="refentrytitle"><a href="API-ata-get-identity.html"><span class="phrase">ata_get_identity</span></a></span><span class="refpurpose"> &#8212; 
34  Handler for HDIO_GET_IDENTITY ioctl
35 </span></dt><dt><span class="refentrytitle"><a href="API-ata-cmd-ioctl.html"><span class="phrase">ata_cmd_ioctl</span></a></span><span class="refpurpose"> &#8212; 
36     Handler for HDIO_DRIVE_CMD ioctl
37 </span></dt><dt><span class="refentrytitle"><a href="API-ata-task-ioctl.html"><span class="phrase">ata_task_ioctl</span></a></span><span class="refpurpose"> &#8212; 
38     Handler for HDIO_DRIVE_TASK ioctl
39 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-qc-new.html"><span class="phrase">ata_scsi_qc_new</span></a></span><span class="refpurpose"> &#8212; 
40     acquire new ata_queued_cmd reference
41 </span></dt><dt><span class="refentrytitle"><a href="API-ata-dump-status.html"><span class="phrase">ata_dump_status</span></a></span><span class="refpurpose"> &#8212; 
42     user friendly display of error info
43 </span></dt><dt><span class="refentrytitle"><a href="API-ata-to-sense-error.html"><span class="phrase">ata_to_sense_error</span></a></span><span class="refpurpose"> &#8212; 
44     convert ATA error to SCSI error
45 </span></dt><dt><span class="refentrytitle"><a href="API-ata-gen-ata-sense.html"><span class="phrase">ata_gen_ata_sense</span></a></span><span class="refpurpose"> &#8212; 
46     generate a SCSI fixed sense block
47 </span></dt><dt><span class="refentrytitle"><a href="API-atapi-drain-needed.html"><span class="phrase">atapi_drain_needed</span></a></span><span class="refpurpose"> &#8212; 
48     Check whether data transfer may overflow
49 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-start-stop-xlat.html"><span class="phrase">ata_scsi_start_stop_xlat</span></a></span><span class="refpurpose"> &#8212; 
50     Translate SCSI START STOP UNIT command
51 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-flush-xlat.html"><span class="phrase">ata_scsi_flush_xlat</span></a></span><span class="refpurpose"> &#8212; 
52     Translate SCSI SYNCHRONIZE CACHE command
53 </span></dt><dt><span class="refentrytitle"><a href="API-scsi-6-lba-len.html"><span class="phrase">scsi_6_lba_len</span></a></span><span class="refpurpose"> &#8212; 
54     Get LBA and transfer length
55 </span></dt><dt><span class="refentrytitle"><a href="API-scsi-10-lba-len.html"><span class="phrase">scsi_10_lba_len</span></a></span><span class="refpurpose"> &#8212; 
56     Get LBA and transfer length
57 </span></dt><dt><span class="refentrytitle"><a href="API-scsi-16-lba-len.html"><span class="phrase">scsi_16_lba_len</span></a></span><span class="refpurpose"> &#8212; 
58     Get LBA and transfer length
59 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-verify-xlat.html"><span class="phrase">ata_scsi_verify_xlat</span></a></span><span class="refpurpose"> &#8212; 
60     Translate SCSI VERIFY command into an ATA one
61 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-rw-xlat.html"><span class="phrase">ata_scsi_rw_xlat</span></a></span><span class="refpurpose"> &#8212; 
62     Translate SCSI r/w command into an ATA one
63 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-translate.html"><span class="phrase">ata_scsi_translate</span></a></span><span class="refpurpose"> &#8212; 
64     Translate then issue SCSI command to ATA device
65 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-rbuf-get.html"><span class="phrase">ata_scsi_rbuf_get</span></a></span><span class="refpurpose"> &#8212; 
66     Map response buffer.
67 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-rbuf-put.html"><span class="phrase">ata_scsi_rbuf_put</span></a></span><span class="refpurpose"> &#8212; 
68     Unmap response buffer.
69 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-rbuf-fill.html"><span class="phrase">ata_scsi_rbuf_fill</span></a></span><span class="refpurpose"> &#8212; 
70     wrapper for SCSI command simulators
71 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-inq-std.html"><span class="phrase">ata_scsiop_inq_std</span></a></span><span class="refpurpose"> &#8212; 
72     Simulate INQUIRY command
73 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-inq-00.html"><span class="phrase">ata_scsiop_inq_00</span></a></span><span class="refpurpose"> &#8212; 
74     Simulate INQUIRY VPD page 0, list of pages
75 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-inq-80.html"><span class="phrase">ata_scsiop_inq_80</span></a></span><span class="refpurpose"> &#8212; 
76     Simulate INQUIRY VPD page 80, device serial number
77 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-inq-83.html"><span class="phrase">ata_scsiop_inq_83</span></a></span><span class="refpurpose"> &#8212; 
78     Simulate INQUIRY VPD page 83, device identity
79 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-inq-89.html"><span class="phrase">ata_scsiop_inq_89</span></a></span><span class="refpurpose"> &#8212; 
80     Simulate INQUIRY VPD page 89, ATA info
81 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-noop.html"><span class="phrase">ata_scsiop_noop</span></a></span><span class="refpurpose"> &#8212; 
82     Command handler that simply returns success.
83 </span></dt><dt><span class="refentrytitle"><a href="API-modecpy.html"><span class="phrase">modecpy</span></a></span><span class="refpurpose"> &#8212; 
84     Prepare response for MODE SENSE
85 </span></dt><dt><span class="refentrytitle"><a href="API-ata-msense-caching.html"><span class="phrase">ata_msense_caching</span></a></span><span class="refpurpose"> &#8212; 
86     Simulate MODE SENSE caching info page
87 </span></dt><dt><span class="refentrytitle"><a href="API-ata-msense-ctl-mode.html"><span class="phrase">ata_msense_ctl_mode</span></a></span><span class="refpurpose"> &#8212; 
88     Simulate MODE SENSE control mode page
89 </span></dt><dt><span class="refentrytitle"><a href="API-ata-msense-rw-recovery.html"><span class="phrase">ata_msense_rw_recovery</span></a></span><span class="refpurpose"> &#8212; 
90     Simulate MODE SENSE r/w error recovery page
91 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-mode-sense.html"><span class="phrase">ata_scsiop_mode_sense</span></a></span><span class="refpurpose"> &#8212; 
92     Simulate MODE SENSE 6, 10 commands
93 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-read-cap.html"><span class="phrase">ata_scsiop_read_cap</span></a></span><span class="refpurpose"> &#8212; 
94     Simulate READ CAPACITY[ 16] commands
95 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsiop-report-luns.html"><span class="phrase">ata_scsiop_report_luns</span></a></span><span class="refpurpose"> &#8212; 
96     Simulate REPORT LUNS command
97 </span></dt><dt><span class="refentrytitle"><a href="API-atapi-xlat.html"><span class="phrase">atapi_xlat</span></a></span><span class="refpurpose"> &#8212; 
98     Initialize PACKET taskfile
99 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-find-dev.html"><span class="phrase">ata_scsi_find_dev</span></a></span><span class="refpurpose"> &#8212; 
100     lookup ata_device from scsi_cmnd
101 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-pass-thru.html"><span class="phrase">ata_scsi_pass_thru</span></a></span><span class="refpurpose"> &#8212; 
102     convert ATA pass-thru CDB to taskfile
103 </span></dt><dt><span class="refentrytitle"><a href="API-ata-mselect-caching.html"><span class="phrase">ata_mselect_caching</span></a></span><span class="refpurpose"> &#8212; 
104     Simulate MODE SELECT for caching info page
105 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-mode-select-xlat.html"><span class="phrase">ata_scsi_mode_select_xlat</span></a></span><span class="refpurpose"> &#8212; 
106     Simulate MODE SELECT 6, 10 commands
107 </span></dt><dt><span class="refentrytitle"><a href="API-ata-get-xlat-func.html"><span class="phrase">ata_get_xlat_func</span></a></span><span class="refpurpose"> &#8212; 
108     check if SCSI to ATA translation is possible
109 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-dump-cdb.html"><span class="phrase">ata_scsi_dump_cdb</span></a></span><span class="refpurpose"> &#8212; 
110     dump SCSI command contents to dmesg
111 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-offline-dev.html"><span class="phrase">ata_scsi_offline_dev</span></a></span><span class="refpurpose"> &#8212; 
112     offline attached SCSI device
113 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-remove-dev.html"><span class="phrase">ata_scsi_remove_dev</span></a></span><span class="refpurpose"> &#8212; 
114     remove attached SCSI device
115 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-media-change-notify.html"><span class="phrase">ata_scsi_media_change_notify</span></a></span><span class="refpurpose"> &#8212; 
116     send media change event
117 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-hotplug.html"><span class="phrase">ata_scsi_hotplug</span></a></span><span class="refpurpose"> &#8212; 
118     SCSI part of hotplug
119 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-user-scan.html"><span class="phrase">ata_scsi_user_scan</span></a></span><span class="refpurpose"> &#8212; 
120     indication for user-initiated bus scan
121 </span></dt><dt><span class="refentrytitle"><a href="API-ata-scsi-dev-rescan.html"><span class="phrase">ata_scsi_dev_rescan</span></a></span><span class="refpurpose"> &#8212; 
122     initiate <code class="function">scsi_rescan_device</code>
123 </span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-ata-port-detach.html">Prev</a>&#160;</td><td width="20%" align="center">&#160;</td><td width="40%" align="right">&#160;<a accesskey="n" href="API-ata-std-bios-param.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">ata_port_detach</span>&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;<span class="phrase">ata_std_bios_param</span></td></tr></table></div></body></html>
124