Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 03 Mar 2009 00:31:21 +0200
From:      Alexander Motin <mav@FreeBSD.org>
To:        Joe Marcus Clarke <marcus@FreeBSD.org>
Cc:        FreeBSD-Current <freebsd-current@FreeBSD.org>
Subject:   Re: Continuing saga: FreeBSD -CURRENT hangs with ATA code after April
Message-ID:  <49AC5E39.7090305@FreeBSD.org>
In-Reply-To: <1236029236.37252.113.camel@shumai.marcuscom.com>
References:  <gohee3$2lla$1@FreeBSD.cs.nctu.edu.tw>	 <49AC4DB3.9020007@FreeBSD.org> <1236029236.37252.113.camel@shumai.marcuscom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Joe Marcus Clarke wrote:
> On Mon, 2009-03-02 at 23:20 +0200, Alexander Motin wrote:
>> Joe Marcus Clarke wrote:
>>> I started this thread on May 31 of last year:
>>>
>>> http://lists.freebsd.org/pipermail/freebsd-current/2008-May/085923.html
>>>
>>> The problem remains as of:
>>>
>>> FreeBSD fugu.marcuscom.com 8.0-CURRENT FreeBSD 8.0-CURRENT #12: Sun Mar
>>> 1 16:10:52 EST 2009
>>> gnome@fugu.marcuscom.com:/space/obj/usr/src/sys/FUGU  i386
>>>
>>> The only way I can boot this system is to hack in the ATA code from
>>> April 9, 2008.  I would love just to be able to boot this guy on a
>>> default -CURRENT.
>> 1) If I understand right, you had working system on April 9, 2008 and 
>> not working on May 31, 2008 and now. Have you tried to narrow down that 
>> interval between working and not working system to find exact point of 
>> breakage? I see no documented changes in Promise support there in CVS 
>> log, but for example, on Apr 10 2008 I see some related changes 
>> unmentioned in commit message.
> 
> The April 9 date is the documented date of last working.  It was the
> commit on April 10 13:05:05 that broken things:
> 
> "Add experimental support for SATA Port Multipliers
> 
> Support is working on the Silicon Image SiI3124/3132.
> Support is working on some AHCI chips but far from all.
> 
> Remember this is WIP, so test reports and (constructive) suggestions are welcome!"

You can try to comment out
	/* set portmultiplier port */
	ATA_OUTB(ctlr->r_res2, 0x4e8 + (ch->unit << 8), port & 0x0f);
inside ata_promise_mio_command(). Don't know if there is some problem 
with it, but it was added at that time and looks like it is at least not 
applicable for this type of controller.

-- 
Alexander Motin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49AC5E39.7090305>