From: Tejun Heo <htejun@gmail.com>
To: ISHIKAWA Mutsumi <ishikawa@hanzubon.jp>
Cc: joe@dastyle.net, jgarzik@pobox.com, linux-ide@vger.kernel.org
Subject: Re: Enabling AHCI on ICH7 without BIOS support
Date: Sun, 19 Aug 2007 14:34:30 +0900 [thread overview]
Message-ID: <46C7D666.8020700@gmail.com> (raw)
In-Reply-To: <20070819014412.1378C5ED6F3@master.hanzubon.jp>
ISHIKAWA Mutsumi wrote:
>>>>>> In <46C44A05.9040302@dastyle.net>
>>>>>> Jonathan Bastien-Filiatrault <joe@dastyle.net> wrote:
>>> Tejun Heo wrote:
>>>
>>>> Hello,
>>>>
>>>> Jonathan Bastien-Filiatrault wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I am the owner of a Dell Latitude D620 notebook with an ICH7 SATA
>>>>> controller, unfortunately, the BIOS does not offer the option of using
>>>>> "native mode" instead of "compatibility mode" when it comes to SATA. For
>>>>> now, the ata_piix runs happily in compatibility mode. Looking at the
>>>>> ICH7 docs, I found that poking register 0x90 in PCI configuration space
>>>>> with value 0x40 should enable AHCI. However, there are some issues with
>>>>> poking that register with setpci in an early initramfs:
>>>>>
>>>>>
>>>>> - The kernel does not seem to update the device id from PCI config
>>>>> space, which changes with the controller mode (it would seem the PCI
>>>>> subsystem keeps a copy)
>>>>>
>>>>> - Poking PCI registers from userspace is far from ideal
>>>>>
>>>>>
>>>>> It would be great if the AHCI driver (or otherwise) had a
>>>>> "force_ich7_ahci" to properly setup and initialize this device in full
>>>>> "native" AHCI mode. This option would be greatly welcome from users like
>>>>> me who have a stupid bios (eh, who doesn't).
>>>>>
>>>> Sorry but most BIOSen don't map ABAR unless it supports AHCI and there
>>>> usually isn't a hole to fit in ABAR afterwards unless the kernel
>>>> completely reallocates IO resources, which, again unfortunately, can't
>>>> be done reliably cuz machines can be quirky and might puke if addresses
>>>> aren't laid out as their BIOSen would do.
>>>>
>>>> So, you'll have to live with ata_piix.
>>>>
>>>>
>>> So far, I have managed to patch up the AHCI driver to initialize the
>>> ICH7 AHCI state machine as the BIOS would do (as per the AHCI spec
>>> instructions). This involves mapping ABAR and such. So far, I have
>>> gotten the AHCI driver to detect the chip properly, but it does not
>>> detect any drives. It looks like I will need to further initialize the
>>> chip. I think there might be a chance of success, but it will involve
>>> manually specifying which ports are present via a module parameter.
>
> Do you know Edvin's patch?
>
> http://www.bughost.org/pipermail/power/2007-June/000538.html
>
> I've tested it and works fine on my note
> (Sony VAIO type S VGN-SZ92PS, ICH7-M)
Yeah, I've seen it but I'm not sure whether it would worth the risk.
For one, there are BIOSen which won't assign IO memory region to ABAR at
all. There also is a patch to reallocate IO memory regions and make
room for ABAR but that can break things.
Thanks.
--
tejun
next prev parent reply other threads:[~2007-08-19 5:35 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-14 13:09 Enabling AHCI on ICH7 without BIOS support Jonathan Bastien-Filiatrault
2007-08-16 12:23 ` Tejun Heo
2007-08-16 12:58 ` Jonathan Bastien-Filiatrault
2007-08-16 13:19 ` Tejun Heo
2007-08-19 1:44 ` ISHIKAWA Mutsumi
2007-08-19 5:34 ` Tejun Heo [this message]
2007-08-19 6:56 ` Török Edwin
2007-08-19 8:07 ` Tejun Heo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=46C7D666.8020700@gmail.com \
--to=htejun@gmail.com \
--cc=ishikawa@hanzubon.jp \
--cc=jgarzik@pobox.com \
--cc=joe@dastyle.net \
--cc=linux-ide@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).