Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Jan 2013 11:58:49 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        Bruce Evans <brde@optusnet.com.au>
Cc:        "freebsd-hardware@freebsd.org" <freebsd-hardware@freebsd.org>
Subject:   Re: ppc fails to attach to puc on 9.1-STABLE, 7.4-STABLE works
Message-ID:  <201301181158.50048.jhb@freebsd.org>
In-Reply-To: <20130118184242.Q1470@besplex.bde.org>
References:  <20130110074052.GA8922@bali> <201301171337.56851.jhb@freebsd.org> <20130118184242.Q1470@besplex.bde.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, January 18, 2013 3:05:53 am Bruce Evans wrote:
> On Thu, 17 Jan 2013, John Baldwin wrote:
> 
> > On Wednesday, January 16, 2013 10:10:34 pm Bruce Evans wrote:
> >> On Wed, 16 Jan 2013, Andre Albsmeier wrote:
> >>
> >>> On Tue, 15-Jan-2013 at 21:27:07 +0100, John Baldwin wrote:
> 
> >>>>> [reading flags in the driver]
> >>>> This should not be needed for "flags".  Look for 'devflags' in
> >>>> sys/kern/subr_bus.c.  The kernel always reads the current 'flags' hint during
> >>>> device probe and stores them in dev->devflags and leaves them there after a
> >>>> successful probe (so they should be seen by attach).  Specifically, note:
> >>>>
> >>>> 		/* Set the winning driver, devclass, and flags. */
> >>
> >> So the flags interface is unusable before some driver "wins".
> >
> > No, we set it twice.  Specifically, it is set before each probe, then it is
> > set again after a winning driver is chosen so that the proper flags exist
> > during attach as well.
> 
> Why didn't it work for Andre then?

In followup e-mail he said it did work.  The one reason it might not have
worked before is that if he did 'ppc.0.at=foo' and that forced the ppc device
to be ppc1 instead of ppc0 in which case the ppc0 flags wouldn't have applied.
 
> It might be a layering problem, with the flags not working because the
> hint says that they are for ppc but the bus name being puc.  I thought
> that this problem was fixed.  In FreeBSD-~5.2, I had to add flags
> reading to sio_pci.c and sio_puc.c to get flags for sio actually seen
> by sio when the bus is not isa.  subr_bus.c does the 2 settings of the
> flags much the same in FreeBSD-~5.2, but this certainly doesn't work.

I don't know off hand. :(

-- 
John Baldwin



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