Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Jerky DVD playback
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
parsim
Guru
Guru


Joined: 12 Aug 2004
Posts: 347
Location: Melbourne, Australia

PostPosted: Wed May 25, 2005 5:45 am    Post subject: Jerky DVD playback Reply with quote

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
View user's profile Send private message
jflintz
n00b
n00b


Joined: 10 May 2005
Posts: 37

PostPosted: Wed May 25, 2005 7:11 pm    Post subject: Reply with quote

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
View user's profile Send private message
parsim
Guru
Guru


Joined: 12 Aug 2004
Posts: 347
Location: Melbourne, Australia

PostPosted: Fri May 27, 2005 8:55 am    Post subject: Reply with quote

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
View user's profile Send private message
bollucks
l33t
l33t


Joined: 27 Oct 2004
Posts: 606

PostPosted: Fri May 27, 2005 10:26 am    Post subject: Reply with quote

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
View user's profile Send private message
parsim
Guru
Guru


Joined: 12 Aug 2004
Posts: 347
Location: Melbourne, Australia

PostPosted: Sat May 28, 2005 4:28 am    Post subject: Reply with quote

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
View user's profile Send private message
parsim
Guru
Guru


Joined: 12 Aug 2004
Posts: 347
Location: Melbourne, Australia

PostPosted: Mon May 30, 2005 3:00 am    Post subject: Reply with quote

Help? :(
Back to top
View user's profile Send private message
parsim
Guru
Guru


Joined: 12 Aug 2004
Posts: 347
Location: Melbourne, Australia

PostPosted: Tue May 31, 2005 9:01 am    Post subject: Reply with quote

I've tried rebuilding my kernel in five different combinations. Nothing allows me to turn on DMA.

What can I do?
Back to top
View user's profile Send private message
bollucks
l33t
l33t


Joined: 27 Oct 2004
Posts: 606

PostPosted: Tue May 31, 2005 10:33 am    Post subject: Reply with quote

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
View user's profile Send private message
linumik
Tux's lil' helper
Tux's lil' helper


Joined: 31 May 2005
Posts: 102

PostPosted: Tue May 31, 2005 9:51 pm    Post subject: Maybe this can help Reply with quote

https://forums.gentoo.org/viewtopic-p-2457412.html#2457412

Depending on your hardware...
Back to top
View user's profile Send private message
parsim
Guru
Guru


Joined: 12 Aug 2004
Posts: 347
Location: Melbourne, Australia

PostPosted: Wed Jun 01, 2005 7:43 am    Post subject: Reply with quote

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
View user's profile Send private message
bollucks
l33t
l33t


Joined: 27 Oct 2004
Posts: 606

PostPosted: Wed Jun 01, 2005 10:02 am    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum