On Mon, Feb 14, 2000 at 16:27:37 -0500, John W. DeBoskey wrote:
> Hi,
> 
>    I have a -current system (current as of 1pm EST today) which I
> am trying to use with a Pioneer DVR-S201 dvd writer...
> 
> FreeBSD FreeBSD2.unx.sas.com 4.0-CURRENT FreeBSD 4.0-CURRENT #0:
>  Mon Feb 14 15:39:24 EST 2000   
>  [EMAIL PROTECTED]:/usr/src/sys/compile/FreeBSD  i386
> 
> 
>    The appropriate portions of dmesg:
> 
> pass6 at ahc4 bus 0 target 6 lun 0
> pass6: <PIONEER DVD-R   DVR-S201 1.10> Removable CD-ROM SCSI-2 device
> pass6: 10.000MB/s transfers (10.000MHz, offset 15)
> cd1 at ahc4 bus 0 target 6 lun 0
> cd1: <PIONEER DVD-R   DVR-S201 1.10> Removable CD-ROM SCSI-2 device
> cd1: 10.000MB/s transfers (10.000MHz, offset 15)
> cd1: cd present [1 x 2048 byte records]

Ahh, nice expensive toy. :)

>    When I attempt to run camcontrol against this device I
> get the following:
> 
> #camcontrol inquiry cd1
> (pass6:ahc4:0:6:0): data overrun detected in Data-in phase.  Tag == 0x8.
> (pass6:ahc4:0:6:0): Have seen Data Phase.  Length = 256.  NumSGs = 1.
> sg[0] - Addr 0x26c2000 : Length 256

Hmm, a data overrun means that the device returned more data than we
expected.  This is likely related somehow to the recent inquiry structure
size changes.

camcontrol doesn't yet do the short/long inquiry thing like the probe code
does.

>   camcontrol on other devices appears to work correctly:
> 
> #camcontrol inquiry da0
> pass0: <  > Fixed Direct Access SCSI-0 device 
> pass0: Serial Number JK2556760WV28L
> pass0: 40.000MB/s transfers (20.000MHz, offset 8, 16bit), Tagged Queueing Enabled

Nope, that isn't working correctly, at least the standard inquiry portion
of it isn't.

I assume your camcontrol binary, libcam.a, and kernel were all built off
the same sources today?

>    I have tried different cables and swapped scsi cards with no
> luck. I have put the writer on a common card with other working
> devices and on a card by itself and still get the same problem.
> 
>    If anyone can point me to where to start figuring this problem
> out I would appreciate it.
> 
>    I have appended the entire boot -v dmesg below.

[ ... ]

> Feb 14 16:15:58 FreeBSD2 /kernel: cd1 at ahc4 bus 0 target 6 lun 0
> Feb 14 16:15:59 FreeBSD2 /kernel: cd1: <PIONEER DVD-R   DVR-S201 1.10> Removable 
>CD-ROM SCSI-2 device 
> Feb 14 16:15:59 FreeBSD2 /kernel: cd1: 10.000MB/s transfers (10.000MHz, offset 15)
> Feb 14 16:15:59 FreeBSD2 /kernel: cd1: cd present [1 x 2048 byte records]

Well, try this.  Go into src/sbin/camcontrol/camcontrol.c, and in the
scsiinquiry() function, you'll see the following:

        scsi_inquiry(&ccb->csio,
                     /* retries */ retry_count,
                     /* cbfcnp */ NULL,
                     /* tag_action */ MSG_SIMPLE_Q_TAG,
                     /* inq_buf */ (u_int8_t *)inq_buf,
                     /* inq_len */ sizeof(struct scsi_inquiry_data),
                     /* evpd */ 0,
                     /* page_code */ 0,
                     /* sense_len */ SSD_FULL_SIZE,
                     /* timeout */ timeout ? timeout : 5000);

Change the inq_len parameter from the full inquiry structure size to
SHORT_INQUIRY_LENGTH.

If that works, we can then try to figure out what is going on.

Ken
-- 
Kenneth Merry
[EMAIL PROTECTED]


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

Reply via email to