[clue] [tech] linux driver for old IDE chipset?
Jim Ockers
ockers at ockers.net
Thu Jun 9 15:14:00 MDT 2011
Hi CLUEbies,
It is unusual for something like this to stump me but I just can't seem
to figure out how it is supposed to work. I have a Linux system with
the following IDE controller:
[root] # lspci
00:0b.0 Host bridge: SGS Thomson Microelectronics: Unknown device 020a
00:0c.0 ISA bridge: SGS Thomson Microelectronics: Unknown device 0210
00:0d.0 IDE interface: SGS Thomson Microelectronics: Unknown device 0228
00:0e.0 USB Controller: SGS Thomson Microelectronics: Unknown device 0230
00:1f.0 Ethernet controller: Intel Corporation 82557 [Ethernet Pro 100]
(rev 08)
This is a STPC Atlas IDE from STMicroelectronics (formerly SGS Thomson
Microelectronics). It is PCI id 104a:0228.
The Linux driver used for this apparently doesn't allow or support DMA,
I think. I really need to turn DMA on. Does anyone out there have any
ideas? It's a long shot. Putting ide0=dma on the kernel boot command
line doesn't work either.
Here are the dmesg from an old Linux kernel running on this chipset:
Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
hdb: C/H/S=0/0/0 from BIOS ignored
hda: FUJITSU MHV2080AH, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: attached ide-disk driver.
hda: host protected area => 1
hda: 156301488 sectors (80026 MB) w/8192KiB Cache, CHS=9729/255/63
Partition check:
hda: hda1 hda2 < hda5 hda6 hda7 >
Notice how DMA is not apparently supported - it doesn't say hda=DMA or
anything. The disk itself supports DMA. Attempts to turn on DMA with
hdparm fail:
[root]# hdparm -i /dev/hda
/dev/hda:
Model=FUJITSU MHV2080AH, FwRev=000000A0, SerialNo=NT61T7C30EC2
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=-66060037, LBA=yes, LBAsects=156301488
IORDY=yes, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 *mdma2 udma0 udma1 udma2 udma3 udma4 udma5
[root]# hdparm -d1 -X64 /dev/hda
/dev/hda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
setting xfermode to 64 (UltraDMA mode0)
using_dma = 0 (off)
[root]# hdparm -d1 -X65 /dev/hda
/dev/hda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
setting xfermode to 65 (UltraDMA mode1)
using_dma = 0 (off)
[root]# hdparm -d1 -X66 /dev/hda
/dev/hda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
setting xfermode to 66 (UltraDMA mode2)
using_dma = 0 (off)
Thanks,
Jim
--
Jim Ockers, P.Eng. (ockers at ockers.net)
Contact info: http://www.ockers.net/msi.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cluedenver.org/pipermail/clue/attachments/20110609/f84204f2/attachment.html
More information about the clue
mailing list