Re: ATA CDROM no more detected with ATA_CAM under VMWare WS

2010-02-26 Thread Alexander Motin
Claude Buisson wrote:
 Here it is:
 
 r...@zaza# camcontrol identify cd0 -v
 pass1: Raw identify data:
0: 85c4       

Attached patch should fix the issue.

-- 
Alexander Motin
--- sys/ata.h.prev  2010-02-03 19:41:43.0 +0200
+++ sys/ata.h   2010-02-26 11:59:24.0 +0200
@@ -51,7 +51,7 @@ struct ata_params {
 #define ATA_RESP_INCOMPLETE 0x0004
 
 /*001*/ u_int16_t   cylinders;  /* # of cylinders */
-   u_int16_t   reserved2;
+/*002*/ u_int16_t   specconf;  /* specific configuration */
 /*003*/ u_int16_t   heads;  /* # heads */
u_int16_t   obsolete4;
u_int16_t   obsolete5;
--- cam/ata/ata_xpt.c.prev  2010-02-26 12:06:33.0 +0200
+++ cam/ata/ata_xpt.c   2010-02-26 12:17:39.0 +0200
@@ -788,11 +788,10 @@ noerror:
ata_btrim(ident_buf-serial, sizeof(ident_buf-serial));
ata_bpack(ident_buf-serial, ident_buf-serial, 
sizeof(ident_buf-serial));
/* Device may need spin-up before IDENTIFY become valid. */
-   if ((ident_buf-config  ATA_RESP_INCOMPLETE) ||
-   ((ident_buf-support.command2  ATA_SUPPORT_STANDBY) 
-(ident_buf-enabled.command2  ATA_SUPPORT_STANDBY) 
-(ident_buf-support.command2  ATA_SUPPORT_SPINUP) 
- softc-spinup == 0)) {
+   if ((ident_buf-specconf == 0x37c8 ||
+ident_buf-specconf == 0x738c) 
+   ((ident_buf-config  ATA_RESP_INCOMPLETE) ||
+softc-spinup == 0)) {
PROBE_SET_ACTION(softc, PROBE_SPINUP);
xpt_release_ccb(done_ccb);
xpt_schedule(periph, priority);
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org

Re: ATA CDROM no more detected with ATA_CAM under VMWare WS

2010-02-26 Thread Claude Buisson

Alexander Motin wrote:

Claude Buisson wrote:

Here it is:

r...@zaza# camcontrol identify cd0 -v
pass1: Raw identify data:
   0: 85c4       


Attached patch should fix the issue.





___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Everything seems OK now.

Thanks !!

Claude Buisson



___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


ATA CDROM no more detected with ATA_CAM under VMWare WS

2010-02-25 Thread Claude Buisson

Hello,

Updating a -CURRENT system from Jan 10 to Feb 21, under VMWare WS 5.5.9, the
virtual ATA CDROM is no more detected.
This is with an ATA_CAM kernel.

The CDROM is detected with a non ATA_CAM kernel.

Here are:

demesg 2010/01/10 source, ATA_CAM kernel

Copyright (c) 1992-2010 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 9.0-CURRENT #0: Tue Jan 12 16:08:41 CET 2010
t...@zaza.home.tbf:/home/obj/home/src/sys/VMWARE i386
Timecounter i8254 frequency 1193182 Hz quality 0
CPU: Intel(R) Pentium(R) M processor 1.86GHz (1859.06-MHz 686-class CPU)
  Origin = GenuineIntel  Id = 0x6d8  Stepping = 8
Features=0xfe9fbffFPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS
  AMD Features=0x10NX
real memory  = 268435456 (256 MB)
avail memory = 253235200 (241 MB)
module_register_init: MOD_LOAD (vesa, 0xc06e4fd0, 0) error 6
acpi0: PTLTD   RSDT on motherboard
acpi0: [ITHREAD]
acpi0: Power Button (fixed)
Timecounter ACPI-fast frequency 3579545 Hz quality 1000
acpi_timer0: 24-bit timer at 3.579545MHz port 0x1008-0x100b on acpi0
pcib0: ACPI Host-PCI bridge port 0xcf8-0xcff on acpi0
pci0: ACPI PCI bus on pcib0
agp0: Intel 82443BX (440 BX) host to PCI bridge on hostb0
pcib1: ACPI PCI-PCI bridge at device 1.0 on pci0
pci1: ACPI PCI bus on pcib1
isab0: PCI-ISA bridge at device 7.0 on pci0
isa0: ISA bus on isab0
atapci0: Intel PIIX4 UDMA33 controller port
0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x1050-0x105f at device 7.1 on pci0
ata0: ATA channel 0 on atapci0
ata0: [ITHREAD]
ata1: ATA channel 1 on atapci0
ata1: [ITHREAD]
uhci0: Intel 82371AB/EB (PIIX4) USB controller port 0x1060-0x107f irq 9 at
device 7.2 on pci0
uhci0: [ITHREAD]
usbus0: Intel 82371AB/EB (PIIX4) USB controller on uhci0
pci0: bridge at device 7.3 (no driver attached)
vgapci0: VGA-compatible display port 0x1440-0x144f mem  0xf000-0xf7ff,
0xe800-0xe87f at device 15.0 on pci0
le0: AMD PCnet-PCI port 0x1080-0x10ff irq 11 at device 16.0 on pci0
le0: 16 receive buffers, 4 transmit buffers
le0: Ethernet address: 00:0c:29:69:06:7f
le0: [ITHREAD]
pcm0: AudioPCI ES1371-A port 0x1400-0x143f irq 10 at device 17.0 on pci0
pcm0: Cirrus Logic CS4297A AC97 Codec
pcm0: [ITHREAD]
pcm0: Playback: DAC1,DAC2 / Record: ADC
acpi_acad0: AC Adapter on acpi0
atrtc0: AT realtime clock port 0x70-0x71 irq 8 on acpi0
atkbdc0: Keyboard controller (i8042) port 0x60,0x64 irq 1 on acpi0
atkbd0: AT Keyboard irq 1 on atkbdc0
atkbd0: [GIANT-LOCKED]
atkbd0: [ITHREAD]
psm0: PS/2 Mouse irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: [ITHREAD]
psm0: model IntelliMouse, device ID 3
ppc0: Parallel port port 0x378-0x37f irq 7 on acpi0
ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
ppc0: [ITHREAD]
ppbus0: Parallel port bus on ppc0
uart0: 16550 or compatible port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
uart0: [FILTER]
uart1: 16550 or compatible port 0x2f8-0x2ff irq 3 on acpi0
uart1: [FILTER]
fdc0: floppy drive controller port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on acpi0
fdc0: [FILTER]
fd0: 1440-KB 3.5 drive on fdc0 drive 0
cpu0: ACPI CPU on acpi0
acpi_throttle0: ACPI CPU Throttling on cpu0
pmtimer0 on isa0
orm0: ISA Option ROMs at iomem 0xc-0xc7fff,0xc8000-0xc8fff,
0xdc000-0xd,0xe-0xe3fff pnpid ORM on isa0
sc0: System console at flags 0x100 on isa0
sc0: VGA 12 virtual consoles, flags=0x300
vga0: Generic ISA VGA at port 0x3c0-0x3df iomem 0xa-0xb on isa0
Timecounter TSC frequency 1859059329 Hz quality 800
Timecounters tick every 10.000 msec
usbus0: 12Mbps Full Speed USB v1.0
ugen0.1: Intel at usbus0
uhub0: Intel UHCI root HUB, class 9/0, rev 1.00/1.00, addr 1 on usbus0
uhub0: 2 ports with 2 removable, self powered
ada0 at ata0 bus 0 scbus0 target 0 lun 0
ada0: VMware Virtual IDE Hard Drive 0001 ATA-4 device
ada0: 33.300MB/s transfers (UDMA2, PIO size 32768bytes)
ada0: 8192MB (16777216 512 byte sectors: 15H 63S/T 16383C)
cd0 at ata1 bus 0 scbus1 target 0 lun 0
cd0: SONY DVD+-RW DW-D56A PDS7 Removable CD-ROM SCSI-0 device
cd0: 33.300MB/s transfers (UDMA2, PIO size 65534bytes)
cd0: Attempt to query device size failed: NOT READY, Medium not present
Trying to mount root from ufs:/dev/ada0s1a

Verbose dmesg 2010/02/21 source ATA_CAM kernel

Copyright (c) 1992-2010 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 9.0-CURRENT #0: Tue Feb 23 15:16:12 CET 2010
t...@zaza.home.tbf:/home/obj/home/src/sys/VMWARE i386
Preloaded elf kernel /boot/kernel/kernel at 0xc092e000.
Preloaded elf module /boot/kernel/snd_es137x.ko at 0xc092e19c.
Preloaded elf module /boot/kernel/sound.ko at 0xc092e24c.
Timecounter i8254 frequency 1193182 Hz quality 0
Calibrating 

Re: ATA CDROM no more detected with ATA_CAM under VMWare WS

2010-02-25 Thread Alexander Motin
Claude Buisson wrote:
 Updating a -CURRENT system from Jan 10 to Feb 21, under VMWare WS 5.5.9,
 the
 virtual ATA CDROM is no more detected.
 This is with an ATA_CAM kernel.
 
 The CDROM is detected with a non ATA_CAM kernel.
 
 ata1: reset tp1 mask=01 ostat0=50 ostat1=ff
 ata1: stat0=0x00 err=0x01 lsb=0x14 msb=0xeb
 ata1: reset tp2 stat0=00 stat1=00 devices=0x1
 (aprobe0:ata1:0:0:0): SIGNATURE: eb14
 (aprobe0:ata1:0:0:0): Spinning up device
 (aprobe0:ata1:0:0:0): ATA status error
 (aprobe0:ata1:0:0:0): SETFEATURES SPIN-UP. ACB: ef 07 00 00 00 40 00 00
 00 00 00 00
 (aprobe0:ata1:0:0:0): CAM status: ATA Status Error
 (aprobe0:ata1:0:0:0): ATA status: 51 (DRDY SERV ERR), error: 04 (ABRT )
 (aprobe0:ata1:0:0:0): RES: 51 04 00 00 00 00 00 00 00 00 00
 (aprobe0:ata1:0:0:0): Retrying command

Seems device reports Response Incomplete bit set in IDENTIFY PACKET
DEVICE command result, which makes CAM try to power it up. Could you
comment ATA_RESP_INCOMPLETE check in ata_xpt.c and show me result of
`camcontrol identify cd0 -v` output after it?

-- 
Alexander Motin
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: ATA CDROM no more detected with ATA_CAM under VMWare WS

2010-02-25 Thread Claude Buisson

Alexander Motin wrote:

Claude Buisson wrote:

Updating a -CURRENT system from Jan 10 to Feb 21, under VMWare WS 5.5.9,
the
virtual ATA CDROM is no more detected.
This is with an ATA_CAM kernel.

The CDROM is detected with a non ATA_CAM kernel.

ata1: reset tp1 mask=01 ostat0=50 ostat1=ff
ata1: stat0=0x00 err=0x01 lsb=0x14 msb=0xeb
ata1: reset tp2 stat0=00 stat1=00 devices=0x1
(aprobe0:ata1:0:0:0): SIGNATURE: eb14
(aprobe0:ata1:0:0:0): Spinning up device
(aprobe0:ata1:0:0:0): ATA status error
(aprobe0:ata1:0:0:0): SETFEATURES SPIN-UP. ACB: ef 07 00 00 00 40 00 00
00 00 00 00
(aprobe0:ata1:0:0:0): CAM status: ATA Status Error
(aprobe0:ata1:0:0:0): ATA status: 51 (DRDY SERV ERR), error: 04 (ABRT )
(aprobe0:ata1:0:0:0): RES: 51 04 00 00 00 00 00 00 00 00 00
(aprobe0:ata1:0:0:0): Retrying command


Seems device reports Response Incomplete bit set in IDENTIFY PACKET
DEVICE command result, which makes CAM try to power it up. Could you
comment ATA_RESP_INCOMPLETE check in ata_xpt.c and show me result of
`camcontrol identify cd0 -v` output after it?



Here it is:

r...@zaza# camcontrol identify cd0 -v
pass1: Raw identify data:
   0: 85c4       
   8:   3130 3030 3030 3030 3030 3030
  16: 3030 3030 3030 3031  0040  3030
  24: 3030 3030 3031 564d 7761 7265 2056 6972
  32: 7475 616c 2049 4445 2043 4452 4f4d 2044
  40: 7269 7665 2020 2020 2020 2020 2020 
  48:  0f00  0200 0200 0006  
  56:       0007 0007
  64: 0003 0078 0078 0078 0078   
  72:  0004 0009     
  80: 001e 0017 4218 4000 4000 4218 4000 4000
  88: 0407       
  96:        
 104:        
 112:        
 120:        
 128:        
 136:        
 144:        
 152:        
 160:        
 168:        
 176:        
 184:        
 192:        
 200:        
 208:        
 216:        
 224:        
 232:        
 240:        
 248:        
pass1: VMware Virtual IDE CDROM Drive 0001 ATAPI-4 device
pass1: 33.300MB/s transfers (UDMA2, ATAPI 12bytes, PIO 65534bytes)

protocol  ATA/ATAPI-4
device model  VMware Virtual IDE CDROM Drive
firmware revision 0001
serial number 1001
cylinders 0
heads 0
sectors/track 0
sector size   logical 512, physical 512, offset 0
LBA supported
LBA48 not supported
PIO supported PIO4
DMA supported WDMA2 UDMA2

Feature  Support  EnableValue   Vendor
read ahead no   no
write cacheno   no
flush cacheno   no
overlapno
Tagged Command Queuing (TCQ)   no   no
SMART  no   no
microcode download no   no
security   no   no
power management   yes  yes
advanced power management  no   no  0/0x00
automatic acoustic management  no   no  0/0x00  0/0x00
media status notification  no   no
power-up in Standbyno   no
write-read-verify  no   no  0/0x0
unload no   no
free-fall  no   no
data set management (TRIM) no

dmesg say:

cd0 at ata1 bus 0 scbus1 target 0 lun 0
cd0: SONY DVD+-RW DW-D56A PDS7 Removable CD-ROM SCSI-0 device
cd0: 33.300MB/s transfers (UDMA2, ATAPI 12bytes, PIO 65534bytes)
cd0: Attempt to query device size failed: NOT READY, Medium not present

The VMWare virtual device being connected at boot the the physical device

Hope this help,

Claude Buisson


___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org