De thread starter is iemand die ik persoonlijk ken. Ik heb hem geholpen met Ubuntu. Hij is nu op vakantie (ik dus niet).
Hmz ik krijg als antwoord dat de melding "HDIO_GETGEO failed: Inappropriate ioctl for device" niet zo heel zwaar gewogen mag worden voor ata devices.
Maagoe ff verder rommelen zie ik dat DMA in principe ook niet nodig voor ATA apparaten.
Enyway ik denk dat niet alleen de foutmelding je dwars zit maar ook dat de Rom's niet werken ??
Het gaat me vooral om het aankrijgen van DMA. Waarom ik DMA wil aankrijgen :
- werkt beter met branden
- werkt beter met afspelen DVD's
Ik ga gewoon wat algemene info neerkwakken en dan kan er er misschien iets mee doen, of het brengt je op een spoor ??
Bedankt voor alle moeite. Je mag ook direct linken naar (engelstalige) informatie. Hij is toch op vakantie en mijn engels is goed (ik ben zelf moderator op ubuntuforums.org).
Wanneer je dmesg en lspci doet loop je kans dat je ziet dat je de IDE chipset genaamd ICH7 van intel hebt terwijl er in je Kernel staat: ICH5
lspci geeft ICH6. lspci ziet er allemaal goed uit. Ik ga ervan uit dat het klopt voor zijn moederbord.
Ik heb nog geen tijd gehad om (zorgvuldig) door de log files heen te gaan (en ik heb pas weer toegang tot zijn machine als hij terug is van vakantie en we allebei tijd hebben).
Dit schijnt de goede instelling te zijn voor je kernel.
$ grep -i idedma /boot/config-2.6.17-ck1-smp
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_IVB is not set
CONFIG_IDEDMA_AUTO=y
Dit commando geeft wat informatie over het kernel. Iedereen die een standaard linx-686 kernel op (geupgrade) Dapper draait krijgt dat antwoord.
Check daarna met hdparm /dev/hd? waarbij de ? de drive is, of DMA nu enabled is.
Zoniet dan met: hdparm -d1 /dev/hd?
Werkt het nu wel zet dit dan in een opstart=script en/of zet het in hdparm.conf
Als het nog niet werkt staat er iets fout in je kernel.
Dat zal niet gaan werken
.
Suggesties voor Hard disk: ICH7 SATA
The internal hard disk is connected to the SATA (Serial ATA) controller in the south bridge of the Intel 945 chipset (ICH7). Note that SATA disks show up as /dev/sda, not /dev/hd*.
To enable SATA support, you must enable the SCSI subsystem. The Intel chipset is supported by the ata_piix driver.
Configuration options
"Serial ATA (SATA) support" in "SCSI device support" -> "SCSI low-level drivers"
"Intel PIIX/ICH SATA support" in "SCSI device support" -> "SCSI low-level drivers"
Module name
ata_piix
Configuration macro
CONFIG_SCSI_SATA, CONFIG_SCSI_ATA_PIIX
En voor Optical drive: ICH7 PATA
The optical drive (CD/DVD) is connected via PATA (Parallel ATA, also called IDE) to the south bridge (ICH7). It shows up as /dev/hda in the Linux device tree.
Configuration options
"Intel PIIXn chipsets support" in "ATA/ATAPI/MFM/RLL support"
Module name
piix
Configuration macro
CONFIG_BLK_DEV_PIIX
Het regeltje "Intel PIIXn chipsets support" in "ATA/ATAPI/MFM/RLL support" moet je blokkeren want die zorgt waarschijnlijk voor de problemen.
piix heb ik al opgenomen in /etc/modules en leverde geen resultaat
ata_piix heb ik nog niet geprobeerd en ga ik zeker proberen!
Ik ontdekte zelf dat /dev/scdX ipv /dev/devX waarschijnlijk betekent dat er van het scsi subsysteem gebruik wordt gemaakt. Hij heeft natuurlijk niet echt scsi in zijn moederbord maar het heet zo omdat ze dit systeem oorspronkelijk bedacht hadden voor scsi. Ik vermoed dat er op het scsi subsysteem wordt teruggevallen als de standaard methode (met /dev/hdX als resultaat) faalt. Hopelijk kunnen we er met ata_piix voor zorgen dat de dvd-drives gewoon op /dev/hdX terechtkomen en dat we DMA gewoon aan kunnen zetten.
Wanneer je nu de opdracht geeft
hdparm -c1 -u1 -d1 -a1 /dev/hdc
Ik moet inderdaad nog even verder met de hdparm opties gaan spelen. Maar ik ga dan eerst de man pagina van hdparm even goed lezen want je kunt als je met hdparm met je harddisk opties gaat spelen bijvoorbeeld de data op je hardeschijf verprutsen.
Zou je als ourput moeten krijgen
hdparm /dev/hdc
/dev/hdc:
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
HDIO_GETGEO failed: Inappropriate ioctl for device
en niet
hdparm /dev/hdc
/dev/hdc:
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 0 (off)
HDIO_GETGEO failed: Inappropriate ioctl for device
Wat je nu moet opvallen is dat in beide gevallen die foutmelding blijft echter de zaak werkt wel gewoon.
Hiermee kom ik dus weer terug met wat ik begon, die foutmelding nix voor te stellen.
Ik ben blij als ik dma aan krijg. HDIO_GETGEO is gewoon een mogelijk aanknopingspunt.
Verder vond ik een mogelijke BUG-melding over het resetten van de Flag in hdfarm wanneer je de cd lade opendoet.
Below is a mini script showing using_dma getting reset immediately after eject. Replace /dev/dvd by /dev/hdc and the problem is gone! Does that ring a bell to anyone?
$ sudo hdparm -c1 -d1 -u1 -a8 -k1 /dev/dvd && hdparm -v /dev/dvd && sudo eject && hdparm -v /dev/dvd && sleep 10 && eject -T && hdparm -v /dev/dvd
/dev/dvd:
setting fs readahead to 8
setting 32-bit IO_support flag to 1
setting unmaskirq to 1 (on)
setting using_dma to 1 (on)
setting keep_settings to 1 (on)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 1 (on)
keepsettings = 1 (on)
readahead = 8 (on)
/dev/dvd:
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 1 (on)
keepsettings = 1 (on)
readonly = 0 (off)
readahead = 8 (on)
HDIO_GETGEO failed: Invalid argument
/dev/dvd:
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 0 (off)
keepsettings = 1 (on)
readonly = 0 (off)
readahead = 8 (on)
HDIO_GETGEO failed: Invalid argument
let wederom op die foutmelding waar ik het over had.
Het zegt niet zo heel veel behalve dat het mogelijk is om DMA aan te hebben en dan ook de HDIO_GETGEO foutmelding te krijgen.
Nog een Tip:
Kijk even hoe de opticals ingesteld staan, als ze ingesteld staan als Cable Select geeft dit problemen.
Dus verander ff van Cable Select naar Master/Slave.
Het lijkt me niet dat ze bij Packard Bell zulke prutsers zijn dat ze dat niet zelf even goed zetten. king-moestaba heeft zelf niet met de jumper instellingen gespeeld. Maar dit is wel goed om even na te kijken als ik al het andere geprobeerd heb.
Nog een tip:
Zorg ervoor dat je ide chipset driver als 1e geladen word in de /etc/modules.
Ik moet me inderdaad nog wat beter in de modules verdiepen. Toen ik bij hem wegging had ik nog net genoeg tijd om wat relevante informatie op internet te zetten. Ik heb nog niet overal dieper in kunnen duiken.
Ik kan bijvoorbeeld ook nog even gaan kijken of het helpt om bepaalde modules te blacklisten(bijvoorbeeld die voor scsi).
Je kan er dan ook over denken om dit aan te zetten in je /etc/mkinitrd/modules en dan rebuild je kernel initrd.
Bijv. als je kernel 2.6.10-5-k7 gebruikt ?
sudo mkinitrd -o /boot/initrd.img-2.6.10-5-k7 2.6.10-5-k7
Let wel dat dit laatste als nadeel heeft wanneer je een nieuwe kernel krijgt je dit weer overnieuw moet doen.
Ik zou bijvoorbeeld ook het kernel zelf kunnen compileren maar ik ben niet echt van plan om dat te gaan doen. Dat is voor mij niet zo heel erg moeilijk. Maar het is niet iets wat echt geschikt is voor een beginner. DMA is ook weer niet zo kritisch om voor iedere kernel upgrade naar hem toe te moet vliegen om zijn kernel opnieuw te compileren
.
nah je hebt wat je rommelen denk ik ??
BTW een fijne vakantie en gezonde weer terug
SCCS
Genoeg te proberen nog. Ik denk dat we eerst naar de modules moeten gaan kijken.
(Jammer genoeg nog niemand met precies hetzelfde probleem met liefst dezelfde hardware)
In ieder geval bedankt voor de moeite,
groetjes
ubuntu_demon