summaryrefslogtreecommitdiffstats
path: root/sbin/camcontrol/camcontrol.h
diff options
context:
space:
mode:
Diffstat (limited to 'sbin/camcontrol/camcontrol.h')
-rw-r--r--sbin/camcontrol/camcontrol.h29
1 files changed, 27 insertions, 2 deletions
diff --git a/sbin/camcontrol/camcontrol.h b/sbin/camcontrol/camcontrol.h
index 582b6a3..bb2fe4f 100644
--- a/sbin/camcontrol/camcontrol.h
+++ b/sbin/camcontrol/camcontrol.h
@@ -37,6 +37,14 @@ typedef enum {
CC_OR_FOUND
} camcontrol_optret;
+typedef enum {
+ CC_DT_NONE,
+ CC_DT_SCSI,
+ CC_DT_ATA_BEHIND_SCSI,
+ CC_DT_ATA,
+ CC_DT_UNKNOWN
+} camcontrol_devtype;
+
/*
* get_hook: Structure for evaluating args in a callback.
*/
@@ -49,9 +57,22 @@ struct get_hook
extern int verbose;
+int ata_do_identify(struct cam_device *device, int retry_count, int timeout,
+ union ccb *ccb, struct ata_params **ident_bufp);
+int dev_has_vpd_page(struct cam_device *dev, uint8_t page_id, int retry_count,
+ int timeout, int verbosemode);
+int get_device_type(struct cam_device *dev, int retry_count, int timeout,
+ int verbosemode, camcontrol_devtype *devtype);
+void build_ata_cmd(union ccb *ccb, uint32_t retry_count, uint32_t flags,
+ uint8_t tag_action, uint8_t protocol, uint8_t ata_flags,
+ uint16_t features, uint16_t sector_count, uint64_t lba,
+ uint8_t command, uint8_t *data_ptr, uint16_t dxfer_len,
+ uint8_t sense_len, uint32_t timeout, int is48bit,
+ camcontrol_devtype devtype);
+int camxferrate(struct cam_device *device);
int fwdownload(struct cam_device *device, int argc, char **argv,
- char *combinedopt, int printerrors, int retry_count, int timeout,
- const char */*type*/);
+ char *combinedopt, int printerrors, int retry_count,
+ int timeout);
void mode_sense(struct cam_device *device, int mode_page, int page_control,
int dbd, int retry_count, int timeout, u_int8_t *data,
int datalen);
@@ -63,6 +84,10 @@ void mode_list(struct cam_device *device, int page_control, int dbd,
int retry_count, int timeout);
int scsidoinquiry(struct cam_device *device, int argc, char **argv,
char *combinedopt, int retry_count, int timeout);
+int scsigetopcodes(struct cam_device *device, int opcode_set, int opcode,
+ int show_sa_errors, int sa_set, int service_action,
+ int timeout_desc, int retry_count, int timeout,
+ int verbosemode, uint32_t *fill_len, uint8_t **data_ptr);
int scsipersist(struct cam_device *device, int argc, char **argv,
char *combinedopt, int retry_count, int timeout, int verbose,
int err_recover);
OpenPOWER on IntegriCloud