Try the attached patch.
Matt
On Sun, Mar 04, 2001 at 03:41:08AM -0500, [EMAIL PROTECTED] wrote:
>
> I read the documentation several times but I have no luck. I recompiled
> the kernel several times with different options etc.
>
> I just noticed the following: When I try to mount a Redhat CD from
> /dev/scd1, it fails with the error message"
> Mar 4 03:35:27 alpha kernel: sr1: unsupported sector size 1310976.
> Mar 4 03:35:27 alpha kernel: isofs_read_super: bread failed, dev=0b:01,
>iso_blknum=205524048, block=205524048
> Mar 4 03:35:27 alpha kernel: sr1: CDROM (ioctl) reports ILLEGAL REQUEST.
>
>
> I guess I have the same problem like this guy; Check out:
> http://lists.sourceforge.net/archives//linux-usb-users/2000-December/001428.html
> and especially this one:
> http://lists.sourceforge.net/archives//linux-usb-users/2000-December/001430.html
>
>
> Should I return this burner? And note how it says 8290 instead of 8230e;
> (on the box and on the drive it says 8230e). So is it really a 8230e??????
>
> alpha:root# cdrecord -scanbus
> Cdrecord 1.9 (i686-pc-linux-gnu) Copyright (C) 1995-2000 Jörg Schilling
> Linux sg driver version: 3.1.17
> Using libscg version 'schily-0.1'
> [SNIP[
> scsibus1:
> cdrecord: Warning: controller returns zero sized CD capabilities page.
> cdrecord: Warning: controller returns wrong page 1A for CD capabilities
> page (2A).
> 1,0,0 100) 'HP ' 'CD-Writer+ 8290 ' '1.3C' Removable CD-ROM
> 1,1,0 101) *
> 1,2,0 102) *
> 1,3,0 103) *
> 1,4,0 104) *
> 1,5,0 105) *
> 1,6,0 106) *
> 1,7,0 107) *
> alpha:root#
>
> Thanks
> Werner
>
>
>
>
>
> On Sat, 3 Mar 2001, Matthew Dharm wrote:
>
> > On Sat, Mar 03, 2001 at 09:56:42PM -0500, [EMAIL PROTECTED] wrote:
> > > alpha:root# cdrecord -blank fast /dev/scd1
> >
> > Wrong syntax. Upgrade to cdrecord-1.10a4 or later and RTFM.
> >
> > Matt
> >
> >
--
Matthew Dharm Home: [EMAIL PROTECTED]
Maintainer, Linux USB Mass Storage Driver
I want my GPFs!!!
-- Stef
User Friendly, 11/9/1998
--- shuttle_usbat.old Thu Feb 15 09:05:01 2001
+++ shuttle_usbat.c Thu Feb 15 09:03:01 2001
@@ -96,7 +96,6 @@
request, requesttype, value, index,
xfer_data, xfer_len);
-
// Check the return code for the command.
if (result < 0) {
@@ -331,7 +330,6 @@
int i;
int result;
unsigned char status;
-
/* Synchronizing cache on a CDR could take a heck of a long time,
* but probably not more than 10 minutes or so. On the other hand,
* doing a full blank on a CDRW at speed 1 will take about 75
@@ -344,12 +342,14 @@
if (result!=USB_STOR_TRANSPORT_GOOD)
return result;
- if (status&0x01) // check condition
+ if (status&0x01) { // check condition
+ result = usbat_read(us, USBAT_ATA, 0x10, &status) ;
return USB_STOR_TRANSPORT_FAILED;
+ }
if (status&0x20) // device fault
return USB_STOR_TRANSPORT_FAILED;
- if ((status&0x80)!=0x80) { // not busy
+ if ((status&0x80)==0x00) { // not busy
US_DEBUGP("Waited not busy for %d steps\n", i);
return USB_STOR_TRANSPORT_GOOD;
}
@@ -566,6 +566,7 @@
LSB_of(num_registers*2), MSB_of(num_registers*2)
};
+
for (i=0; i<num_registers; i++) {
data[i<<1] = registers[i];
data[1+(i<<1)] = data_out[i];
@@ -972,6 +973,9 @@
data[i] = (i-7 >= srb->cmd_len) ? 0 : srb->cmnd[i-7];
}
+ result = usbat_read(us, USBAT_ATA, 0x17, &status);
+ US_DEBUGP("Status = %02x\n", status) ;
+
if (srb->cmnd[0] == TEST_UNIT_READY)
transferred = 0;
@@ -1048,7 +1052,6 @@
}
else
len = status;
-
result = usbat_read_block(us, USBAT_ATA, 0x10,
srb->request_buffer, len, srb->use_sg);
PGP signature