svn commit: r191568 - in head/sys/dev/ata: . chipsets

Alexander Motin mav at FreeBSD.org
Mon Apr 27 18:38:56 UTC 2009


Jung-uk Kim wrote:
> On Monday 27 April 2009 01:39 pm, Alexander Motin wrote:
>> Jung-uk Kim wrote:
>>> Author: jkim
>>> Date: Mon Apr 27 17:29:51 2009
>>> New Revision: 191568
>>> URL: http://svn.freebsd.org/changeset/base/191568
>>>
>>> Log:
>>>   - Always force AHCI mode on a ATI/AMD SB600/700/800 SATA
>>> controller.  These controllers may be configured as legacy IDE
>>> mode by modifying subclass and progif without actually changing
>>> PCI device IDs.  Instead of complicating code, we always force
>>> AHCI mode while probing.  Also we restore AHCI mode while
>>> resuming per ATI/AMD register programming/requirement guides. -
>>> Fix SB700/800 "combined" mode.  Unlike SB600, this PATA
>>> controller can combine two SATA ports and emulate one PATA
>>> channel as primary or secondary depending on BIOS configuration. 
>>> When the combined mode is disabled, this channel disappears and
>>> it works just like SB600 PATA controller, however. - Add more PCI
>>> device IDs for SB700/800 and adjust device descriptions. SB800
>>> shares the same PCI device IDs and added two more SATA IDs.
>> Thanks.
> 
> Thank you for answering my stupid questions!
> 
> BTW, ATI SATA phy reset/resume requires slightly different sequence 
> from generic AHCI one but it just works (with little annoying timeout 
> message). :-)

If you are talking about port 15 soft-reset timeout when port multiplier 
is absent, then this is known ATI controllers bug/feature. I have even 
added some comments in ata-ahci.c about it, but as soon as it is 
nonstandard and I have no respective hardware, I have left it for later.

-- 
Alexander Motin


More information about the svn-src-head mailing list