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

Reply via email to