View previous topic :: View next topic |
Author |
Message |
parsim Guru
Joined: 12 Aug 2004 Posts: 347 Location: Melbourne, Australia
|
Posted: Wed May 25, 2005 5:45 am Post subject: Jerky DVD playback |
|
|
I am one of those chumps who can't get DMA enabled for his DVD drive, causing jerky playback.
Here's my DVD drive (which, incidentally, works fine in my other Gentoo PC):
Code: | # hdparm -i /dev/hda
/dev/hda:
Model=LITE-ON DVDRW SOHW-1653S, FwRev=CS02, SerialNo=
Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic }
RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=unknown, BuffSize=0kB, MaxMultSect=0
(maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0
IORDY=yes, tPIO={min:227,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
AdvancedPM=no
Drive conforms to: device does not report version:
* signifies the current active mode |
Here's me trying to turn on DMA:
Code: | # hdparm -d1 /dev/hda
/dev/hda:
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
using_dma = 0 (off) |
From what I've read, the solution to this is to compile proper support for my chipset into the kernel. However, I've done that and gotten nowhere. Here's my .config:
Code: | #
# ATA/ATAPI/MFM/RLL support
#
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_IDE_SATA is not set
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_IDE_TASK_IOCTL is not set
#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_CMD640=y
# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
# CONFIG_BLK_DEV_OFFBOARD is not set
CONFIG_BLK_DEV_GENERIC=y
# CONFIG_BLK_DEV_OPTI621 is not set
CONFIG_BLK_DEV_RZ1000=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_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
# CONFIG_BLK_DEV_AMD74XX is not set
# CONFIG_BLK_DEV_ATIIXP is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_TRIFLEX is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=y
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIIMAGE is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_VIA82CXXX is not set
# CONFIG_IDE_ARM is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set
|
The specific support is CONFIG_BLK_DEV_PIIX, which is for ICH chipsets. And that's what I have. [url=http://www.msicomputer.com/product/p_spec.asp?model=865PE_Neo2-PFS_(Platinum_Edition)&class=mb]This[/url] is my motherboard, which is based on the Intel 865PE.
Code: | # lspci
0000:00:00.0 Host bridge: Intel Corporation 82865G/PE/P DRAM Controller/Host-Hub Interface (rev 02)
0000:00:01.0 PCI bridge: Intel Corporation 82865G/PE/P PCI to AGP Controller (rev 02)
0000:00:1d.0 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (rev 02)
0000:00:1d.1 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (rev 02)
0000:00:1d.2 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI #3 (rev 02)
0000:00:1d.3 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (rev 02)
0000:00:1d.7 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (rev 02)
0000:00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev c2)
0000:00:1f.0 ISA bridge: Intel Corporation 82801EB/ER (ICH5/ICH5R) LPC Interface Bridge (rev 02)
0000:00:1f.2 IDE interface: Intel Corporation 82801EB (ICH5) SATA Controller (rev 02)
0000:00:1f.3 SMBus: Intel Corporation 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02)
0000:00:1f.5 Multimedia audio controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (rev 02)
0000:01:00.0 VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5200] (rev a1)
0000:02:00.0 Network controller: Texas Instruments ACX 111 54Mbps Wireless Interface
0000:02:03.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)
0000:02:03.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)
0000:02:05.0 Multimedia video controller: Conexant Winfast TV2000 XP (rev 05)
0000:02:05.2 Multimedia controller: Conexant: Unknown device 8802 (rev 05) |
What can I do? This is a home theater PC, so DVD playback is important. |
|
Back to top |
|
|
jflintz n00b
Joined: 10 May 2005 Posts: 37
|
Posted: Wed May 25, 2005 7:11 pm Post subject: |
|
|
take the generic out and recompile the kernel and that should take care of it.
Since
CONFIG_BLK_DEV_PIIX=y
CONFIG_BLK_DEV_IDEDMA=y
are included with
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_GENERIC=y
it may not work. I had the same problem and once I took out generic and only had my chip set support it worked. _________________ No complaints will be allowed. All complaints will be symlinked to /dev/null
All others will be rerouted through iptables |
|
Back to top |
|
|
parsim Guru
Joined: 12 Aug 2004 Posts: 347 Location: Melbourne, Australia
|
Posted: Fri May 27, 2005 8:55 am Post subject: |
|
|
Thanks, but unfortunately this didn't help.
When I rebuilt the kernel without those two "generic" options and rebooted, the PC could no longer see the DVD drive. When I put back CONFIG_IDE_GENERIC (leaving CONFIG_BLK_DEV_GENERIC unset), it returned to the old state: I can see the DVD drive but setting DMA is "not permitted." |
|
Back to top |
|
|
bollucks l33t
Joined: 27 Oct 2004 Posts: 606
|
Posted: Fri May 27, 2005 10:26 am Post subject: |
|
|
Generic IDE support can slow your hard drive down as it may kick in before your chipset driver does so disable it if you have a driver for your chipset. |
|
Back to top |
|
|
parsim Guru
Joined: 12 Aug 2004 Posts: 347 Location: Melbourne, Australia
|
Posted: Sat May 28, 2005 4:28 am Post subject: |
|
|
But if I disable generic IDE support, my PC can't even see my DVD player! That's what I said in my last message. Also, I don't have an IDE hard disk.
This may not be relevent, but I have discovered that if I turn on my PC with a DVD in the drive (this is with generic + PIIX support compiled in), kernel bootup gets to "hda: <CD/DVD drive description>", then pauses while the drive begins making all kinds of awful grating noises. It sounds like it's dying. I need to pop open the tray and extract the disk, and then the boot process continues. |
|
Back to top |
|
|
parsim Guru
Joined: 12 Aug 2004 Posts: 347 Location: Melbourne, Australia
|
Posted: Mon May 30, 2005 3:00 am Post subject: |
|
|
Help? |
|
Back to top |
|
|
parsim Guru
Joined: 12 Aug 2004 Posts: 347 Location: Melbourne, Australia
|
Posted: Tue May 31, 2005 9:01 am Post subject: |
|
|
I've tried rebuilding my kernel in five different combinations. Nothing allows me to turn on DMA.
What can I do? |
|
Back to top |
|
|
bollucks l33t
Joined: 27 Oct 2004 Posts: 606
|
Posted: Tue May 31, 2005 10:33 am Post subject: |
|
|
Check the BIOS. Sometimes enabling both PATA and SATA when you build support for one, the other or both causes problems. Try disabling PATA in the BIOS and only SATA... or vice versa. |
|
Back to top |
|
|
linumik Tux's lil' helper
Joined: 31 May 2005 Posts: 102
|
|
Back to top |
|
|
parsim Guru
Joined: 12 Aug 2004 Posts: 347 Location: Melbourne, Australia
|
Posted: Wed Jun 01, 2005 7:43 am Post subject: |
|
|
bollucks wrote: | Check the BIOS. Sometimes enabling both PATA and SATA when you build support for one, the other or both causes problems. Try disabling PATA in the BIOS and only SATA... or vice versa. |
Ahhh! Your name is bollucks, yet you speak anything but.
It took some experimentation, but I finally got it. In case this is helpful to anyone else, here's what I did.
First, my system has 1 x IDE DVD-RW drive and 1 x SATA hard drive. This was the page in my AMIBIOS v3.31a that I messed around with:
Code: | Integrated Peripherals
--> On-Chip IDE Configuration
--> On-Chip ATA(s) Operate Mode [Legacy / Native]
ATA Configuration [Disabled / P-ATA Only / S-ATA Only / P-ATA + S-ATA]
S-ATA Keep Enabled [Yes / No]
P-ATA Keep Enabled [Yes / No]
P-ATA Channel Selection [Primary / Secondary / Both] |
My starting configuration was Legacy / P-ATA + S-ATA / Keep P-ATA Enabled / Both. With this, I could see the DVD drive, but not enable DMA, which caused jerky playback.
This configuration left me unable to see the DVD drive at all: Native / P-ATA + S-ATA / No to Keep P-ATA Enabled. So did Legacy / P-ATA Only / Keep S-ATA Enabled / Secondary Channel (although I found out later the only thing wrong here was that last option: Secondary Channel selection).
This configuration gave me a kernel panic, with the PC unable to see the hard drive! Legacy / S-ATA Only / No to keep P-ATA Enabled.
This one worked, allowing DMA, except every time the DVD drive was accessed, the PC spat out a bunch of "Disabling IRQ #10" messages and thought about life for a while before responding: Legacy / S-ATA Only / Keep P-ATA Enabled / Both Channels.
This one just worked! The PC can see both the DVD drive and the hard drive, and DMA works for both: Legacy / P-ATA Only / Keep S-ATA Enabled / Both Channels. It also worked if the last option (Channel Selection) was "Primary".
Now, I have no idea what all this means, and if anyone wants to enlighten me, that would be very interesting. But I'm just grateful to have the thing working. Thank you! |
|
Back to top |
|
|
bollucks l33t
Joined: 27 Oct 2004 Posts: 606
|
Posted: Wed Jun 01, 2005 10:02 am Post subject: |
|
|
parsim wrote: | bollucks wrote: | Check the BIOS. Sometimes enabling both PATA and SATA when you build support for one, the other or both causes problems. Try disabling PATA in the BIOS and only SATA... or vice versa. |
Ahhh! Your name is bollucks, yet you speak anything but.
Thank you! |
A handle says nothing of who someone is or actually might be.
You're welcome. |
|
Back to top |
|
|
|