linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: DMA gone on ALI 1533
@ 2003-05-22 20:12 Peter
  2003-05-22 20:36 ` Bartlomiej Zolnierkiewicz
  2003-07-14  7:26 ` Linux v2.6.0-test1 Peter
  0 siblings, 2 replies; 8+ messages in thread
From: Peter @ 2003-05-22 20:12 UTC (permalink / raw)
  To: linux-kernel


I had included kernel support for the ALI 15X3 chipset, but as a module --
and it obviously didn't load. If I include the module in /etc/modules, it
loads too late (details below). I'm assuming this means "make menuconfig"
mistakenly provides the module option? I've recompiled it into the kernel
and got DMA back (although only dma2, as before) -- thanks for the quick
feedback!

Cheers,
Peter


Details on what happens when you compile ALI 15X3 as a module -- I'm 
guessing this should not be an option?

A. Should the module have loaded automatically? I had 

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
CONFIG_OBSOLETE_MODPARM=y
# CONFIG_MODVERSIONS is not set
CONFIG_KMOD=y

B. I then included the module in /etc/modules and got this in dmesg:
   
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 66MHz system bus speed for PIO modes
hda: IC25N040ATCS04-0, ATA DISK drive
hdc: MATSHITACD-RW CW-8121, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: host protected area => 1
hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=77520/16/63
 
-- that is to say, no change in first pass detection. Then this:

ALI15X3: IDE controller at PCI slot 00:10.0
ACPI: No IRQ known for interrupt pin A of device 00:10.0
ALI15X3: chipset revision 196
ALI15X3: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0x1840-0x1847, BIOS settings: hda:DMA, hdb:pio
    ide1: BM-DMA at 0x1848-0x184f, BIOS settings: hdc:pio, hdd:pio
ide0: I/O resource 0x1F0-0x1F0 not free.

I guess it was too late. 

So no performance improvement:
# hdparm -tT /dev/hda

/dev/hda:
 Timing buffer-cache reads:   128 MB in  0.46 seconds =275.90 MB/sec
 Timing buffered disk reads:  64 MB in 19.69 seconds =  3.25 MB/sec

lsmod:
alim15x3                7052  1 [unsafe]





^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: DMA gone on ALI 1533
  2003-05-22 20:12 DMA gone on ALI 1533 Peter
@ 2003-05-22 20:36 ` Bartlomiej Zolnierkiewicz
  2003-07-14  7:26 ` Linux v2.6.0-test1 Peter
  1 sibling, 0 replies; 8+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2003-05-22 20:36 UTC (permalink / raw)
  To: Peter; +Cc: linux-kernel


On Thu, 22 May 2003, Peter wrote:

> I had included kernel support for the ALI 15X3 chipset, but as a module --
> and it obviously didn't load. If I include the module in /etc/modules, it
> loads too late (details below). I'm assuming this means "make menuconfig"
> mistakenly provides the module option? I've recompiled it into the kernel

Module support for IDE chipsets is currently unfinished/broken.
Lot of things need fixing before we will have _correct_ module support.
If we won't manage to do it for 2.6, option for compiling them as
modules will backed out.

> and got DMA back (although only dma2, as before) -- thanks for the quick
> feedback!
>
> Cheers,
> Peter

