summaryrefslogtreecommitdiff
path: root/sys/scsi
AgeCommit message (Collapse)Author
1997-01-15sc_link.adapter_buswidth, set to 16 if wide scsi. if 0 it gets convertedTheo de Raadt
to 8 internally so that drivers do not need to init it for regular scsi :-)
1997-01-04readdisklabel() with correct dev_tTheo de Raadt
1996-12-24deal with the 2340 lie in the right place, i thinkTheo de Raadt
1996-12-11b_resid cleanups, pointed out by minoura@kw.netlaputa.or.jp in netbsd pr#3007Theo de Raadt
1996-12-11removed redundant copy of whole filekstailey
1996-12-08-Wcast-qual happinessNiklas Hallqvist
1996-12-05call readdisklabel() in the same fashion as sd.c doesTheo de Raadt
1996-12-03clear sense buffer for mode sense 4, dms@celtech.comTheo de Raadt
1996-11-28Make SCSI debugging more dynamic, more targets and luns can beNiklas Hallqvist
debugged simultaneously and which ones, as well as the verbosity, can be determined at runtime.
1996-11-28Sync to NetBSD 961107Niklas Hallqvist
1996-11-25Oops, we don't have SDEV_NOSTARTUNIT. Remove TEAC scsi floppy quirk for now.Todd C. Miller
1996-11-25Add some quirky devices from NetBSD.Todd C. Miller
1996-11-23added const to second parameter of cfprint_t routineskstailey
1996-11-23deleted unnecessary calls to strlen()kstailey
1996-11-23deleted redundant sectionkstailey
1996-11-06Slight oversight in Ken's latest fixNiklas Hallqvist
1996-11-03make SCSI_POLL only be set when scanjet_ctl_{read|write} is called from ↵kstailey
scanjet_attach()
1996-10-31hp scanjet 4p support; kstailey@dol-esa.govTheo de Raadt
1996-10-31Add SCSI_POLL to control read/writes to remove some timing problemNiklas Hallqvist
This will be reviewed later in order to find the real culprit. Workaround from Ken Stailey
1996-10-31$OpenBSD RCSIDs + comment fix in sd.cNiklas Hallqvist
1996-10-20Add quirk entries for 2 optical drives, NetBSD PR #2861Todd C. Miller
1996-10-05[a]cd_play -> [a]cd_play_big. Say hello to cdio(1).Jason Downs
1996-10-04Fixed prototype errors, reviewed & approved by deraadtNiklas Hallqvist
1996-08-30Add an IBM quirk.Jason Downs
1996-08-16only safe ioctlTheo de Raadt
1996-08-15for NEC 210 CD-ROM driversshawn
1996-08-13Remove unused variableNiklas Hallqvist
1996-08-12safe ioctl onlyTheo de Raadt
1996-08-11limit ioctl priviledgesTheo de Raadt
1996-08-07disk_unbusy if op failed to enqueueTheo de Raadt
1996-07-30patch for HP scanjet 4p; netbsd pr#2663; kstailey@dol-esa.govTheo de Raadt
1996-07-24for sun-modified maxtor XT-8760S drives; from ivanenko@ctpa03.mit.eduTheo de Raadt
1996-07-12Fixed wrong type of argument passing for SCIOCREASSIGN.Per Fogelstrom
(thanks Theo).
1996-07-11Make use of existing SCSI block reassign code.Per Fogelstrom
1996-07-11some MUSTEKs fill with 0xff instead of 0x20; netbsd pr#2617; is@beverly.rhein.deTheo de Raadt
1996-07-02handle SCSI_QUEUE_FULL correctlyTheo de Raadt
1996-06-17SCIOCCOMMAND now requires that the device be open for writing.Jason Downs
1996-06-16netbsd pr#2220: add SCIOCRESET. I can't think of any reason not to.Jason Downs
1996-06-16NetBSD PR#2535: add mode sense 5 and floppy support in our framework.Jason Downs
1996-06-10do not check SDEV_MEDIA_LOADED because it does not matterTheo de Raadt
1996-06-10Several changes:Jason Downs
* Implemented NetBSD PR#2529, adding ZIP 100. * Added MTIOCTOP support to acd, cd, and sd. * Implemented eject on close for acd, cd, and sd. `mt -f /dev/rcd0d offline' now ejects a mounted {acd|cd|sd} when it is unmounted.
1996-06-01all ports have dk_establishTheo de Raadt
1996-05-22scsi attribute elsewhereTheo de Raadt
1996-05-22syncTheo de Raadt
1996-05-22unload after last closeTheo de Raadt
1996-05-16from NetBSD PR#812:Michael Shalayeff
allow CDDA disks to be read. not tested, anyone w/ SCSI CD is ought to. here is the test program (not tested too ;): #define CDDA #include <stdio.h> #include <unistd.h> #include <fcntl.h> #include <sys/types.h> #include <sys/param.h> #include <sys/scsiio.h> #include <sys/cdio.h> #include <scsi/scsi_all.h> #include <scsi/scsi_cd.h> #include <scsi/scsi_disk.h> extern int errno; void usage() { fprintf(stderr, "usage: cdda -d device -b blkcnt -o offset >output\n"); exit(1); } char databuf[CD_DA_BLKSIZ]; main(int argc, char *argv[]) { int ch; int fd; off_t offset = 0; int cnt = 0; char *dev = 0; struct scsi_rw_big read_cmd; struct scsi_mode_sense sense_cmd; struct cd_mode_data bdesc; scsireq_t req; while ((ch = getopt(argc, argv, "d:b:o:")) != -1) { switch (ch) { case 'd': dev = optarg; break; case 'b': cnt = atoi(optarg); if (cnt <= 0) usage(); break; case 'o': offset = atoi(optarg); break; case '?': default: usage(); } } if (dev == NULL || cnt == 0) usage(); fd = open(dev, O_RDONLY); if (fd == -1) err(1,"can't open device %s", dev); #ifdef DEBUG ch = SC_DB_FLOW; ioctl(fd, SCIOCDEBUG, &ch); #endif ch = 1; if (ioctl(fd, CDIOCSETCDDA, &ch) == -1) warn("can't set CDDA mode"); read_cmd.opcode = READ_BIG; /* READ10 */ read_cmd.byte2 = 0; /* no relative */ read_cmd.reserved = 0; read_cmd.length2 = 0; read_cmd.length1 = 1; /* read one block at a time. hope it caches! */ read_cmd.control = 0; /* LBA mode, leave flag & link zero */ for (; cnt > 0; cnt--, offset++) { read_cmd.addr_3 = (offset >> 24) & 0xff; read_cmd.addr_2 = (offset >> 16) & 0xff; read_cmd.addr_1 = (offset >> 8) & 0xff; read_cmd.addr_0 = offset & 0xff; memset(&req, 0, sizeof(req)); req.flags = SCCMD_READ; /* timeout is in milliseconds--not that it's obvious from the include files! */ req.timeout = 10000; /* 10 sec */ bcopy(&read_cmd, req.cmd, sizeof(read_cmd)); req.cmdlen = sizeof(read_cmd); req.databuf = databuf; req.datalen = sizeof(databuf); req.senselen = sizeof(req.sense); /* XXX */ if (ioctl(fd, SCIOCCOMMAND, &req) == -1) { fprintf(stderr, "bad ioctl: %d\n", errno); ch = 0; ioctl(fd, CDIOCSETCDDA, &ch); #ifdef DEBUG ioctl(fd, SCIOCDEBUG, &ch); #endif exit(1); } if (req.retsts != 0 || req.error != 0) { ch = 0; ioctl(fd, CDIOCSETCDDA, &ch); #ifdef DEBUG ioctl(fd, SCIOCDEBUG, &ch); #endif errx(1,"return status %d, error %d\n", req.retsts, req.error); } if (req.datalen_used != sizeof(databuf)) { ch = 0; ioctl(fd, CDIOCSETCDDA, &ch); #ifdef DEBUG ioctl(fd, SCIOCDEBUG, &ch); #endif errx(1,"didn't get full buffer back (%x)", req.datalen_used); } write(1, databuf, sizeof(databuf)); } ch = 0; if (ioctl(fd, CDIOCSETCDDA, &ch) == -1) warn("can't reset CDDA mode"); #ifdef DEBUG ioctl(fd, SCIOCDEBUG, &ch); #endif close(fd); exit(0); }
1996-05-10SC_DEBUG cleanupTheo de Raadt
1996-05-07Remove erroneously doubled text (patch can do that when a new fileNiklas Hallqvist
comes into existence simultaneously from two directions).
1996-05-06from netbsd; SCSIDEBUG printf() fixesTheo de Raadt
1996-05-06shinaken cd has lun problemTheo de Raadt