lkml.org 
[lkml]   [1998]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: UDMA is NFG on Ultra33 (CMD646 in disguise)

Wait!!!!!!!!!!!!!!
Mark I just solved the dynamic tuning of the chipset.......
ide0/1 have bios v1.26
ide2/3 have no bios installed.........
Before you bash the card........try the latest version of the driver.
Now if you have bios v1.20 you will not be able to cross tune cards.

Speed reports........
/dev/hde: tuned 1/4 of chipset
Timing buffer-cache reads: 128 MB in 3.30 seconds =38.79 MB/sec
Timing buffered disk reads: 64 MB in 14.61 seconds = 4.38 MB/sec

/dev/hdg: untuned 1/4 of chipset
Timing buffer-cache reads: 128 MB in 3.28 seconds =39.02 MB/sec
Timing buffered disk reads: 64 MB in 35.97 seconds = 1.78 MB/sec

/dev/hdg: tuned 1/4 of chipset
Timing buffer-cache reads: 128 MB in 3.31 seconds =38.67 MB/sec
Timing buffered disk reads: 64 MB in 14.60 seconds = 4.38 MB/sec

Note that these are UDMA identical drives that only tuned to DMA mode 2
multi-word above.........below are correctly tuned drives......
/dev/hde: fully tuned chipset
Timing buffer-cache reads: 128 MB in 3.32 seconds =38.55 MB/sec
Timing buffered disk reads: 64 MB in 5.17 seconds =12.38 MB/sec

/dev/hdg: fully tuned chipset
Timing buffer-cache reads: 128 MB in 3.29 seconds =38.91 MB/sec
Timing buffered disk reads: 64 MB in 5.17 seconds =12.38 MB/sec

If this is not hauling-bits-bytes-butts............
Below is a full syslog report with decoded functions..........
> PDC20246: IDE controller on PCI bus 00 dev a0
> PDC20246: not 100ative mode: will probe irqs later
> PDC20246: ROM enabled at 0xfebd0000
> PDC20246: (U)DMA Burst Bit ENABLED Primary PCI Mode Secondary PCI Mode.
> ide0: BM-DMA at 0xef80-0xef87, BIOS settings: hda:DMA, hdb:DMA
> ide1: BM-DMA at 0xef88-0xef8f, BIOS settings: hdc:DMA, hdd:DMA
> PDC20246: IDE controller on PCI bus 00 dev 98
> PDC20246: not 100ative mode: will probe irqs later
> PDC20246: ROM enabled at 0xfebc0000

Note that this is a vitual bios gotten from the primary card....
> PDC20246: (U)DMA Burst Bit ENABLED Primary PCI Mode Secondary PCI Mode.
> ide2: BM-DMA at 0xef40-0xef47, BIOS settings: hde:DMA, hdf:DMA
> ide3: BM-DMA at 0xef48-0xef4f, BIOS settings: hdg:DMA, hdh:DMA
> PIIX3: IDE controller on PCI bus 00 dev 39
> PIIX3: device not capable of full native PCI mode
> PIIX3: device disabled (BIOS)
> hda: QUANTUM FIREBALL ST6.4A, ATA DISK drive
> hdb: QUANTUM FIREBALL ST3.2A, ATA DISK drive
> hdc: IOMEGA ZIP 100 ATAPI, ATAPI FLOPPY drive
> hdd: HP COLORADO 8GB, ATAPI TAPE drive
> hde: Maxtor 90680D4, ATA DISK drive
> hdg: Maxtor 90680D4, ATA DISK drive
> ide0 at 0xeff0-0xeff7,0xefe6 on irq 19
> ide1 at 0xefa8-0xefaf,0xebe6 on irq 19
> ide2 at 0xefa0-0xefa7,0xef7e on irq 18
> ide3 at 0xef68-0xef6f,0xef66 on irq 18
> PDC20246: Drive0 0x004123f0.
> A Register SYNC_IN ERRDY_EN IORDY_EN PREFETCH_EN PIO(A) = 0
> AP 11110000
> B Register MB0 DMA(B) = 1 PB1 PB0 PIO(B) = 3
> BP 00100011
> C Register IORDYp MC0 DMA(C) = 1
> CP 01000001
> D Register
> DP 00000000
> hda: UDMA 2 drive0 0x004123f0 0x004123f0
^^^^^^^^^^ ^^^^^^^^^^
original re-tuned for verification

> PDC20246: (U)DMA Burst Bit ENABLED NOW!
> ide0: Primary MASTER Mode
> PDC20246: Drive1 0x004123f0.
> A Register SYNC_IN ERRDY_EN IORDY_EN PREFETCH_EN PIO(A) = 0
> AP 11110000
> B Register MB0 DMA(B) = 1 PB1 PB0 PIO(B) = 3
> BP 00100011
> C Register IORDYp MC0 DMA(C) = 1
> CP 01000001
> D Register
> DP 00000000
> hdb: UDMA 2 drive1 0x004123f0 0x004123f0
^^^^^^^^^^ ^^^^^^^^^^
original re-tuned for verification

