Hi All,
        FreeBSD -current hasn't correctly detected the CDROM drive in my laptop
for some time now. I've traced the problem down to the drive returning
an invalid ATAPI_LSB_MAGIC and ATAPI_MSB_MAGIC which is checked at line
704 in dev/ata/ata-all.c

It returns d0 d0, which I believe is an overflow indication. My work
around for this currently is comment out the if statement (as shown in
the attached patch). Whilst, it's not elegant, it works. 

Could someone suggest what steps I should take to find a correct
solution, I'm a newbie in the kernel world, but one willing to play,
break and fix things.

Cheers,
        Benjamin

--- dev/ata/ata-all.c   Thu Jul 12 09:23:54 2001
+++ dev/ata/ata-all.c.new       Thu Jul 12 09:22:04 2001
@@ -701,7 +701,7 @@
                if (bootverbose)
                    ata_printf(scp, ATA_SLAVE,
                               "ATAPI probe %02x %02x\n", lsb, msb);
-               if (lsb == ATAPI_MAGIC_LSB && msb == * ATAPI_MAGIC_MSB)
+               /*if (lsb == ATAPI_MAGIC_LSB && msb == *
ATAPI_MAGIC_MSB)*/
                     scp->devices |= ATA_ATAPI_SLAVE;
             }
         }

--
3D Research Assistant                            +61 8 8302 3669
School of Computer and Information Science       Room D1-07, Levels
Campus  
University of South Australia                    Mawson Lakes Blvd.   
[EMAIL PROTECTED]                   South Australia, 5095

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to