Lines Matching refs:ss
115 struct us_data *ss);
976 static int usb_inquiry(struct scsi_cmd *srb, struct us_data *ss) in usb_inquiry() argument
987 i = ss->transport(srb, ss); in usb_inquiry()
1000 static int usb_request_sense(struct scsi_cmd *srb, struct us_data *ss) in usb_request_sense() argument
1012 ss->transport(srb, ss); in usb_request_sense()
1020 static int usb_test_unit_ready(struct scsi_cmd *srb, struct us_data *ss) in usb_test_unit_ready() argument
1030 if (ss->transport(srb, ss) == USB_STOR_TRANSPORT_GOOD) { in usb_test_unit_ready()
1031 ss->flags |= USB_READY; in usb_test_unit_ready()
1034 usb_request_sense(srb, ss); in usb_test_unit_ready()
1051 static int usb_read_capacity(struct scsi_cmd *srb, struct us_data *ss) in usb_read_capacity() argument
1062 if (ss->transport(srb, ss) == USB_STOR_TRANSPORT_GOOD) in usb_read_capacity()
1069 static int usb_read_10(struct scsi_cmd *srb, struct us_data *ss, in usb_read_10() argument
1083 return ss->transport(srb, ss); in usb_read_10()
1086 static int usb_write_10(struct scsi_cmd *srb, struct us_data *ss, in usb_write_10() argument
1100 return ss->transport(srb, ss); in usb_write_10()
1139 struct us_data *ss; in usb_stor_read() local
1161 ss = (struct us_data *)udev->privptr; in usb_stor_read()
1176 if (blks > ss->max_xfer_blk) in usb_stor_read()
1177 smallblks = ss->max_xfer_blk; in usb_stor_read()
1181 if (smallblks == ss->max_xfer_blk) in usb_stor_read()
1185 if (usb_read_10(srb, ss, start, smallblks)) { in usb_stor_read()
1187 usb_request_sense(srb, ss); in usb_stor_read()
1197 ss->flags &= ~USB_READY; in usb_stor_read()
1204 if (blkcnt >= ss->max_xfer_blk) in usb_stor_read()
1221 struct us_data *ss; in usb_stor_write() local
1244 ss = (struct us_data *)udev->privptr; in usb_stor_write()
1262 if (blks > ss->max_xfer_blk) in usb_stor_write()
1263 smallblks = ss->max_xfer_blk; in usb_stor_write()
1267 if (smallblks == ss->max_xfer_blk) in usb_stor_write()
1271 if (usb_write_10(srb, ss, start, smallblks)) { in usb_stor_write()
1273 usb_request_sense(srb, ss); in usb_stor_write()
1283 ss->flags &= ~USB_READY; in usb_stor_write()
1289 if (blkcnt >= ss->max_xfer_blk) in usb_stor_write()
1297 struct us_data *ss) in usb_storage_probe() argument
1316 memset(ss, 0, sizeof(struct us_data)); in usb_storage_probe()
1322 ss->flags = flags; in usb_storage_probe()
1323 ss->ifnum = ifnum; in usb_storage_probe()
1324 ss->pusb_dev = dev; in usb_storage_probe()
1325 ss->attention_done = 0; in usb_storage_probe()
1326 ss->subclass = iface->desc.bInterfaceSubClass; in usb_storage_probe()
1327 ss->protocol = iface->desc.bInterfaceProtocol; in usb_storage_probe()
1331 switch (ss->protocol) { in usb_storage_probe()
1334 ss->transport = usb_stor_CB_transport; in usb_storage_probe()
1335 ss->transport_reset = usb_stor_CB_reset; in usb_storage_probe()
1340 ss->transport = usb_stor_CB_transport; in usb_storage_probe()
1341 ss->transport_reset = usb_stor_CB_reset; in usb_storage_probe()
1345 ss->transport = usb_stor_BBB_transport; in usb_storage_probe()
1346 ss->transport_reset = usb_stor_BBB_reset; in usb_storage_probe()
1365 ss->ep_in = ep_desc->bEndpointAddress & in usb_storage_probe()
1368 ss->ep_out = in usb_storage_probe()
1376 ss->ep_int = ep_desc->bEndpointAddress & in usb_storage_probe()
1378 ss->irqinterval = ep_desc->bInterval; in usb_storage_probe()
1382 ss->ep_in, ss->ep_out, ss->ep_int); in usb_storage_probe()
1386 !ss->ep_in || !ss->ep_out || in usb_storage_probe()
1387 (ss->protocol == US_PR_CBI && ss->ep_int == 0)) { in usb_storage_probe()
1396 if (ss->subclass != US_SC_UFI && ss->subclass != US_SC_SCSI && in usb_storage_probe()
1397 ss->subclass != US_SC_8070) { in usb_storage_probe()
1398 printf("Sorry, protocol %d not yet supported.\n", ss->subclass); in usb_storage_probe()
1401 if (ss->ep_int) { in usb_storage_probe()
1405 ss->irqinterval = (ss->irqinterval > 0) ? ss->irqinterval : 255; in usb_storage_probe()
1406 ss->irqpipe = usb_rcvintpipe(ss->pusb_dev, ss->ep_int); in usb_storage_probe()
1407 ss->irqmaxp = usb_maxpacket(dev, ss->irqpipe); in usb_storage_probe()
1412 usb_stor_set_max_xfer_blk(dev, ss); in usb_storage_probe()
1414 dev->privptr = (void *)ss; in usb_storage_probe()
1418 int usb_stor_get_info(struct usb_device *dev, struct us_data *ss, in usb_stor_get_info() argument
1433 if (usb_inquiry(pccb, ss)) { in usb_stor_get_info()
1465 if (usb_test_unit_ready(pccb, ss)) { in usb_stor_get_info()
1476 if (usb_read_capacity(pccb, ss) != 0) { in usb_stor_get_info()
1481 ss->flags &= ~USB_READY; in usb_stor_get_info()