DMA for CD - Inspiron 9300
Hi CRUXers, I have a problem with enabling DMA for CD in my Dell Inspiron 9300.
From hdparm /dev/hdc:
/dev/hdc: HDIO_GET_MULTCOUNT failed: Invalid argument IO_support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 0 (off) keepsettings = 0 (off) readonly = 0 (off) readahead = 256 (on) HDIO_GETGEO failed: Invalid argument
From hdparm -d1 /dev/hdc: /dev/hdc: setting using_dma to 1 (on) HDIO_SET_DMA failed: Operation not permitted using_dma = 0 (off)
Of course I tried to google it. Usually it's a problem of missing chipset driver in the kernel. In the relevant part of my 2.6.10 I have: Device Drivers ---> ATA/ATAPI/MFM/RLL support ---> <*> ATA/ATAPI/MFM/RLL support <*> Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy <*> Include IDE/ATA-2 DISK support <*> Include IDE/ATAPI CDROM support <*> generic/default IDE chipset support [*] PCI IDE chipset support [*] Sharing PCI IDE interrupts support [*] Generic PCI bus-master DMA support [*] Use PCI DMA by default when available <*> Intel PIIXn chipsets support So for me it looks good. The rest is off in that section. Any suggestion? Anyone was able to do it on that box ? Either I'm just missing sth, or it is too tricky for me :) Thanks, Pawel
On Thu, 2007-05-10 at 13:29 +0200, Pawel Wielgus wrote:
Hi CRUXers,
I have a problem with enabling DMA for CD in my Dell Inspiron 9300.
From hdparm /dev/hdc:
/dev/hdc: HDIO_GET_MULTCOUNT failed: Invalid argument IO_support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 0 (off) keepsettings = 0 (off) readonly = 0 (off) readahead = 256 (on) HDIO_GETGEO failed: Invalid argument
From hdparm -d1 /dev/hdc: /dev/hdc: setting using_dma to 1 (on) HDIO_SET_DMA failed: Operation not permitted using_dma = 0 (off)
This might be a stupid question, but are you running hdparm as root?
On Fri, 2007-05-11 at 07:23 +0200, Pawel Wielgus wrote:
This might be a stupid question, but are you running hdparm as root?
Question is not stupid, it's fundamental :) Of course I do :) "HDIO_SET_DMA failed: Operation not permitted" jumps out on root account.
Which IDE controller does your laptop use? # lspci | grep IDE -- Lucas Hazel
On Fri, 2007-05-11 at 08:10 +0200, Pawel Wielgus wrote:
Which IDE controller does your laptop use?
# lspci | grep IDE
00:1f.2 IDE interface: Intel Corp.: Unknown device 2653 (rev 03) :)
From the official specification, it should be
82801 FBM UltraATA Storage Controller - 2653
The 82801 is a ICH6 chipset so you have the right IDE controller enabled. However the "Unknown device" would indicate that the controller isn't fully supported. Which is perhaps why you can't change the DMA. -- Lucas Hazel
On Fri, May 11, 2007 at 05:00:38PM +1000, Lucas Hazel wrote:
On Fri, 2007-05-11 at 08:10 +0200, Pawel Wielgus wrote:
Which IDE controller does your laptop use?
# lspci | grep IDE
00:1f.2 IDE interface: Intel Corp.: Unknown device 2653 (rev 03) :)
From the official specification, it should be
82801 FBM UltraATA Storage Controller - 2653
The 82801 is a ICH6 chipset so you have the right IDE controller enabled. However the "Unknown device" would indicate that the controller isn't fully supported. Which is perhaps why you can't change the DMA.
This the problem with laptops, you cannot change the hardware that is provided. You could test libata in newer kernels, but it still is no guarantee. I suppose the other alternative is to wait some months and see if your chipset is finally recognized. Libata is working well in my laptop, lspci | grep IDE outputs: 00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03) I have the following options enabled in the kernel .config file to use libata: CONFIG_ATA=y CONFIG_ATA_PIIX=y CONFIG_ATA_GENERIC=y Then make sure to enable scsi cdrom support to use the cd/dvd drive. /etc/fstab also needs to be adjusted. I probably have forgotten something important from here, google for more information just to be safe :p Good luck.
On Fri, May 11, 2007 at 08:15:22PM +0300, Jesse Kokkarinen wrote:
The 82801 is a ICH6 chipset so you have the right IDE controller enabled. However the "Unknown device" would indicate that the controller isn't fully supported. Which is perhaps why you can't change the DMA.
This the problem with laptops, you cannot change the hardware that is provided. You could test libata in newer kernels, but it still is no guarantee. I suppose the other alternative is to wait some months and see if your chipset is finally recognized.
Indeed. Also, lurking around the linux-ide ML is never a bad idea. -- Fredrik Rinnestam
If anyone would be interested: a) as it was suggested on our list - remove the IDE generic driver from the kernel; b) in /usr/src/linux/include/linux/libata.h (based on Gentoo forum thread) #undef ATA_ENABLE_ATAPI /* define to enable ATAPI support */ #undef ATA_ENABLE_PATA /* define to enable PATA support in some changed to #define ATA_ENABLE_ATAPI #define ATA_ENABLE_PATA Now DMA for my CD works fine, which is nicely visible while copying huge files from CD or burning a CD. However hdparm still doesn't have an access to CD ("operation not supported on SCSI disks"), but this is a minor problem. Take care, Pawel Jesse Kokkarinen wrote:
On Fri, May 11, 2007 at 05:00:38PM +1000, Lucas Hazel wrote:
On Fri, 2007-05-11 at 08:10 +0200, Pawel Wielgus wrote:
Which IDE controller does your laptop use?
# lspci | grep IDE
00:1f.2 IDE interface: Intel Corp.: Unknown device 2653 (rev 03) :)
From the official specification, it should be
82801 FBM UltraATA Storage Controller - 2653
The 82801 is a ICH6 chipset so you have the right IDE controller enabled. However the "Unknown device" would indicate that the controller isn't fully supported. Which is perhaps why you can't change the DMA.
This the problem with laptops, you cannot change the hardware that is provided. You could test libata in newer kernels, but it still is no guarantee. I suppose the other alternative is to wait some months and see if your chipset is finally recognized.
Libata is working well in my laptop, lspci | grep IDE outputs: 00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03)
I have the following options enabled in the kernel .config file to use libata: CONFIG_ATA=y CONFIG_ATA_PIIX=y CONFIG_ATA_GENERIC=y
Then make sure to enable scsi cdrom support to use the cd/dvd drive. /etc/fstab also needs to be adjusted. I probably have forgotten something important from here, google for more information just to be safe :p
Good luck. _______________________________________________ CRUX mailing list CRUX@lists.crux.nu http://lists.crux.nu/mailman/listinfo/crux
Pawel Wielgus wrote:
If anyone would be interested:
a) as it was suggested on our list - remove the IDE generic driver from the kernel;
b) in /usr/src/linux/include/linux/libata.h (based on Gentoo forum thread)
#undef ATA_ENABLE_ATAPI /* define to enable ATAPI support */ #undef ATA_ENABLE_PATA /* define to enable PATA support in some
changed to
#define ATA_ENABLE_ATAPI #define ATA_ENABLE_PATA
Now DMA for my CD works fine, which is nicely visible while copying huge files from CD or burning a CD. However hdparm still doesn't have an access to CD ("operation not supported on SCSI disks"), but this is a minor problem.
Take care,
Pawel
Jesse Kokkarinen wrote:
On Fri, May 11, 2007 at 05:00:38PM +1000, Lucas Hazel wrote:
On Fri, 2007-05-11 at 08:10 +0200, Pawel Wielgus wrote:
Which IDE controller does your laptop use?
# lspci | grep IDE
00:1f.2 IDE interface: Intel Corp.: Unknown device 2653 (rev 03) :)
From the official specification, it should be
82801 FBM UltraATA Storage Controller - 2653
The 82801 is a ICH6 chipset so you have the right IDE controller enabled. However the "Unknown device" would indicate that the controller isn't fully supported. Which is perhaps why you can't change the DMA.
This the problem with laptops, you cannot change the hardware that is provided. You could test libata in newer kernels, but it still is no guarantee. I suppose the other alternative is to wait some months and see if your chipset is finally recognized.
Libata is working well in my laptop, lspci | grep IDE outputs: 00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03)
I have the following options enabled in the kernel .config file to use libata: CONFIG_ATA=y CONFIG_ATA_PIIX=y CONFIG_ATA_GENERIC=y
Then make sure to enable scsi cdrom support to use the cd/dvd drive. /etc/fstab also needs to be adjusted. I probably have forgotten something important from here, google for more information just to be safe :p
Good luck. _______________________________________________ CRUX mailing list CRUX@lists.crux.nu http://lists.crux.nu/mailman/listinfo/crux
_______________________________________________ CRUX mailing list CRUX@lists.crux.nu http://lists.crux.nu/mailman/listinfo/crux
What kernel version are you using? My kernel 2.6.20.3 libata.h has the following: #define ATA_ENABLE_PATA <- line 57 But it has no line like #define ATA_ENABLE_ATAPI or #undef ATA_ENABLE_ATAPI In fact, grep -R "ATA_ENABLE_ATAPI" linux-2.6.20.3/ gets no hits for me? Chris
Chris Pemberton wrote:
Pawel Wielgus wrote:
If anyone would be interested:
a) as it was suggested on our list - remove the IDE generic driver from the kernel;
b) in /usr/src/linux/include/linux/libata.h (based on Gentoo forum thread)
#undef ATA_ENABLE_ATAPI /* define to enable ATAPI support */ #undef ATA_ENABLE_PATA /* define to enable PATA support in some
changed to
#define ATA_ENABLE_ATAPI #define ATA_ENABLE_PATA
Now DMA for my CD works fine, which is nicely visible while copying huge files from CD or burning a CD. However hdparm still doesn't have an access to CD ("operation not supported on SCSI disks"), but this is a minor problem.
Take care,
Pawel
Jesse Kokkarinen wrote:
On Fri, May 11, 2007 at 05:00:38PM +1000, Lucas Hazel wrote:
On Fri, 2007-05-11 at 08:10 +0200, Pawel Wielgus wrote:
Which IDE controller does your laptop use?
# lspci | grep IDE
00:1f.2 IDE interface: Intel Corp.: Unknown device 2653 (rev 03) :)
From the official specification, it should be
82801 FBM UltraATA Storage Controller - 2653
The 82801 is a ICH6 chipset so you have the right IDE controller enabled. However the "Unknown device" would indicate that the controller isn't fully supported. Which is perhaps why you can't change the DMA.
This the problem with laptops, you cannot change the hardware that is provided. You could test libata in newer kernels, but it still is no guarantee. I suppose the other alternative is to wait some months and see if your chipset is finally recognized.
Libata is working well in my laptop, lspci | grep IDE outputs: 00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03)
I have the following options enabled in the kernel .config file to use libata: CONFIG_ATA=y CONFIG_ATA_PIIX=y CONFIG_ATA_GENERIC=y
Then make sure to enable scsi cdrom support to use the cd/dvd drive. /etc/fstab also needs to be adjusted. I probably have forgotten something important from here, google for more information just to be safe :p
Good luck. _______________________________________________ CRUX mailing list CRUX@lists.crux.nu http://lists.crux.nu/mailman/listinfo/crux
_______________________________________________ CRUX mailing list CRUX@lists.crux.nu http://lists.crux.nu/mailman/listinfo/crux
What kernel version are you using?
My kernel 2.6.20.3 libata.h has the following:
#define ATA_ENABLE_PATA <- line 57
But it has no line like
#define ATA_ENABLE_ATAPI or #undef ATA_ENABLE_ATAPI
In fact,
grep -R "ATA_ENABLE_ATAPI" linux-2.6.20.3/
gets no hits for me?
Chris _______________________________________________ CRUX mailing list CRUX@lists.crux.nu http://lists.crux.nu/mailman/listinfo/crux
I'm sorry, I forgot :) Quite relevant detail :) And quite old kernel ... goosi@RAPTOR: ~ >> uname -r 2.6.10 Pawel
participants (5)
-
Chris Pemberton
-
Fredrik Rinnestam
-
Jesse Kokkarinen
-
Lucas Hazel
-
Pawel Wielgus