Cheers,
--
Bartlomiej


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Linux v2.6.0-test1
  2003-05-22 20:12 DMA gone on ALI 1533 Peter
  2003-05-22 20:36 ` Bartlomiej Zolnierkiewicz
@ 2003-07-14  7:26 ` Peter
  2003-07-14 17:59   ` Trying to get DMA working with IDE alim15x3 controller Peter
  1 sibling, 1 reply; 8+ messages in thread
From: Peter @ 2003-07-14  7:26 UTC (permalink / raw)
  To: linux-kernel


The kernel compiled with no errors. On booting, I got this:

ACPI: Subsystem revision 20030619
ACPI breakpoint: Executed AML Breakpoint opcode

If I just wanted to boot, which option should I disable?

This is a vpr matrix 200a5 laptop with an ALi M1671 chipset and various 
ACPI options enabled, including CONFIG_X86_P4_CLOCKMOD=m. Details below.

2.5.69 has been running fine for a long time now, but there are some new 
ACPI options. 

Cheers,
Peter


System:

00:00.0 Host bridge: ALi Corporation M1671 Super P4 Northbridge [AGP4X,PCI and SDR/DDR] (rev 02)
00:01.0 PCI bridge: ALi Corporation PCI to AGP Controller
00:06.0 Multimedia audio controller: ALi Corporation M5451 PCI AC-Link Controller Audio Device (rev 02)
00:07.0 ISA bridge: ALi Corporation M1533 PCI to ISA Bridge [Aladdin IV]
00:09.0 Network controller: Harris Semiconductor Prism 2.5 Wavelan chipset (rev 01)
00:0a.0 CardBus bridge: Texas Instruments PCI1410 PC card Cardbus Controller (rev 02)
00:0b.0 USB Controller: VIA Technologies, Inc. USB (rev 50)
00:0b.2 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 51)
00:0c.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
00:10.0 IDE interface: ALi Corporation M5229 IDE (rev c4)
00:11.0 Bridge: ALi Corporation M7101 PMU
00:12.0 Ethernet controller: National Semiconductor Corporation DP83815 (MacPhyter) Ethernet Controller
01:00.0 VGA compatible controller: nVidia Corporation NV17 [GeForce4 420 Go 32M] (rev a3)


Configuration:

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
CONFIG_SOFTWARE_SUSPEND=y

#
# ACPI Support
#
CONFIG_ACPI=y
# CONFIG_ACPI_HT_ONLY is not set
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_TOSHIBA is not set
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_BUS=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y
# CONFIG_APM is not set

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
# CONFIG_CPU_FREQ_PROC_INTF is not set
CONFIG_CPU_FREQ_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_24_API is not set
CONFIG_CPU_FREQ_TABLE=y

#
# CPUFreq processor drivers
#
# CONFIG_X86_ACPI_CPUFREQ is not set
# CONFIG_X86_POWERNOW_K6 is not set
# CONFIG_X86_POWERNOW_K7 is not set
# CONFIG_X86_GX_SUSPMOD is not set
# CONFIG_X86_SPEEDSTEP_ICH is not set
# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
CONFIG_X86_P4_CLOCKMOD=m
# CONFIG_X86_LONGRUN is not set
# CONFIG_X86_LONGHAUL is not set




^ permalink raw reply	[flat|nested] 8+ messages in thread

* Trying to get DMA working with IDE alim15x3 controller
  2003-07-14  7:26 ` Linux v2.6.0-test1 Peter
@ 2003-07-14 17:59   ` Peter
  0 siblings, 0 replies; 8+ messages in thread
From: Peter @ 2003-07-14 17:59 UTC (permalink / raw)
  To: linux-kernel


This is on the ALim15x3 with the 2.5.69 kernel on a vpr matrix 200a5 
laptop -- I just did this to get DMA5:

    *  set ide0=ata66 in lilo to get the 100MHz bus and DMA5
    *  add "hdparm -c 1 -m 16 -S 242 -k 1 /dev/hda" to /etc/init.d/bootmisc.sh

Nice results:

hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=77520/16/63, UDMA(100)

# hdparm -i /dev/hda

    /dev/hda:

     Model=IC25N040ATCS04-0, FwRev=CA4OA71A, SerialNo=CSH405DCLW5UVB
     Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
     RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
     BuffType=DualPortCache, BuffSize=1768kB, MaxMultSect=16, MultSect=16
     CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78140160
     IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
     PIO modes:  pio0 pio1 pio2 pio3 pio4
     DMA modes:  mdma0 mdma1 mdma2
     UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
     AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
     Drive conforms to: ATA/ATAPI-5 T13 1321D revision 3:  2 3 4 5

# hdparm -tT /dev/hda

    /dev/hda:
     Timing buffer-cache reads:   128 MB in  0.45 seconds =283.23 MB/sec
     Timing buffered disk reads:  64 MB in  3.23 seconds = 19.79 MB/sec

# hdparm /dev/hda

    /dev/hda:
     multcount    = 16 (on)
     IO_support   =  1 (32-bit)
     unmaskirq    =  0 (off)
     using_dma    =  1 (on)
     keepsettings =  1 (on)
     readonly     =  0 (off)
     readahead    = 256 (on)
     geometry     = 11984/16/63, sectors = 78140160, start = 0

Cheers,
Peter



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: DMA gone on ALI 1533
  2003-05-22 15:46 DMA gone on ALI 1533 Peter
@ 2003-05-22 16:09 ` Bartlomiej Zolnierkiewicz
  0 siblings, 0 replies; 8+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2003-05-22 16:09 UTC (permalink / raw)
  To: Peter; +Cc: linux-kernel


