Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Jan 2013 11:08:56 +1300
From:      Andrew Turner <andrew@fubar.geek.nz>
To:        "Robert N. M. Watson" <rwatson@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r244899 - head/sys/mips/beri
Message-ID:  <20130102110856.7c280fd5@fubar.geek.nz>
In-Reply-To: <D89C1409-9D10-4C09-BBF8-E00CC9B6A57A@FreeBSD.org>
References:  <201212311106.qBVB6chM016661@svn.freebsd.org> <20130102081746.5435db05@fubar.geek.nz> <D89C1409-9D10-4C09-BBF8-E00CC9B6A57A@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 1 Jan 2013 20:56:15 +0000
"Robert N. M. Watson" <rwatson@FreeBSD.org> wrote:
> 
> On 1 Jan 2013, at 19:17, Andrew Turner wrote:
> 
> > This looks like it is too late in the boot process. If you are using
> > FDT you will need to use the FDT uart which is initialised in
> > cninit.
> 
> On a semi-related note: the current obstacle to moving more devices
> over to using FDT on BERI is that our FDT implementation appears to
> require a PIC to be configured. We're not actually using a PIC on
> BERI currently. It works fine attached to nexus, as the implied
> fallback for not having a PIC is to simply use the suitably numbered
> interrupt wires direct into the MIPS. However, trying the same setup
> described using FDT leads to an interrupt-related warning at boot,
> and no interrupt being provided to the driver. I suspect I need to
> provide a PIC-alike software component as a fall-back for the non-PIC
> case. From a brief e-mail exchange with JC, it sounds like the XLP
> FDT setup is actually not using interrupts either, currently.

I'm not sure if a PIC is required. From my reading of the code it
appears not. By the look of it if you are using the nexus to
handle interrupts you need to put an interrupts property in the device
and "#interrupt-cells = <1>;" in the soc node.

You will also need to implement an interrupt decode function and add it
to the fdt_pic_table array. ARM has a number of almost identical copies
of this function you can use for inspration.

Andrew



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