Subject: DVD degrading IO mode.
To: None <netbsd-help@netbsd.org>
From: Richard Rauch <rauch@rice.edu>
List: netbsd-help
Date: 07/26/2002 13:28:46
On 1.5.2 (customized config but standard sources), when I boot my DVD
player is recognized as a UDMA 2 device.

When I try to play a DVD movie, it degrades through UDMA 1, DMA 2, to PIO
4, claiming lost interrupts:

 /~~~

pciide1:1:1: lost interrupt
        type: atapi tc_bcount: 32 tc_skip: 0
pciide1:1:1: bus-master DMA error: missing interrupt, status=0x1
pciide1:1:1: device timeout, c_bcount=32, c_skip=0
cd1: transfer error, downgrading to Ultra-DMA mode 1
cd1(pciide1:1:1): using PIO mode 4, Ultra-DMA mode 1 (using DMA data
transfers)
pciide1:1:1: lost interrupt
        type: atapi tc_bcount: 32 tc_skip: 0
pciide1:1:1: bus-master DMA error: missing interrupt, status=0x1
pciide1:1:1: device timeout, c_bcount=32, c_skip=0
cd1: transfer error, downgrading to DMA mode 2
cd1(pciide1:1:1): using PIO mode 4, DMA mode 2 (using DMA data transfers)
pciide1:1:1: lost interrupt
        type: atapi tc_bcount: 32 tc_skip: 0
pciide1:1:1: bus-master DMA error: missing interrupt, status=0x1
pciide1:1:1: device timeout, c_bcount=32, c_skip=0
cd1: transfer error, downgrading to PIO mode 4
cd1(pciide1:1:1): using PIO mode 4

 \___