It seems you forgot to compile in support for ALI chipset.
Make sure you have CONFIG_BLK_DEV_ALI15X3=y in your config.
If it doesn't help let me know.

Please also read below...

On Thu, 22 May 2003, Peter wrote:

> The 2.5.69 kernel kicks butt -- Debian is now releasing a version in sid
> and it runs stable on my vpr matrix 205A laptop. What works: nfs, samba,
> v4l, the nVidia driver (patched), everything I've tested so far. And sound
> -- the ALSA sound is great (headphone jack still dead). ACPI now detects
> my battery, and I'm working on software suspend.
>
> The ALI chipset (1671 northbridge, 1533 ISA bridge, 5229 IDE interface,
> 7101 bridge) gives me
> DMA 33 with 2.4.20:
>
>     hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=4864/255/63, UDMA(33)
>
> but no dma with 2.5.69.  Timing buffered disk reads now come in at
> 3.17MB/s -- in 2.4.20 I get 19.88 MB/sec. hdparm gives part number
> IC25N040ATCS04-0, a Travelstar 40GN, which I believe supports a 100MHz
> bus. The "idebus=66" never made a difference afaict.
>
> Aside from the slower harddrive (see details below), I've had no issues
> with this kernel.
>
> Is there a workaround for the dma, or something I'm missing? Incidentally,
> it would be handy to have a bit more information in dmesg, along the lines
> of the 2.4 kernel -- chipset, dma and bus speed per drive.
>
> Cheers,
> Peter
>
>
>
>
> dmesg 2.5.69:
>
> Kernel command line: root=/dev/hda5 ro hdc=scsi idebus=66 resume=/dev/hda6
> ide_setup: hdc=scsi
> ide_setup: idebus=66
> No local APIC present or hardware disabled
>
> PCI: PCI BIOS revision 2.10 entry at 0xfd88e, last bus=1
> PCI: Using configuration type 1
>
> PCI: Using ACPI for IRQ routing
> PCI: if you experience problems, try using option 'pci=noacpi' or even 'acpi=off'
>
> Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
> ide: Assuming 66MHz system bus speed for PIO modes
> hda: IC25N040ATCS04-0, ATA DISK drive
> hdc: MATSHITACD-RW CW-8121, ATAPI CD/DVD-ROM drive
> ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
> ide1 at 0x170-0x177,0x376 on irq 15
> hda: host protected area => 1
> hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=77520/16/63
>  hda: hda1 hda2 < hda5 hda6 hda7 > hda3 hda4
> ide-cd: passing drive hdc to ide-scsi emulation.

Interfaces were taken by generic code, no ALI driver here.

