Subject: Re: fixes for wdc_obio.c [3]
To: Manuel Bouyer <bouyer@antioche.lip6.fr>
From: Markus W Kilbinger <kilbi@rad.rwth-aachen.de>
List: port-macppc
Date: 07/30/2001 20:03:19
>>>>> "Manuel" == Manuel Bouyer <bouyer@antioche.lip6.fr> writes:

    Manuel> Please apply the attached patch to the wdc_obio.c I posted
    Manuel> yesterday

My tibook shows:

  [...]
  wdc0 at obio0 offset 0x1f000 irq 19: DMA transfer
  wd0 at wdc0 channel 0 drive 0: <IBM-DJSA-220>
  wd0: drive supports 16-sector PIO transfers, LBA addressing
  wd0: 19077 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 39070080 sectors
  wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 4 (Ultra/66)
  ata4 conf = 0x1d8328ca, cyc = 4 (25 ns), act = 14 (100 ns), inact = 6
  wd0(wdc0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 4 (Ultra/66) (using DMA data transfers)
  wdc1 at obio0 offset 0x20000 irq 20: DMA transfer
  atapibus0 at wdc1 channel 0: 2 targets
  cd0 at atapibus0 drive 0: <MATSHITADVD-ROM SR-8187, , HA15> type 5 cdrom removable
  cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
  conf = 0x11823, cyc = 4 (120 ns), act = 3 (70 ns), inact = 1
  cd0(wdc1:0:0): using PIO mode 4, DMA mode 2 (using DMA data transfers)
  wdc2 at obio0 offset 0x21000 irq 21: DMA transfer

At the first stage of accessing the disk I get:

  wdc0:0:0: lost interrupt
  	  type: ata tc_bcount: 512 tc_skip: 0
  wdc0:0:0: intr with DRQ (st=0x58)
  wd0: transfer error, downgrading to Ultra-DMA mode 2
  ata4 conf = 0x10328ca, cyc = 8 (55 ns), act = 0 (0 ns), inact = 6
  wd0(wdc0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
  wd0c: device timeout reading fsbn 0 (wd0 bn 0; cn 0 tn 0 sn 0), retrying
  wdc0:0:0: lost interrupt
  	  type: ata tc_bcount: 512 tc_skip: 0
  wdc0:0:0: intr with DRQ (st=0x58)
  wd0: transfer error, downgrading to Ultra-DMA mode 1
  ata4 conf = 0x14328ca, cyc = 10 (75 ns), act = 0 (0 ns), inact = 6
  wd0(wdc0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 1 (using DMA data transfers)
  wd0c: device timeout reading fsbn 0 (wd0 bn 0; cn 0 tn 0 sn 0), retrying
  wdc0:0:0: lost interrupt
  	  type: ata tc_bcount: 512 tc_skip: 0
  wdc0:0:0: intr with DRQ (st=0x58)
  wd0: transfer error, downgrading to DMA mode 2
  ata4 conf = 0x328ca, cyc = 16 (120 ns), act = 10 (70 ns), inact = 6
  wd0(wdc0:0:0): using PIO mode 4, DMA mode 2 (using DMA data transfers)
  wd0c: device timeout reading fsbn 0 (wd0 bn 0; cn 0 tn 0 sn 0), retrying
  wd0: soft error (corrected)

But then it works! Not quite effectivly I guess...

Markus.