There are two IDE controllers in this machine.  One is the motherboard VIA
chipset, to which a CD-ROM is attached, and the other is a Maxtor PCI
board to which the hard drive and DVD are attached.  (I bought the
controller card when people kept telling me that my disk performance
problems were due to VIA.  In fact, the seperate controller didn't help at
all and the drive was simply failing in some way.  I kept the card,
though, since it lets my drive run a little better.  (^&  Besides, it's
nice to have a spare part or two...this box is kind of collecting
hardware, I s'pose; it'll probably perform celluar division at some point
and I'll have another computer.  (^&)  (ramble)

(dmesg.boot a ways below)

My questions are:

 * Is this at all normal or expected?

 * Is DMA or UDMA important for DVD playback?  (Even on my PCI video card,
   I get 18fps in 16bpp, or 12fps in 24bpp, according to Ogle.  I probably
   won't be doing much else with my computer while watching a movie,
   so as long as I can get full frame rates with an eventual AGP card,
   this isn't a huge matter.)

I haven't tried booting 1.6 BETA with it yet.  Nor have I tried switching
cables to the other IDE controller.  I'm going to grab a 1.6 BETA kernel
after I send this, though...but I'm bothered that I'm seeing this under
1.5


Okay, dmesg.boot (avail memory is ``low'' because I ramped up the SYSV
shared memory buffers to make Ogle happy):


 /~~~ dmesg.boot

NetBSD 1.5.2 (rkrGENERIC) #3: Sun Jul 21 22:50:40 CDT 2002
    root@hermes:/usr/src/sys/arch/i386/compile/rkrGENERIC
cpu0: AMD Athlon Model 4 (Thunderbird) (686-class), 800.07 MHz
total memory = 127 MB
avail memory = 91060 KB
using 8150 buffers containing 32600 KB of memory
BIOS32 rev. 0 found at 0xfb220
mainbus0 (root)
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 0 function 0
pchb0: VIA Technologies product 0x0305 (rev. 0x02)
ppb0 at pci0 dev 1 function 0: VIA Technologies product 0x8305 (rev. 0x00)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
pcib0 at pci0 dev 7 function 0
pcib0: VIA Technologies VT82C686A (Apollo KX133) PCI-ISA Bridge (rev. 0x22)
pciide0 at pci0 dev 7 function 1: VIA Technologies VT82C686A (Apollo KX133) ATA66 controller
pciide0: bus-master DMA support present
pciide0: primary channel configured to compatibility mode
pciide0: disabling primary channel (no drives)
pciide0: secondary channel configured to compatibility mode
atapibus0 at pciide0 channel 1
cd0 at atapibus0 drive 0: <ATAPI 48X CDROM, 48XCDROM Ver3.30, VER-3.3>
type 5 cdrom removable
cd0: 32-bit data port
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2
pciide0: secondary channel interrupting at irq 15
cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2 (using DMA data transfers)
uhci0 at pci0 dev 7 function 2: VIA Technologies VT83C572 USB Controller (rev. 0x10)
uhci0: interrupting at irq 5
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: VIA Technologie UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1 at pci0 dev 7 function 3: VIA Technologies VT83C572 USB Controller (rev. 0x10)
uhci1: interrupting at irq 5
usb1 at uhci1: USB revision 1.0
uhub1 at usb1
uhub1: VIA Technologie UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
viapm0 at pci0 dev 7 function 4
auvia0 at pci0 dev 7 function 5: VIA VT82C686A AC'97 Audio (rev H)
auvia0: interrupting at irq 10
auvia0: ICE17 codec; headphone, 18 bit DAC, 18 bit ADC, Unknown 3D
audio0 at auvia0: full duplex, mmap, independent
ahc0 at pci0 dev 8 function 0
ahc0: interrupting at irq 11
ahc0: aic7860 Single Channel A, SCSI Id=7, 3/255 SCBs
scsibus0 at ahc0 channel 0: 8 targets, 8 luns per target
pciide1 at pci0 dev 9 function 0: Promise Ultra100/ATA Bus Master IDE Accelerator (rev. 0x02)
pciide1: bus-master DMA support present
pciide1: primary channel configured to native-PCI mode
pciide1: using irq 10 for native-PCI interrupt
wd0 at pciide1 channel 0 drive 0: <Maxtor 52049H4>
wd0: drive supports 16-sector pio transfers, lba addressing
wd0: 19541 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 40020624 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5
wd0(pciide1:0:0): using PIO mode 4, Ultra-DMA mode 5 (using DMA data transfers)
pciide1: secondary channel configured to native-PCI mode
atapibus1 at pciide1 channel 1
cd1 at atapibus1 drive 1: <LG       DVD-ROM DRD-8160B, , 1.01> type 5
cdrom removable
cd1: 32-bit data port
cd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2
cd1(pciide1:1:1): using PIO mode 4, Ultra-DMA mode 2 (using DMA data transfers)
tlp0 at pci0 dev 13 function 0: Macronix MX98715AEC-x Ethernet, pass 2.5
tlp0: interrupting at irq 10
tlp0: Ethernet address 00:80:c6:f9:bc:35
tlp0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX
vga0 at pci0 dev 14 function 0: S3 ViRGE/DX (rev. 0x01)
wsdisplay0 at vga0: console (80x25, vt100 emulation)
isa0 at pcib0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pmsi0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pmsi0 mux 0
lpt0 at isa0 port 0x378-0x37b irq 7
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
sysbeep0 at pcppi0
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
npx0 at isa0 port 0xf0-0xff: using exception 16
isapnp0: no ISA Plug 'n Play devices found
viaenv0 at viapm0
biomask ef65 netmask ef65 ttymask ffe7
scsibus0: waiting 2 seconds for devices to settle...
ahc0: target 3 synchronous at 10.0MHz, offset = 0xf
cd2 at scsibus0 target 3 lun 0: <YAMAHA, CRW6416S, 1.0c> SCSI2 5/cdrom removable
ahc0: target 4 synchronous at 10.0MHz, offset = 0xf
st0 at scsibus0 target 4 lun 0: <Seagate, STT8000N, 3.22> SCSI2 1/sequential removable
st0: drive empty
IPsec: Initialized Security Association Processing.
ulpt0 at uhub0 port 1 configuration 1 interface 0
ulpt0: vendor 0x0832 product 0x5850, rev 1.00/1.04, addr 2, iclass 7/1
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0

 \___ dmesg.boot


  ``I probably don't know what I'm talking about.'' --rauch@math.rice.edu