> hdparm -i claims to be using dma5:
>
> hdparm -i /dev/hda
>
> /dev/hda:
>
>  Model=IC25N040ATCS04-0, FwRev=CA4OA71A, SerialNo=CSH405DCLW5UVB
>  Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
>  RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
>  BuffType=DualPortCache, BuffSize=1768kB, MaxMultSect=16, MultSect=off
>  CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78140160
>  IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
>  PIO modes:  pio0 pio1 pio2 pio3 pio4
>  DMA modes:  mdma0 mdma1 mdma2
>  UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
>  AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
>  Drive conforms to: ATA/ATAPI-5 T13 1321D revision 3:  2 3 4 5
>
> In contrast, hdparm /dev/hda claims dma is off:
>
> # hdparm /dev/hda
>
> /dev/hda:
>  multcount    =  0 (off)
>  IO_support   =  0 (default 16-bit)
>  unmaskirq    =  0 (off)
>  using_dma    =  0 (off)
>  keepsettings =  0 (off)
>  readonly     =  0 (off)
>  readahead    = 256 (on)
>  geometry     = 11984/16/63, sectors = 78140160, start = 0
>
> The disk read speed in 2.5.69 indicates dma is off:
>
> # hdparm -tT /dev/hda
>
> /dev/hda:
>  Timing buffer-cache reads:   128 MB in  0.46 seconds =280.74 MB/sec
>  Timing buffered disk reads:  64 MB in 20.18 seconds =  3.17 MB/sec
>
> # cat kernel-2.5.69.config | grep DMA
> CONFIG_GENERIC_ISA_DMA=y
> CONFIG_BLK_DEV_IDEDMA_PCI=y
> # CONFIG_BLK_DEV_IDEDMA_FORCED is not set
> CONFIG_IDEDMA_PCI_AUTO=y
> # CONFIG_IDEDMA_ONLYDISK is not set
> CONFIG_BLK_DEV_IDEDMA=y
> # CONFIG_IDEDMA_PCI_WIP is not set
> CONFIG_BLK_DEV_ADMA=y
> CONFIG_IDEDMA_AUTO=y
> # CONFIG_IDEDMA_IVB is not set
> # CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
>
> Here's what 2.4.20 produces:
>
> Uniform Multi-Platform E-IDE driver Revision: 6.31
> ide: Assuming 66MHz system bus speed for PIO modes
> ALI15X3: IDE controller on PCI bus 00 dev 80
> PCI: No IRQ known for interrupt pin A of device 00:10.0.
> ALI15X3: chipset revision 196
> ALI15X3: not 100% native mode: will probe irqs later
>     ide0: BM-DMA at 0x1840-0x1847, BIOS settings: hda:DMA, hdb:pio
>     ide1: BM-DMA at 0x1848-0x184f, BIOS settings: hdc:pio, hdd:pio
> hda: IC25N040ATCS04-0, ATA DISK drive
> hdc: MATSHITACD-RW CW-8121, ATAPI CD/DVD-ROM drive
> ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
> ide1 at 0x170-0x177,0x376 on irq 15
> blk: queue c0335ee4, I/O limit 4095Mb (mask 0xffffffff)
> hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=4864/255/63, UDMA(33)

ALI driver compiled in.

> Disk information under 2.4.20 -- claims to be using dma2:
>
> Model=IC25N040ATCS04-0, FwRev=CA4OA71A, SerialNo=CSH405DCLW5UVB
> Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
> RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
> BuffType=DualPortCache, BuffSize=1768kB, MaxMultSect=16, MultSect=16
> CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78140160
> IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
> PIO modes: pio0 pio1 pio2 pio3 pio4
> DMA modes: mdma0 mdma1 mdma2
> UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5
> AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
> Drive conforms to: ATA/ATAPI-5 T13 1321D revision 3: 2 3 4 5
>
> This fits with the disk read speed:
>
> Timing buffer-cache reads: 128 MB in 0.44 seconds =290.91 MB/sec
> Timing buffered disk reads: 64 MB in 3.22 seconds = 19.88 MB/sec
>
> cat kernel-2.4.20-5-5.config | grep DMA

'grep DMA' is really not sufficient,
you need driver for your IDE chipset first.

Regards,
--
Bartlomiej

> CONFIG_BLK_DEV_IDEDMA_PCI=y
> # CONFIG_BLK_DEV_IDEDMA_FORCED is not set
> CONFIG_IDEDMA_PCI_AUTO=y
> # CONFIG_IDEDMA_ONLYDISK is not set
> CONFIG_BLK_DEV_IDEDMA=y
> # CONFIG_IDEDMA_PCI_WIP is not set
> # CONFIG_BLK_DEV_IDEDMA_TIMEOUT is not set
> # CONFIG_IDEDMA_NEW_DRIVE_LISTINGS is not set
> CONFIG_BLK_DEV_ADMA=y
> # CONFIG_HPT34X_AUTODMA is not set
> CONFIG_IDEDMA_AUTO=y
> # CONFIG_IDEDMA_IVB is not set
> # CONFIG_DMA_NONPCI is not set
> # CONFIG_SCSI_EATA_DMA is not set
> # CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
> # CONFIG_SOUND_DMAP is not set


