On 22.02.2008 21:03, joe@smittys.pointclark.net wrote:
Quoting joe@smittys.pointclark.net:
Quoting ron minnich rminnich@gmail.com:
On Fri, Feb 22, 2008 at 9:15 AM, joe@smittys.pointclark.net wrote:
It is the Intel 82801DB ICH4 chipset. I think most of the ICH's are the same on this. So are you saying this can be set in filo, or coreboot?
I think coreboot has to do it ... if the kernel can not.
ron
Ok then, I think it may complicate things too much if we had a IDENTIFY_DRIVE command query to the drive (Note: this command query is also used for DMA settings). That would be like basicly re-writing an IDE driver??
After some futher reading, I don't know if this would even be possible with coreboot. It would have to be done with filo (file does this command query anyways and prints out the drive model number) when the drives are fully initialized. Looks like senerio number two...
So, I propose a global option (IDE_CABLE = 40 or 80) that can easily be adjusted from Config.lb in the targets directory, that sets the value for a simple function in src/southbridge/intel/i82801xx/i82801xx_ide.c. Does that make sense?
If there are no objections I will submit a patch. What coreboot system files need to be modified for a global option?
Can you please check with the Linux IDE guys? The matter is horribly complicated because you have to check whether the 80-wire cable was detected by the controller and check the same for the drive. linux-ide@vger.kernel.org is the address you want to write to and the experts there can tell you exactly what the BIOS is expected to do.
Regards, Carl-Daniel