Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Dec 2000 18:00:03 -0800 (PST)
From:      Eyal Soha <esoha@cisco.com>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/23409: CD-RW driver fails unless CD in drive at boot up
Message-ID:  <200012110200.eBB203b73338@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/23409; it has been noted by GNATS.

From: Eyal Soha <esoha@cisco.com>
To: freebsd-gnats-submit@FreeBSD.org, esoha@cisco.com
Cc:  
Subject: Re: kern/23409: CD-RW driver fails unless CD in drive at boot up
Date: Sun, 10 Dec 2000 17:53:21 -0800

 The error is in sys/dev/ata/atapi-cd.c, line 122:
 
     /* get drive capabilities, some drives needs this repeated */
     for (count = 0 ; count < 5 ; count++) {
 	if (!(error = acd_mode_sense(cdp, ATAPI_CDROM_CAP_PAGE,
 				     (caddr_t)&cdp->cap, sizeof(cdp->cap))))
 	    break;
     }
 
 For debugging purposes, I changed 5 to 0xffffff.
 
 When I have a CD installed in the drive or the CD-RW tray is open, I
 usually need only two or three retries.  When the CD-RW drive is
 closed and there is no CD in it, I need between 6400 and 6500 retries.
 The number of retries required fluctuates and drops significantly if I
 put a delay before the for() loop.  The drive is likely not ready by
 the time the ATAPI_CDROM_CAP_PAGE command is being issued.
 
 When the bug isn't being exhibited, the error returned by
 acd_mode_sense is 0x5.  (After getting error 0x5 once or twice, the
 drive responds properly.)
 
 When in the bug case (closed and empty CD-RW drive), the error
 returned on the first call to acd_mode_sense() is 0x5.  Subsequent
 calls all return 0x10 (between 0x400 and 0x440 times) until the final
 call which returns 0.
 
 -- 
 Eyal Soha <esoha@cisco.com>                    Work: (408) 527-9276
 Software Engineer                              Page: (800) 365-4578
 Cisco Systems <http://www.cisco.com>;   Epage: esoha@epage.cisco.com
 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200012110200.eBB203b73338>