^ permalink raw reply	[flat|nested] 8+ messages in thread

* DMA gone on ALI 1533
@ 2003-05-22 15:46 Peter
  2003-05-22 16:09 ` Bartlomiej Zolnierkiewicz
  0 siblings, 1 reply; 8+ messages in thread
From: Peter @ 2003-05-22 15:46 UTC (permalink / raw)
  To: linux-kernel


The 2.5.69 kernel kicks butt -- Debian is now releasing a version in sid
and it runs stable on my vpr matrix 205A laptop. What works: nfs, samba,
v4l, the nVidia driver (patched), everything I've tested so far. And sound
-- the ALSA sound is great (headphone jack still dead). ACPI now detects
my battery, and I'm working on software suspend.

The ALI chipset (1671 northbridge, 1533 ISA bridge, 5229 IDE interface, 
7101 bridge) gives me
DMA 33 with 2.4.20:

    hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=4864/255/63, UDMA(33)

but no dma with 2.5.69.  Timing buffered disk reads now come in at
3.17MB/s -- in 2.4.20 I get 19.88 MB/sec. hdparm gives part number
IC25N040ATCS04-0, a Travelstar 40GN, which I believe supports a 100MHz
bus. The "idebus=66" never made a difference afaict.

Aside from the slower harddrive (see details below), I've had no issues 
with this kernel.

Is there a workaround for the dma, or something I'm missing? Incidentally,
it would be handy to have a bit more information in dmesg, along the lines
of the 2.4 kernel -- chipset, dma and bus speed per drive.

Cheers,
Peter




dmesg 2.5.69:

Kernel command line: root=/dev/hda5 ro hdc=scsi idebus=66 resume=/dev/hda6
ide_setup: hdc=scsi
ide_setup: idebus=66
No local APIC present or hardware disabled

PCI: PCI BIOS revision 2.10 entry at 0xfd88e, last bus=1
PCI: Using configuration type 1

PCI: Using ACPI for IRQ routing
PCI: if you experience problems, try using option 'pci=noacpi' or even 'acpi=off'

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 66MHz system bus speed for PIO modes
hda: IC25N040ATCS04-0, ATA DISK drive
hdc: MATSHITACD-RW CW-8121, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: host protected area => 1
hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=77520/16/63
 hda: hda1 hda2 < hda5 hda6 hda7 > hda3 hda4
ide-cd: passing drive hdc to ide-scsi emulation.

hdparm -i claims to be using dma5:

hdparm -i /dev/hda

/dev/hda:

 Model=IC25N040ATCS04-0, FwRev=CA4OA71A, SerialNo=CSH405DCLW5UVB
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=DualPortCache, BuffSize=1768kB, MaxMultSect=16, MultSect=off
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78140160
 IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
 AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-5 T13 1321D revision 3:  2 3 4 5

In contrast, hdparm /dev/hda claims dma is off:

# hdparm /dev/hda

/dev/hda:
 multcount    =  0 (off)
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  0 (off)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 geometry     = 11984/16/63, sectors = 78140160, start = 0

The disk read speed in 2.5.69 indicates dma is off:

# hdparm -tT /dev/hda

/dev/hda:
 Timing buffer-cache reads:   128 MB in  0.46 seconds =280.74 MB/sec
 Timing buffered disk reads:  64 MB in 20.18 seconds =  3.17 MB/sec

# cat kernel-2.5.69.config | grep DMA
CONFIG_GENERIC_ISA_DMA=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_PCI_WIP is not set
CONFIG_BLK_DEV_ADMA=y
CONFIG_IDEDMA_AUTO=y
# CONFIG_IDEDMA_IVB is not set
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set

Here's what 2.4.20 produces:

Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 66MHz system bus speed for PIO modes
ALI15X3: IDE controller on PCI bus 00 dev 80
PCI: No IRQ known for interrupt pin A of device 00:10.0.
ALI15X3: chipset revision 196
ALI15X3: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0x1840-0x1847, BIOS settings: hda:DMA, hdb:pio
    ide1: BM-DMA at 0x1848-0x184f, BIOS settings: hdc:pio, hdd:pio
hda: IC25N040ATCS04-0, ATA DISK drive
hdc: MATSHITACD-RW CW-8121, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
blk: queue c0335ee4, I/O limit 4095Mb (mask 0xffffffff)
hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=4864/255/63, UDMA(33)

Disk information under 2.4.20 -- claims to be using dma2:

Model=IC25N040ATCS04-0, FwRev=CA4OA71A, SerialNo=CSH405DCLW5UVB
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=DualPortCache, BuffSize=1768kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78140160
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5
AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
Drive conforms to: ATA/ATAPI-5 T13 1321D revision 3: 2 3 4 5

This fits with the disk read speed:

Timing buffer-cache reads: 128 MB in 0.44 seconds =290.91 MB/sec
Timing buffered disk reads: 64 MB in 3.22 seconds = 19.88 MB/sec

cat kernel-2.4.20-5-5.config | grep DMA
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_PCI_WIP is not set
# CONFIG_BLK_DEV_IDEDMA_TIMEOUT is not set
# CONFIG_IDEDMA_NEW_DRIVE_LISTINGS is not set
CONFIG_BLK_DEV_ADMA=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_IDEDMA_IVB is not set
# CONFIG_DMA_NONPCI is not set
# CONFIG_SCSI_EATA_DMA is not set
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
# CONFIG_SOUND_DMAP is not set



^ permalink raw reply	[flat|nested] 8+ messages in thread

* DMA gone on ALI 1533
@ 2003-05-22 15:39 Peter
  2003-05-22 15:24 ` Alan Cox
  0 siblings, 1 reply; 8+ messages in thread
