RE: [U-Boot] MIPS UHI spec

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Matthew,

> -----Original Message-----
> From: Matthew Fortune
> Sent: 27 February 2015 20:46
> To: Andrew Bresticker; Daniel Schwierzeck
> Cc: Paul Burton; u-boot@xxxxxxxxxxxxx; Ezequiel Garcia; James Hartley;
> James Hogan; John Crispin; Jonas Gorski; Ralf Baechle; Linux-MIPS;
> cernekee@xxxxxxxxxxxx
> Subject: RE: [U-Boot] MIPS UHI spec
> 
> Andrew Bresticker <abrestic@xxxxxxxxxxxx> writes:
> > On Fri, Feb 27, 2015 at 2:44 AM, Daniel Schwierzeck
> > <daniel.schwierzeck@xxxxxxxxx> wrote:
> > > 2015-02-26 19:23 GMT+01:00 Andrew Bresticker
> <abrestic@xxxxxxxxxxxx>:
> > >> Hi,
> > >>
> > >> On Thu, Feb 26, 2015 at 4:37 AM, Daniel Schwierzeck
> > >> <daniel.schwierzeck@xxxxxxxxx> wrote:
> > >>> 2015-02-26 11:17 GMT+01:00 Paul Burton <paul.burton@xxxxxxxxxx>:
> > >>>> On Thu, Feb 19, 2015 at 01:50:23PM +0000, Matthew Fortune wrote:
> > >>>>> Hi Daniel,
> > >>>>>
> > >>>>> The spec for MIPS Unified Hosting Interface is available here:
> > >>>>>
> > >>>>> http://prplfoundation.org/wiki/MIPS_documentation
> > >>>>>
> > >>>>> As we have previously discussed, this is an ideal place to
> > >>>>> define the handover of device tree data from bootloader to
> > >>>>> kernel. Using
> > >>>>> a0 == -2 and defining which register(s) you need for the actual
> > >>>>> data will fit nicely. I'll happily include whatever is decided
> > >>>>> into the next version of the spec.
> > >>>
> > >>> this originates from an off-list discussion some months ago
> > >>> started by John Crispin.
> > >>>
> > >>> (CC +John, Ralf, Jonas, linux-mips)
> > >>>
> > >>>>
> > >>>> (CC +Andrew, Ezequiel, James, James)
> > >>>>
> > >>>> On the talk of DT handover, this recent patchset adding support
> > >>>> for a system doing so to Linux is relevant:
> > >>>>
> > >>>>
> > >>>> http://www.linux-mips.org/archives/linux-mips/2015-
> 02/msg00312.ht
> > >>>> ml
> > >>>>
> > >>>> I'm also working on a system for which I'll need to implement DT
> > >>>> handover very soon. It would be very nice if we could agree on
> > >>>> some standard way of doing so (and eventually if the code on the
> > >>>> Linux side can be generic enough to allow a multiplatform kernel).
> > >>
> > >> +1.  I would like to see this happen as well.
> > >>
> > >>> to be conformant with UHI I propose $a0 == -2 and $a1 == address
> > >>> of DT blob. It is a simple extension and should not interfere with
> > >>> the various legacy boot interfaces.
> > >>>
> > >>> U-Boot mainline code is almost ready for DT handover. I have
> > >>> prepared a patch [1] which completes it by implementing my proposal.
> > >>
> > >> Hmm... we decided to follow the ARM convention here ($a0 = 0, $a1 =
> > >> -1, $a2 = physical address of DTB), which is also what the BMIPS
> > >> platform (submitted by Kevin) is using for DT handover.  Is there
> > >> already a platform using the protocol you described?
> > >
> > > no, but with its publication the MIPS UHI spec is kind of official.
> > > AFAIK patches to support UHI in gcc, gdb, U-Boot etc. are already
> > > submitted or prepared. Matthew suggested that new boot protocols
> > > should be compliant with UHI. I think the ARM convention does not
> > > fit to UHI.
> >
> > Ok, I think we can change the boot protocol on Pistachio to match UHI
> > then.
> 
> If that is possible then it would be good. The UHI spec is intended to involve
> the various communities in further changes but the initial version had to
> make some tradeoffs and define some rules.
> 
> FWIW I was trying to keep the overall control of the handover protocol ultra
> simple by having a0 dictate the meaning of all other registers.
> The ARM protocol has ended up with two registers to indicate DTB handover
> making the a0==0 case have sub-categories.
> 
> Let me know if this doesn't end up possible and we can figure out how to
> cope with that in the spec.

FYI: We've updated Pistachio to use: $a0 == -2 and $a1 == address of DT blob.
This will filter up into a V2 of the patches submitted upstream.

Thanks,
James.






[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux