On Mon, Jan 02, 2012 at 04:35:39PM -0500, Loganaden Velvindron wrote:
> Attaching any CDROM/DVDRIVE causes this error message
> when mouting a disk.
> 
> cd0(pciide0:0:1): timeout
> type: atapi
> c_bcount : 2048
> c_skip : 0
> 
> The machine then freezes and a hard reboot is necessary.
> 
> This issue has been reported by 2 users in the past:
> http://archives.neohapsis.com/archives/openbsd/2005-11/0782.html
> ``
> > > cd0(pciide0:0:0): timeout
> > > type: atapi
> > > c_bcount: 0
> > > c_skip: 0
> > > cd0(pciide0:0:0): timeout
> > > type: atapi
> > > c_bcount: 32
> 
> A workaround was to disable pciide:
> UKC> disable pciide*
> 59 pciide* disabled
> UKC> quit
> Continuing... 
> 
> Looking closely, these problems occur with this variant of the SiS 5513
> EIDE chipset:
> pciide0 at pci0 dev 2 function 5 "SiS 5513 EIDE" rev 0x01: 5597/5598: DMA, 
> chann
> el 0 wired to compatibility, channel 1 wired to compatibility
> atapiscsi0 at pciide0 channel 0 drive 1
> scsibus0 at atapiscsi0: 2 targets
> cd0 at scsibus0 targ 0 lun 0: <ATAPI, CD-ROM 52X, 172A> ATAPI 5/cdrom 
> removable
> cd0(pciide0:0:1): using PIO mode 4, DMA mode 2
> 
> By disabling dma, the issue goes away.
> 
> Looking at pciide.c shows that there are 2 variants of the 5597/5598:
> The one with rev 0xd0 which support UDMA and the previous versions
> with no support for UltraDMA. To be more precise UDMA exists but it's
> buggy.
> 
> It appears that rev 0x01 has a buggy DMA support. Falling back to PIO
> works fine. The diff disables DMA silently but not enabling DMA capabilities
> on rev 0x01 of 5597/5598.

Disabling DMA is quite a large hammer, it seems more likely the timings need
to be adjusted or some config space io needs to happen.  I can't see any
revision specific errata in the FreeBSD/Linux code.

Reply via email to