From: Peter @ 2003-05-22 15:39 UTC (permalink / raw)
  To: linux-kernel


The 2.5.69 kernel kicks butt -- Debian is now releasing a version in sid
and it runs stable on my vpr matrix 205A laptop. What works: nfs, samba,
v4l, the nVidia driver (patched), everything I've tested so far. And sound
-- the ALSA sound is great (headphone jack still dead). ACPI now detects
my battery, and I'm working on software suspend.

The ALI chipset (1671 northbridge, 1533 ISA bridge, 5229 IDE interface,
7101 bridge) gives me DMA 33 with 2.4.20:

    hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=4864/255/63, UDMA(33)

but no dma with 2.5.69.  Timing buffered disk reads now come in at
3.17MB/s -- in 2.4.20 I get 19.88 MB/sec. hdparm gives part number
IC25N040ATCS04-0, a Travelstar 40GN, which I believe supports a 100MHz
bus. The "idebus=66" never made a difference afaict.

Aside from the slower harddrive (see details below), I've had no issues
with this kernel.

Is there a workaround for the dma, or something I'm missing? Incidentally,
it would be handy to have a bit more information in dmesg, along the lines
of the 2.4 kernel -- chipset, dma and bus speed per drive.

Cheers,
Peter




dmesg 2.5.69:

Kernel command line: root=/dev/hda5 ro hdc=scsi idebus=66 resume=/dev/hda6
ide_setup: hdc=scsi
ide_setup: idebus=66
No local APIC present or hardware disabled

PCI: PCI BIOS revision 2.10 entry at 0xfd88e, last bus=1
PCI: Using configuration type 1
 
PCI: Using ACPI for IRQ routing
PCI: if you experience problems, try using option 'pci=noacpi' or even 'acpi=off'

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 66MHz system bus speed for PIO modes
hda: IC25N040ATCS04-0, ATA DISK drive
hdc: MATSHITACD-RW CW-8121, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: host protected area => 1
hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=77520/16/63
 hda: hda1 hda2 < hda5 hda6 hda7 > hda3 hda4
ide-cd: passing drive hdc to ide-scsi emulation.

hdparm -i claims to be using dma5:

hdparm -i /dev/hda

/dev/hda:

 Model=IC25N040ATCS04-0, FwRev=CA4OA71A, SerialNo=CSH405DCLW5UVB
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=DualPortCache, BuffSize=1768kB, MaxMultSect=16, MultSect=off
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78140160
 IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
 AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-5 T13 1321D revision 3:  2 3 4 5

