Lines Matching defs:us

52 static int usb_stor_sddr09_dpcm_init(struct us_data *us);
53 static int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us);
54 static int usb_stor_sddr09_init(struct us_data *us);
289 sddr09_send_command(struct us_data *us,
301 pipe = us->recv_ctrl_pipe;
303 pipe = us->send_ctrl_pipe;
305 rc = usb_stor_ctrl_transfer(us, pipe, request, requesttype,
315 sddr09_send_scsi_command(struct us_data *us,
318 return sddr09_send_command(us, 0, USB_DIR_OUT, command, command_len);
327 sddr09_test_unit_ready(struct us_data *us) {
328 unsigned char *command = us->iobuf;
334 result = sddr09_send_scsi_command(us, command, 6);
336 usb_stor_dbg(us, "sddr09_test_unit_ready returns %d\n", result);
348 sddr09_request_sense(struct us_data *us, unsigned char *sensebuf, int buflen) {
349 unsigned char *command = us->iobuf;
357 result = sddr09_send_scsi_command(us, command, 12);
361 result = usb_stor_bulk_transfer_buf(us, us->recv_bulk_pipe,
389 sddr09_readX(struct us_data *us, int x, unsigned long fromaddress,
393 unsigned char *command = us->iobuf;
409 result = sddr09_send_scsi_command(us, command, 12);
412 usb_stor_dbg(us, "Result for send_control in sddr09_read2%d %d\n",
417 result = usb_stor_bulk_transfer_sg(us, us->recv_bulk_pipe,
421 usb_stor_dbg(us, "Result for bulk_transfer in sddr09_read2%d %d\n",
438 sddr09_read20(struct us_data *us, unsigned long fromaddress,
443 return sddr09_readX(us, 0, fromaddress, nr_of_pages, bulklen,
461 sddr09_read21(struct us_data *us, unsigned long fromaddress,
465 return sddr09_readX(us, 1, fromaddress, count, bulklen,
479 sddr09_read22(struct us_data *us, unsigned long fromaddress,
483 usb_stor_dbg(us, "reading %d pages, %d bytes\n", nr_of_pages, bulklen);
484 return sddr09_readX(us, 2, fromaddress, nr_of_pages, bulklen,
503 sddr09_read23(struct us_data *us, unsigned long fromaddress,
507 return sddr09_readX(us, 3, fromaddress, count, bulklen,
522 sddr09_erase(struct us_data *us, unsigned long Eaddress) {
523 unsigned char *command = us->iobuf;
526 usb_stor_dbg(us, "erase address %lu\n", Eaddress);
536 result = sddr09_send_scsi_command(us, command, 12);
539 usb_stor_dbg(us, "Result for send_control in sddr09_erase %d\n",
571 sddr09_writeX(struct us_data *us,
575 unsigned char *command = us->iobuf;
594 result = sddr09_send_scsi_command(us, command, 12);
597 usb_stor_dbg(us, "Result for send_control in sddr09_writeX %d\n",
602 result = usb_stor_bulk_transfer_sg(us, us->send_bulk_pipe,
606 usb_stor_dbg(us, "Result for bulk_transfer in sddr09_writeX %d\n",
615 sddr09_write_inplace(struct us_data *us, unsigned long address,
619 return sddr09_writeX(us, address, address, nr_of_pages, bulklen,
636 sddr09_read_sg_test_only(struct us_data *us) {
637 unsigned char *command = us->iobuf;
672 result = sddr09_send_scsi_command(us, command, 4*nsg+3);
675 usb_stor_dbg(us, "Result for send_control in sddr09_read_sg %d\n",
684 result = usb_stor_bulk_transfer_buf(us, us->recv_bulk_pipe,
688 usb_stor_dbg(us, "Result for bulk_transfer in sddr09_read_sg %d\n",
709 sddr09_read_status(struct us_data *us, unsigned char *status) {
711 unsigned char *command = us->iobuf;
712 unsigned char *data = us->iobuf;
715 usb_stor_dbg(us, "Reading status...\n");
721 result = sddr09_send_scsi_command(us, command, 12);
725 result = usb_stor_bulk_transfer_buf(us, us->recv_bulk_pipe,
732 sddr09_read_data(struct us_data *us,
736 struct sddr09_card_info *info = (struct sddr09_card_info *) us->extra;
775 usb_stor_dbg(us, "Error: Requested lba %u exceeds maximum %u\n",
786 usb_stor_dbg(us, "Read %d zero pages (LBA %d) page %d\n",
799 usb_stor_dbg(us, "Read %d pages, from PBA %d (LBA %d) page %d\n",
805 result = sddr09_read20(us, address>>1,
812 usb_stor_access_xfer_buf(buffer, len, us->srb,
851 sddr09_write_lba(struct us_data *us, unsigned int lba,
855 struct sddr09_card_info *info = (struct sddr09_card_info *) us->extra;
892 result = sddr09_read22(us, address>>1, info->blocksize,
903 usb_stor_dbg(us, "Warning: bad ecc in page %d- of pba %d\n",
909 usb_stor_dbg(us, "Warning: bad ecc in page %d+ of pba %d\n",
930 usb_stor_dbg(us, "Rewrite PBA %d (LBA %d)\n", pba, lba);
932 result = sddr09_write_inplace(us, address>>1, info->blocksize,
935 usb_stor_dbg(us, "sddr09_write_inplace returns %d\n", result);
940 int result2 = sddr09_read_status(us, &status);
942 usb_stor_dbg(us, "cannot read status\n");
944 usb_stor_dbg(us, "status after write: 0x%x\n", status);
950 int result2 = sddr09_test_unit_ready(us);
958 sddr09_write_data(struct us_data *us,
962 struct sddr09_card_info *info = (struct sddr09_card_info *) us->extra;
1020 usb_stor_dbg(us, "Error: Requested lba %u exceeds maximum %u\n",
1027 usb_stor_access_xfer_buf(buffer, len, us->srb,
1030 result = sddr09_write_lba(us, lba, page, pages,
1047 sddr09_read_control(struct us_data *us,
1053 usb_stor_dbg(us, "Read control address %lu, blocks %d\n",
1056 return sddr09_read21(us, address, blocks,
1071 sddr09_read_deviceID(struct us_data *us, unsigned char *deviceID) {
1072 unsigned char *command = us->iobuf;
1073 unsigned char *content = us->iobuf;
1080 result = sddr09_send_scsi_command(us, command, 12);
1084 result = usb_stor_bulk_transfer_buf(us, us->recv_bulk_pipe,
1094 sddr09_get_wp(struct us_data *us, struct sddr09_card_info *info) {
1099 result = sddr09_read_status(us, &status);
1101 usb_stor_dbg(us, "read_status fails\n");
1110 usb_stor_dbg(us, "status 0x%02X%s%s%s%s\n", status, wp_fmt,
1124 sddr09_reset(struct us_data *us) {
1126 unsigned char *command = us->iobuf;
1132 return sddr09_send_scsi_command(us, command, 12);
1137 sddr09_get_cardinfo(struct us_data *us, unsigned char flags) {
1143 usb_stor_dbg(us, "Reading capacity...\n");
1145 result = sddr09_read_deviceID(us, deviceID);
1148 usb_stor_dbg(us, "Result of read_deviceID is %d\n", result);
1197 sddr09_read_map(struct us_data *us) {
1199 struct sddr09_card_info *info = (struct sddr09_card_info *) us->extra;
1259 us, address>>1,
1358 sddr09_erase(us, address>>1);
1385 usb_stor_dbg(us, "Found %d LBA's\n", lbact);
1411 sddr09_common_init(struct us_data *us) {
1415 if (us->pusb_dev->actconfig->desc.bConfigurationValue != 1) {
1416 usb_stor_dbg(us, "active config #%d != 1 ??\n",
1417 us->pusb_dev->actconfig->desc.bConfigurationValue);
1421 result = usb_reset_configuration(us->pusb_dev);
1422 usb_stor_dbg(us, "Result of usb_reset_configuration is %d\n", result);
1424 usb_stor_dbg(us, "-- stall on control interface\n");
1427 usb_stor_dbg(us, "-- Unknown error. Rejecting device\n");
1431 us->extra = kzalloc(sizeof(struct sddr09_card_info), GFP_NOIO);
1432 if (!us->extra)
1434 us->extra_destructor = sddr09_card_info_destructor;
1447 usb_stor_sddr09_dpcm_init(struct us_data *us) {
1449 unsigned char *data = us->iobuf;
1451 result = sddr09_common_init(us);
1455 result = sddr09_send_command(us, 0x01, USB_DIR_IN, data, 2);
1457 usb_stor_dbg(us, "send_command fails\n");
1461 usb_stor_dbg(us, "%02X %02X\n", data[0], data[1]);
1464 result = sddr09_send_command(us, 0x08, USB_DIR_IN, data, 2);
1466 usb_stor_dbg(us, "2nd send_command fails\n");
1470 usb_stor_dbg(us, "%02X %02X\n", data[0], data[1]);
1473 result = sddr09_request_sense(us, data, 18);
1496 static int dpcm_transport(struct scsi_cmnd *srb, struct us_data *us)
1500 usb_stor_dbg(us, "LUN=%d\n", (u8)srb->device->lun);
1508 ret = usb_stor_CB_transport(srb, us);
1521 ret = sddr09_transport(srb, us);
1526 usb_stor_dbg(us, "Invalid LUN %d\n", (u8)srb->device->lun);
1537 static int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us)
1542 unsigned char *ptr = us->iobuf;
1559 info = (struct sddr09_card_info *)us->extra;
1582 fill_inquiry_response(us, ptr, 36);
1589 sddr09_get_wp(us, info); /* read WP bit */
1591 cardinfo = sddr09_get_cardinfo(us, info->flags);
1608 if (sddr09_read_map(us)) {
1636 usb_stor_dbg(us, "Dummy up request for mode page 0x%x\n",
1663 usb_stor_dbg(us, "READ_10: read page %d pagect %d\n",
1666 result = sddr09_read_data(us, page, pages);
1678 usb_stor_dbg(us, "WRITE_10: write page %d pagect %d\n",
1681 result = sddr09_write_data(us, page, pages);
1707 usb_stor_dbg(us, "Send control for command %s\n", ptr);
1709 result = sddr09_send_scsi_command(us, srb->cmnd, 12);
1711 usb_stor_dbg(us, "sddr09_send_scsi_command returns %d\n",
1722 ? us->send_bulk_pipe : us->recv_bulk_pipe;
1724 usb_stor_dbg(us, "%s %d bytes\n",
1729 result = usb_stor_bulk_srb(us, pipe, srb);
1742 usb_stor_sddr09_init(struct us_data *us) {
1743 return sddr09_common_init(us);
1751 struct us_data *us;
1754 result = usb_stor_probe1(&us, intf, id,
1760 if (us->protocol == USB_PR_DPCM_USB) {
1761 us->transport_name = "Control/Bulk-EUSB/SDDR09";
1762 us->transport = dpcm_transport;
1763 us->transport_reset = usb_stor_CB_reset;
1764 us->max_lun = 1;
1766 us->transport_name = "EUSB/SDDR09";
1767 us->transport = sddr09_transport;
1768 us->transport_reset = usb_stor_CB_reset;
1769 us->max_lun = 0;
1772 result = usb_stor_probe2(us);