> PDC20246: (U)DMA Burst Bit ENABLED NOW!
> ide0: Primary MASTER Mode
> PDC20246: Drive0 0x004ff3c4.
> A Register SYNC_IN ERRDY_EN IORDY_EN PREFETCH_EN PA2 PIO(A) = 4
> AP 11110100
> B Register MB0 DMA(B) = 1 PB1 PB0 PIO(B) = 3
> BP 00100011
> C Register IORDYp MC0 DMA(C) = 1
> CP 01000001
> D Register
> DP 00000000
> hde: UDMA 2 drive0 0x004ff3c4 0x004123f4
^^^^^^^^^^ ^^^^^^^^^^
original re-tuned

> PDC20246: (U)DMA Burst Bit ENABLED NOW!
> ide2: Primary MASTER Mode
> PDC20246: Drive2 0x004ff3c4.
> A Register SYNC_IN ERRDY_EN IORDY_EN PREFETCH_EN PA2 PIO(A) = 4
> AP 11110100
> B Register MB0 DMA(B) = 1 PB1 PB0 PIO(B) = 3
> BP 00100011
> C Register IORDYp MC0 DMA(C) = 1
> CP 01000001
> D Register
> DP 00000000
> hdg: UDMA 2 drive2 0x004ff3c4 0x004123f4
^^^^^^^^^^ ^^^^^^^^^^
original re-tuned

> PDC20246: (U)DMA Burst Bit ENABLED NOW!
> ide3: Secondary MASTER Mode
> PDC20246: Drive3 0x004ff304.
> PDC20246: Drive3 0x004ff304.
> A Register PA2 PIO(A) = 4
> AP 00000100
> B Register MB2 MB1 MB0 DMA(B) = 7 PIO_FORCED/PB4 PB1 PB0 PIO(B) = 3
> BP 11110011
> C Register IORDYp MC3 MC2 MC1 MC0 DMA(C) = 15
> CP 01001111
> D Register
> DP 00000000
> hdd: PIO4 Timing 4 drive3 0x004ff304 0x004ff304

Note that only DMA timings are set and PIO setting are native........
> hdd: DMA disabled

This is a report only......the ide-tape is DMA2 but not enabled,
thus we default to PIO settings............
Model=HP COLORADO 8GB, FwRev=2.040008, SerialNo=MX00108640
Config={ SpinMotCtl Removeable DTR<=5Mbs nonMagnetic }
RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=0(?), BuffSize=0kB, MaxMultSect=0
DblWordIO=no, maxPIO=2(fast), DMA=yes, maxDMA=2(fast)
(maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBA=yes, LBAsects=0
tDMA={min:120,rec:120}, DMA modes: sword0 sword1 sword2 mword0 mword1 mword2
IORDY=on/off, tPIO={min:240,w/IORDY:120}, PIO modes: mode3 mode4
id->capability 0x000f 00001111
id->field_valid 0x0002 00000010
id->eide_pio_modes 0x0003 00000011
id->dma_1word 0x0007 00000000|00000111
id->dma_mword 0x0007 00000000|00000111
id->dma_ultra 0x0000 00000000|00000000
> ide-tape: hdd: overriding capabilities->speed (assuming 650KB/sec)
> ide-tape: hdd: overriding capabilities->max_speed (assuming 650KB/sec)
> PDC20246: Drive2 0x004ff3c4.
> A Register SYNC_IN ERRDY_EN PA2 PIO(A) = 4
> AP 11000100
> B Register MB2 MB1 MB0 DMA(B) = 7 PIO_FORCED/PB4 PB1 PB0 PIO(B) = 3
> BP 11110011
> C Register IORDYp MC3 MC2 MC1 MC0 DMA(C) = 15
> CP 01001111
> D Register
> DP 00000000
> hdc: PIO0 Timing 7 drive2 0x004ff3c4 0x004ff3c4

Again ide-floppy..........same as ide-tape report.........
On Tue, 24 Nov 1998, Mark Lord wrote:

> Hi Guys.
>
> I dunno what to make of it, other than
> "UDMA is broken on the Promise Ultra33" card.
>
> I have had one of these cards for over a year now,
> but only ever used it for secondary drives.
>
> I recently moved my primary filesystem over to
> a drive on the Ultra33 card, and Boom!

Name your BIOS version Mark, older than 1.20 I have no information.

> Data corruption.
>
> I have experimented extensively with it now,
> verifying correct initialization of the chipset,
> and playing with the PCI timing bits in the "System Control"
> register -- no lucko.

Grab the ide.update test and let me know......
You have to set the pci-config space and then the xfer-rate at init-time.
Donking (technical lingo) with the config space afterwards on the oldest
bios I have (v1.20) goes KABOOM-CRASH-HALT but data is safe.
> The corruption seems to happen only when there is contention
> between the Ultra33 and another PCI bus-master.
>
> The card still seems to work flawlessly in PIO (PCI target) mode,
> so that's exactly how I'll be using it from now own.
> Much slower though!
>
> I suppose it is no wonder that the card is buggy,
> given that the PDC20246 chip is actually a re-labelled CMD646 chip
> (pin 2 at power-on selects between CMD646 and PDC20246 modes).
>
> Everybody remember the CMD640..? Same designers worked on this one.
> --
> mlord@pobox.com
>

Cheers,
Andre Hedrick
The IDE-FNG for Linux
The APC UPS Specialist for Linux

http://www.dyer.vanderbilt.edu/server/udma/
http://www.dyer.vanderbilt.edu/server/apcupsd/apcupsd-3.5.0.bin.tar.gz






-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:45    [from the cache]
©2003-2011 Jasper Spaans