In contrast, hdparm /dev/hda claims dma is off:

# hdparm /dev/hda

/dev/hda:
 multcount    =  0 (off)
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  0 (off)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 geometry     = 11984/16/63, sectors = 78140160, start = 0

The disk read speed in 2.5.69 indicates dma is off:

# hdparm -tT /dev/hda

/dev/hda:
 Timing buffer-cache reads:   128 MB in  0.46 seconds =280.74 MB/sec
 Timing buffered disk reads:  64 MB in 20.18 seconds =  3.17 MB/sec

# cat kernel-2.5.69.config | grep DMA
CONFIG_GENERIC_ISA_DMA=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_PCI_WIP is not set
CONFIG_BLK_DEV_ADMA=y
CONFIG_IDEDMA_AUTO=y
# CONFIG_IDEDMA_IVB is not set
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set

Here's what 2.4.20 produces:

Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 66MHz system bus speed for PIO modes
ALI15X3: IDE controller on PCI bus 00 dev 80
PCI: No IRQ known for interrupt pin A of device 00:10.0.
ALI15X3: chipset revision 196
ALI15X3: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0x1840-0x1847, BIOS settings: hda:DMA, hdb:pio
    ide1: BM-DMA at 0x1848-0x184f, BIOS settings: hdc:pio, hdd:pio
hda: IC25N040ATCS04-0, ATA DISK drive
hdc: MATSHITACD-RW CW-8121, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
blk: queue c0335ee4, I/O limit 4095Mb (mask 0xffffffff)
hda: 78140160 sectors (40008 MB) w/1768KiB Cache, CHS=4864/255/63, UDMA(33)

Disk information under 2.4.20 -- claims to be using dma2:

Model=IC25N040ATCS04-0, FwRev=CA4OA71A, SerialNo=CSH405DCLW5UVB
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=DualPortCache, BuffSize=1768kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78140160
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 *udma2 udma3 udma4 udma5
AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
Drive conforms to: ATA/ATAPI-5 T13 1321D revision 3: 2 3 4 5

This fits with the disk read speed:

Timing buffer-cache reads: 128 MB in 0.44 seconds =290.91 MB/sec
Timing buffered disk reads: 64 MB in 3.22 seconds = 19.88 MB/sec

cat kernel-2.4.20-5-5.config | grep DMA
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_PCI_WIP is not set
# CONFIG_BLK_DEV_IDEDMA_TIMEOUT is not set
# CONFIG_IDEDMA_NEW_DRIVE_LISTINGS is not set
CONFIG_BLK_DEV_ADMA=y
# CONFIG_HPT34X_AUTODMA is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_IDEDMA_IVB is not set
# CONFIG_DMA_NONPCI is not set
# CONFIG_SCSI_EATA_DMA is not set
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not set
# CONFIG_SOUND_DMAP is not set





^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: DMA gone on ALI 1533
  2003-05-22 15:39 Peter
@ 2003-05-22 15:24 ` Alan Cox
  0 siblings, 0 replies; 8+ messages in thread
From: Alan Cox @ 2003-05-22 15:24 UTC (permalink / raw)
  To: Peter; +Cc: Linux Kernel Mailing List

On Iau, 2003-05-22 at 16:39, Peter wrote:
> Is there a workaround for the dma, or something I'm missing? Incidentally,
> it would be handy to have a bit more information in dmesg, along the lines
> of the 2.4 kernel -- chipset, dma and bus speed per drive.

Sounds like you don't have the right driver compiled in


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2003-07-14 17:44 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-22 20:12 DMA gone on ALI 1533 Peter
2003-05-22 20:36 ` Bartlomiej Zolnierkiewicz
2003-07-14  7:26 ` Linux v2.6.0-test1 Peter
2003-07-14 17:59   ` Trying to get DMA working with IDE alim15x3 controller Peter
  -- strict thread matches above, loose matches on Subject: below --
2003-05-22 15:46 DMA gone on ALI 1533 Peter
2003-05-22 16:09 ` Bartlomiej Zolnierkiewicz
2003-05-22 15:39 Peter
2003-05-22 15:24 ` Alan Cox

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).