* bi_recs
@ 2004-09-30 23:02 Jon Masters
2004-09-30 23:21 ` bi_recs Benjamin Herrenschmidt
0 siblings, 1 reply; 23+ messages in thread
From: Jon Masters @ 2004-09-30 23:02 UTC (permalink / raw)
To: linuxppc-embedded
Hi all,
Would someone (Tom, Matt, Cort, Paul or Dan?) please tell me what the
status is of bi_recs?
I first discussed the idea of this at the FOSDEM and not much has come
of it - but I would be happy to work on getting flexible system
configuration to the kernel on ppc without OF as this will then allow
a stock kernel without any need for builtin notions of memory layout.
Am I missing something that's already been implemented?
Jon.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-09-30 23:02 bi_recs Jon Masters
@ 2004-09-30 23:21 ` Benjamin Herrenschmidt
2004-09-30 23:53 ` bi_recs Jon Masters
0 siblings, 1 reply; 23+ messages in thread
From: Benjamin Herrenschmidt @ 2004-09-30 23:21 UTC (permalink / raw)
To: jonathan; +Cc: linuxppc-embedded
On Fri, 2004-10-01 at 09:02, Jon Masters wrote:
> Hi all,
>
> Would someone (Tom, Matt, Cort, Paul or Dan?) please tell me what the
> status is of bi_recs?
>
> I first discussed the idea of this at the FOSDEM and not much has come
> of it - but I would be happy to work on getting flexible system
> configuration to the kernel on ppc without OF as this will then allow
> a stock kernel without any need for builtin notions of memory layout.
> Am I missing something that's already been implemented?
bi_recs were supposed to evolve in that direction but that never happened.
On the other hand, on ppc64, I took a different approach and decided that
an OF tree would be mandatory, but you don't need OF to have one.
I rewrote prom_init (the interface to OF) so that instead of tapping kenrel
globals directly and generating struct device_node, it generates a flattened
version of the device-tree and passes that to the kernel. That means that
if you can provide a "blob" with such a tree in it, you can bypass prom_init.
The tree doesn't need to be complete (like it doesn't need to contain all
the PCI devices) and generating such a flattened tree from userland, from
a text file for example, should be easy, or generate one from whatever
infos your bootloader provides.
But on the other hand, I've given up a long time ago trying to enforce any
kind of sane model on ppc32 because the embedded folks only care about having
a quick ugly broken hack to work with their board, thus the explosion of
various incompatible boot_info structures that we have nowadays.
Ben.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-09-30 23:21 ` bi_recs Benjamin Herrenschmidt
@ 2004-09-30 23:53 ` Jon Masters
2004-10-01 3:11 ` bi_recs Kumar Gala
0 siblings, 1 reply; 23+ messages in thread
From: Jon Masters @ 2004-09-30 23:53 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: linuxppc-embedded
On Fri, 01 Oct 2004 09:21:50 +1000, Benjamin Herrenschmidt
<benh@kernel.crashing.org> wrote:
>
>
> On Fri, 2004-10-01 at 09:02, Jon Masters wrote:
> > Hi all,
> >
> > Would someone (Tom, Matt, Cort, Paul or Dan?) please tell me what the
> > status is of bi_recs?
> >
> > I first discussed the idea of this at the FOSDEM and not much has come
> > of it - but I would be happy to work on getting flexible system
> > configuration to the kernel on ppc without OF as this will then allow
> > a stock kernel without any need for builtin notions of memory layout.
> > Am I missing something that's already been implemented?
>
> bi_recs were supposed to evolve in that direction but that never happened.
Right. That needs fixing.
> On the other hand, on ppc64, I took a different approach and decided that
> an OF tree would be mandatory, but you don't need OF to have one.
I thought about this too when Jonathan Corbett was talking about sysfs
ages ago. I thought I might have come up with something - but as usual
it seems that you got there first ;-).
> I rewrote prom_init (the interface to OF)
(I know the ppc32 code but have not looked at the ppc64 code - in fact
tonight on the train I was looking at a FIXME in the ftr_fixup code
and a few other bits I plan to look at).
> so that instead of tapping kenrel
> globals directly and generating struct device_node, it generates a flattened
> version of the device-tree and passes that to the kernel. That means that
> if you can provide a "blob" with such a tree in it, you can bypass prom_init.
I thought about that as an approach. Great - you do it already how I thought.
> The tree doesn't need to be complete (like it doesn't need to contain all
> the PCI devices) and generating such a flattened tree from userland, from
> a text file for example, should be easy, or generate one from whatever
> infos your bootloader provides.
That's what I thought. I'm motivated by horrible *ugly* broken Xilinx
hacks (EDK MHS) which try to bastardise a HAL on to Linux that really
doesn't want to be there - they should have instead been able to pass
their autogenerated output to the kernel at boot time rather than have
it compiled in as they do now.
> But on the other hand, I've given up a long time ago trying to enforce any
> kind of sane model on ppc32 because the embedded folks only care about having
> a quick ugly broken hack to work with their board, thus the explosion of
> various incompatible boot_info structures that we have nowadays.
Yes indeed. It's ugly and needs fixing so I'll take a look at it - I
just don't want to do this if everyone here already knows of a better
solution which will work.
Then Xilinx et al can generate memory maps and we can head towards
having a single kernel binary bootable on multiple different ppc
boards.
Cheers,
Jon.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-09-30 23:53 ` bi_recs Jon Masters
@ 2004-10-01 3:11 ` Kumar Gala
2004-10-01 3:40 ` bi_recs Benjamin Herrenschmidt
2004-10-01 22:06 ` bi_recs Tom Rini
0 siblings, 2 replies; 23+ messages in thread
From: Kumar Gala @ 2004-10-01 3:11 UTC (permalink / raw)
To: jonathan; +Cc: linuxppc-embedded
> > But on the other hand, I've given up a long time ago trying to
> enforce any
> > kind of sane model on ppc32 because the embedded folks only care
> about having
> > a quick ugly broken hack to work with their board, thus the
> explosion of
> > various incompatible boot_info structures that we have nowadays.
>
> Yes indeed. It's ugly and needs fixing so I'll take a look at it - I
> just don't want to do this if everyone here already knows of a better
> solution which will work.
>
> Then Xilinx et al can generate memory maps and we can head towards
> having a single kernel binary bootable on multiple different ppc
> boards.
I would be nice to have an extensive and dynamic way to pass info from
the bootloader to the kernel. I believe that Wolfgang has stated he
would be willing to change u-boot to match. I'd be willing to fixup
and move Freescale boards over to use something as long as we get
u-boot to support it as well.
I've been told that ARM has a solution, in place, to this problem that
might always be worth looking at.
- kumar
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-01 3:11 ` bi_recs Kumar Gala
@ 2004-10-01 3:40 ` Benjamin Herrenschmidt
2004-10-01 11:14 ` bi_recs Jon Masters
2004-10-01 22:06 ` bi_recs Tom Rini
1 sibling, 1 reply; 23+ messages in thread
From: Benjamin Herrenschmidt @ 2004-10-01 3:40 UTC (permalink / raw)
To: Kumar Gala; +Cc: jonathan, linuxppc-embedded
On Fri, 2004-10-01 at 13:11, Kumar Gala wrote:
>
> I would be nice to have an extensive and dynamic way to pass info from
> the bootloader to the kernel. I believe that Wolfgang has stated he
> would be willing to change u-boot to match. I'd be willing to fixup
> and move Freescale boards over to use something as long as we get
> u-boot to support it as well.
>
> I've been told that ARM has a solution, in place, to this problem that
> might always be worth looking at.
I'd rather see you guys sync with what I did on ppc64 and use that
kind of OF device-tree, we already have all the code for using it
and it would make the mecanism compatible with the prep/chrp/pmac
kernel...
But that's just a suggestion...
Ben.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-01 3:40 ` bi_recs Benjamin Herrenschmidt
@ 2004-10-01 11:14 ` Jon Masters
2004-10-01 14:53 ` [PATCH] for linuxppc-2.4 tree: adds Memec 2VP7 / 2VP4 board support Andrei Konovalov
2004-10-01 21:54 ` bi_recs Jon Masters
0 siblings, 2 replies; 23+ messages in thread
From: Jon Masters @ 2004-10-01 11:14 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: linuxppc-embedded
Benjamin Herrenschmidt wrote:
> On Fri, 2004-10-01 at 13:11, Kumar Gala wrote:
>>I've been told that ARM has a solution, in place, to this problem that
>>might always be worth looking at.
I asked on their mailing list a while ago in preparation but I think Ben
has the best approach.
> I'd rather see you guys sync with what I did on ppc64 and use that
> kind of OF device-tree, we already have all the code for using it
> and it would make the mecanism compatible with the prep/chrp/pmac
> kernel...
Yeah. I'm going to start ripping through your code at the weekend and
figure out how what you've done - not having a nice shiney ppc64 box
means I've not yet got an excuse to play with that tree myself. I am
however hopefull that my next Powerbook will be a G5 :-).
> But that's just a suggestion...
Taken.
Jon.
^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH] for linuxppc-2.4 tree: adds Memec 2VP7 / 2VP4 board support
2004-10-01 11:14 ` bi_recs Jon Masters
@ 2004-10-01 14:53 ` Andrei Konovalov
2004-10-01 21:54 ` bi_recs Jon Masters
1 sibling, 0 replies; 23+ messages in thread
From: Andrei Konovalov @ 2004-10-01 14:53 UTC (permalink / raw)
To: linuxppc-embedded
Hi,
The patch is for 2VP7 or 2VP4 "Virtex-II Pro Development board"
with P160 COMM Module installed.
The supported peripherals are:
- 2x 16x50 compatible UARTs (the 2nd one is on the COMM Module),
- 10/100 Mbit ethernet controller using SGDMA mode
- MTD device for two flash/SRAM chips on the COMM Module (just flash suport)
- 2x16 character LCD
- GPIO (4 LEDs, 3 buttons, DIP switches).
MAC address is supposed to be in the COMM Module's flash. If it is not there
the default (hardcoded) one is used.
The patch relies heavily on the Xilinx Virtex-II Pro support (introduced with
Xilinx ML300 board support).
I know that linuxppc-2.4 is not for patches, but linux-2.4 has no Virtex-II Pro stuff at all.
The patch itself can be found here:
http://source.mvista.com/~ank/memec2vpx.2dot4.04.diff
Best regards,
Andrei Konovalov
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-01 11:14 ` bi_recs Jon Masters
2004-10-01 14:53 ` [PATCH] for linuxppc-2.4 tree: adds Memec 2VP7 / 2VP4 board support Andrei Konovalov
@ 2004-10-01 21:54 ` Jon Masters
2004-10-02 4:35 ` bi_recs Benjamin Herrenschmidt
1 sibling, 1 reply; 23+ messages in thread
From: Jon Masters @ 2004-10-01 21:54 UTC (permalink / raw)
To: Jon Masters; +Cc: linuxppc-embedded
On Fri, 01 Oct 2004 12:14:52 +0100, Jon Masters <jonathan@jonmasters.org> wrote:
> Benjamin Herrenschmidt wrote:
> > I'd rather see you guys sync with what I did on ppc64 and use that
> > kind of OF device-tree, we already have all the code for using it
> > and it would make the mecanism compatible with the prep/chrp/pmac
> > kernel...
>
> Yeah. I'm going to start ripping through your code at the weekend and
> figure out how what you've done - not having a nice shiney ppc64 box
> means I've not yet got an excuse to play with that tree myself. I am
> however hopefull that my next Powerbook will be a G5 :-).
Hmmm...
ppc64 head.S and startup looks quite fun. After jumping through a few
hoops you eventually end up in prom_init and start setting up the OF
device-tree (btw it looks like at least one call to prom_panic doesn't
relocate the string it wants to print to real memory - is this what
the comments are referring to out of sheer interest?). I am assuming
that you always expect to see an Open Firmware on ppc64 and simply use
bi_recs to pass accross additional information from the bootloader,
but I've only had a cursory look on the train on the way home from
work this evening so please be gentle.
I'll give this a go through over the weekend and figure out how to get
this hooked in to the ppc32 tree.
Jon.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-01 3:11 ` bi_recs Kumar Gala
2004-10-01 3:40 ` bi_recs Benjamin Herrenschmidt
@ 2004-10-01 22:06 ` Tom Rini
2004-10-04 6:07 ` bi_recs Pantelis Antoniou
1 sibling, 1 reply; 23+ messages in thread
From: Tom Rini @ 2004-10-01 22:06 UTC (permalink / raw)
To: Kumar Gala; +Cc: jonathan, linuxppc-embedded
On Thu, Sep 30, 2004 at 10:11:03PM -0500, Kumar Gala wrote:
> >> But on the other hand, I've given up a long time ago trying to
> >enforce any
> > > kind of sane model on ppc32 because the embedded folks only care
> >about having
> > > a quick ugly broken hack to work with their board, thus the
> >explosion of
> > > various incompatible boot_info structures that we have nowadays.
> >
> >Yes indeed. It's ugly and needs fixing so I'll take a look at it - I
> > just don't want to do this if everyone here already knows of a better
> > solution which will work.
> >
> >Then Xilinx et al can generate memory maps and we can head towards
> > having a single kernel binary bootable on multiple different ppc
> > boards.
>
> I would be nice to have an extensive and dynamic way to pass info from
> the bootloader to the kernel. I believe that Wolfgang has stated he
> would be willing to change u-boot to match. I'd be willing to fixup
> and move Freescale boards over to use something as long as we get
> u-boot to support it as well.
>
> I've been told that ARM has a solution, in place, to this problem that
> might always be worth looking at.
I know the ARM folks on the list will yell at me, but to be a bit too
simple, it's a linked list of BI_ bits.
I've been thinking about it, and I do believe that Ben's flattened OF
tree wins the "show me the code" race, so lets go that way. I'll add in
that for most platforms we'll want to build up the tree at compile time,
but U-Boot, and anything else smart enough can pass one in for real.
Jon, I look forward to your patch. :)
--
Tom Rini
http://gate.crashing.org/~trini/
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-01 21:54 ` bi_recs Jon Masters
@ 2004-10-02 4:35 ` Benjamin Herrenschmidt
2004-10-02 12:59 ` bi_recs Jon Masters
0 siblings, 1 reply; 23+ messages in thread
From: Benjamin Herrenschmidt @ 2004-10-02 4:35 UTC (permalink / raw)
To: jonathan; +Cc: linuxppc-embedded
>
> ppc64 head.S and startup looks quite fun. After jumping through a few
> hoops you eventually end up in prom_init and start setting up the OF
> device-tree (btw it looks like at least one call to prom_panic doesn't
> relocate the string it wants to print to real memory - is this what
> the comments are referring to out of sheer interest?). I am assuming
> that you always expect to see an Open Firmware on ppc64 and simply use
> bi_recs to pass accross additional information from the bootloader,
> but I've only had a cursory look on the train on the way home from
> work this evening so please be gentle.
>
> I'll give this a go through over the weekend and figure out how to get
> this hooked in to the ppc32 tree.
bi_recs have been removed completely from ppc64. head.S explains
how the entry is done. You can enter the kernel with r5=NULL if
you provide the flattened device-tree in r3. prom_init does just
that in fact (re-enters the kernel with that setup).
Ben.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-02 4:35 ` bi_recs Benjamin Herrenschmidt
@ 2004-10-02 12:59 ` Jon Masters
0 siblings, 0 replies; 23+ messages in thread
From: Jon Masters @ 2004-10-02 12:59 UTC (permalink / raw)
To: Benjamin Herrenschmidt; +Cc: linuxppc-embedded
On Sat, 02 Oct 2004 14:35:32 +1000, Benjamin Herrenschmidt
<benh@kernel.crashing.org> wrote:
> bi_recs have been removed completely from ppc64.
Sorry. I was getting confused by old references in the prom_init stuff
in 2.6.8.1 and couldn't see how it handled systems without OF - but I
was looking at this the wrong way around.
> head.S explains how the entry is done.
Yeah. I hadn't looked at how this is actually linked together (I don't
have ppc64 myself remember so I'm just getting up to speed on which bk
tree is which and so on at this stage). I can clearly see the
multiplatform entry stuff now so thanks. It might help for me to build
a kernel and look at it with objdump (which is what I usually do to
figure out layouts).
> You can enter the kernel with r5=NULL if
> you provide the flattened device-tree in r3.
I'll get there. Just need a bit of time to get familiar with the code
- I'll probably followup with annoying questions later on in the early
hours UK time :-).
Jon.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-01 22:06 ` bi_recs Tom Rini
@ 2004-10-04 6:07 ` Pantelis Antoniou
2004-10-04 12:09 ` bi_recs Mark Chambers
` (3 more replies)
0 siblings, 4 replies; 23+ messages in thread
From: Pantelis Antoniou @ 2004-10-04 6:07 UTC (permalink / raw)
To: Tom Rini; +Cc: jonathan, linuxppc-embedded
Tom Rini wrote:
>On Thu, Sep 30, 2004 at 10:11:03PM -0500, Kumar Gala wrote:
>
>>>>But on the other hand, I've given up a long time ago trying to
>>>>
>>>enforce any
>>>
>>>>kind of sane model on ppc32 because the embedded folks only care
>>>>
>>>about having
>>>
>>>>a quick ugly broken hack to work with their board, thus the
>>>>
>>>explosion of
>>>
>>>>various incompatible boot_info structures that we have nowadays.
>>>>
>>>Yes indeed. It's ugly and needs fixing so I'll take a look at it - I
>>>just don't want to do this if everyone here already knows of a better
>>>solution which will work.
>>>
>>>Then Xilinx et al can generate memory maps and we can head towards
>>>having a single kernel binary bootable on multiple different ppc
>>>boards.
>>>
>>I would be nice to have an extensive and dynamic way to pass info from
>>the bootloader to the kernel. I believe that Wolfgang has stated he
>>would be willing to change u-boot to match. I'd be willing to fixup
>>and move Freescale boards over to use something as long as we get
>>u-boot to support it as well.
>>
>>I've been told that ARM has a solution, in place, to this problem that
>>might always be worth looking at.
>>
>
>I know the ARM folks on the list will yell at me, but to be a bit too
>simple, it's a linked list of BI_ bits.
>
>I've been thinking about it, and I do believe that Ben's flattened OF
>tree wins the "show me the code" race, so lets go that way. I'll add in
>that for most platforms we'll want to build up the tree at compile time,
>but U-Boot, and anything else smart enough can pass one in for real.
>
>Jon, I look forward to your patch. :)
>
>
Allow me, to cut in and plug my own thing.
If you follow the u-boot-users list, you'll know that some time
ago there was a similar discussion.
I too need to access and use firmware variables from Linux
and the solution I came up is extremely simple.
I just create an argv of all the environment variables of the firmware
and I pass the psysical address of that NULL terminated argv array
to the kernel command line like so... "u-boot-env=0x0f000f00".
I have working patches for u-boot, the kernel parser, a kernel /proc
interface
for accessing them and also some patches for busybox which make access
easier as well as supporting saving them to non volatile storage.
I know this is the Nth time this discussion is taking place bu IMO something
must be finally decided. I don't really care if my solution will be selected
as long as something is at last selected.
Regards
Pantelis
P.S. Hope wd is listening in and come forward with his thoughts...
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 6:07 ` bi_recs Pantelis Antoniou
@ 2004-10-04 12:09 ` Mark Chambers
2004-10-04 12:45 ` bi_recs Jon Masters
` (2 subsequent siblings)
3 siblings, 0 replies; 23+ messages in thread
From: Mark Chambers @ 2004-10-04 12:09 UTC (permalink / raw)
To: linuxppc-embedded
>
> I just create an argv of all the environment variables of the firmware
> and I pass the psysical address of that NULL terminated argv array
> to the kernel command line like so... "u-boot-env=0x0f000f00".
>
This would be a variation of the "human readable ASCII format"
technique, right? I had once ventured to offer my opinion that this
would be a technique that could work for all architectures, which is
a big plus, IMO. My mistake was suggesting XML, which I think
was [mis]understood by some as requiring a lot more than a few
extra "</" type characters. I'm offering my opinion not as an expert
but as someone who not too long ago tried to puzzle through the
bootloader/kernel interface and found it unnecessarily obscure. I
think an ASCIIZ string array of some sort would be immediately
obvious and thus highly maintainable by all.
Mark Chambers
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 6:07 ` bi_recs Pantelis Antoniou
2004-10-04 12:09 ` bi_recs Mark Chambers
@ 2004-10-04 12:45 ` Jon Masters
2004-10-04 16:43 ` bi_recs Dan Malek
2004-10-04 20:20 ` bi_recs Wolfgang Denk
2004-10-04 14:29 ` bi_recs Tom Rini
2004-10-04 20:18 ` bi_recs Wolfgang Denk
3 siblings, 2 replies; 23+ messages in thread
From: Jon Masters @ 2004-10-04 12:45 UTC (permalink / raw)
To: Pantelis Antoniou; +Cc: linuxppc-embedded
On Mon, 04 Oct 2004 09:07:20 +0300, Pantelis Antoniou <panto@intracom.gr> wrote:
> Allow me, to cut in and plug my own thing.
Yeah cool. btw, I looked at the ppc64 stuff (having eventually
realised I need to be using the bk tree for everything ppc64 rather
than 2.6.8.1) and I see what benh is getting at now - so I am figuring
out the best way to proceed on that front. None of my boards support
2.6 yet so I either fix that this week or get up and running with 2.4
first. Anyway, I'm working on it in my spare time.
> If you follow the u-boot-users list, you'll know that some time
> ago there was a similar discussion.
I don't, but I will sign up to the list at some point. Currently I use
my own firmware as I was too lazy to go figure out the ins and outs of
uboot :-).
> I just create an argv of all the environment variables of the firmware
> and I pass the psysical address of that NULL terminated argv array
> to the kernel command line like so... "u-boot-env=0x0f000f00".
I think that's an approach which works up to a point. It's nice to
have a hierachy of devices like with OF because then we can infer
things like order of devices on a bus that need to be shutdown for a
suspend. This can be done as a flat list but I the reason ben put me
off my original idea of going with tagged records is that OF is
clearly the better approach.
> I have working patches for u-boot, the kernel parser, a kernel /proc
> interface for accessing them and also some patches for busybox
That's great. So seriously worth looking at then.
> I know this is the Nth time this discussion is taking place bu IMO
So we probably need to decide. I think Mark's XML idea also works, but
I don't see anything wrong with a flattened OF type tree either since
it's ASCII strings also, just layed out in a slightly more involved
fashion than having a long list of parameters.
I'm going to get this OF thing sorted anyway because it's worth having
that option - but I'm indifferent towards what is ultimately decided
(as long as something is agreed upon). If we went with a solution such
as yours then I would prefer Mark's idea of a structured set of data.
This way I can say which PCI bridge device X lives behind in a nicer
fashion.
Blah.
Jon.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 6:07 ` bi_recs Pantelis Antoniou
2004-10-04 12:09 ` bi_recs Mark Chambers
2004-10-04 12:45 ` bi_recs Jon Masters
@ 2004-10-04 14:29 ` Tom Rini
2004-10-04 14:41 ` bi_recs Matt Porter
2004-10-04 20:18 ` bi_recs Wolfgang Denk
3 siblings, 1 reply; 23+ messages in thread
From: Tom Rini @ 2004-10-04 14:29 UTC (permalink / raw)
To: Pantelis Antoniou; +Cc: jonathan, linuxppc-embedded
On Mon, Oct 04, 2004 at 09:07:20AM +0300, Pantelis Antoniou wrote:
> Tom Rini wrote:
[snip]
> >I've been thinking about it, and I do believe that Ben's flattened OF
> >tree wins the "show me the code" race, so lets go that way. I'll add in
> >that for most platforms we'll want to build up the tree at compile time,
> >but U-Boot, and anything else smart enough can pass one in for real.
> >
> >Jon, I look forward to your patch. :)
> >
> >
> Allow me, to cut in and plug my own thing.
[snip]
> I just create an argv of all the environment variables of the firmware
> and I pass the psysical address of that NULL terminated argv array
> to the kernel command line like so... "u-boot-env=0x0f000f00".
The 'problem' I forsee with this is that we still have two methods for
getting stuff in, an OF tree or env array. If we got with a fake OF
tree, we have just one method and we can always use it.
[snip]
> I know this is the Nth time this discussion is taking place bu IMO something
> must be finally decided. I don't really care if my solution will be selected
> as long as something is at last selected.
As far as I'm concerned, unless some horrible problem springs up that
we can't resolve, this is it.
--
Tom Rini
http://gate.crashing.org/~trini/
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 14:29 ` bi_recs Tom Rini
@ 2004-10-04 14:41 ` Matt Porter
2004-10-04 15:00 ` bi_recs Kumar Gala
2004-10-04 15:06 ` bi_recs Jon Masters
0 siblings, 2 replies; 23+ messages in thread
From: Matt Porter @ 2004-10-04 14:41 UTC (permalink / raw)
To: Tom Rini; +Cc: jonathan, linuxppc-embedded
On Mon, Oct 04, 2004 at 07:29:09AM -0700, Tom Rini wrote:
> On Mon, Oct 04, 2004 at 09:07:20AM +0300, Pantelis Antoniou wrote:
> > Tom Rini wrote:
> [snip]
> > >I've been thinking about it, and I do believe that Ben's flattened OF
> > >tree wins the "show me the code" race, so lets go that way. I'll add in
> > >that for most platforms we'll want to build up the tree at compile time,
> > >but U-Boot, and anything else smart enough can pass one in for real.
> > >
> > >Jon, I look forward to your patch. :)
> > >
> > >
> > Allow me, to cut in and plug my own thing.
> [snip]
> > I just create an argv of all the environment variables of the firmware
> > and I pass the psysical address of that NULL terminated argv array
> > to the kernel command line like so... "u-boot-env=0x0f000f00".
>
> The 'problem' I forsee with this is that we still have two methods for
> getting stuff in, an OF tree or env array. If we got with a fake OF
> tree, we have just one method and we can always use it.
>
> [snip]
> > I know this is the Nth time this discussion is taking place bu IMO something
> > must be finally decided. I don't really care if my solution will be selected
> > as long as something is at last selected.
>
> As far as I'm concerned, unless some horrible problem springs up that
> we can't resolve, this is it.
Same here, I see that no one has raised a technical issue with the
flattened device tree method. Since it is a working mechanism AND it
unifies the arch, it's the clear choice over reinventing the wheel.
All we need is an implementation.
-Matt
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 14:41 ` bi_recs Matt Porter
@ 2004-10-04 15:00 ` Kumar Gala
2004-10-04 15:06 ` bi_recs Jon Masters
1 sibling, 0 replies; 23+ messages in thread
From: Kumar Gala @ 2004-10-04 15:00 UTC (permalink / raw)
To: Matt Porter; +Cc: jonathan, linuxppc-embedded
On Oct 4, 2004, at 9:41 AM, Matt Porter wrote:
> On Mon, Oct 04, 2004 at 07:29:09AM -0700, Tom Rini wrote:
> > On Mon, Oct 04, 2004 at 09:07:20AM +0300, Pantelis Antoniou wrote:
> > > Tom Rini wrote:
> > [snip]
> > > >I've been thinking about it, and I do believe that Ben's=20
> flattened OF
> > > >tree wins the "show me the code" race, so lets go that way.=A0=20=
> I'll add in
> > > >that for most platforms we'll want to build up the tree at=20
> compile time,
> > > >but U-Boot, and anything else smart enough can pass one in for=20=
> real.
> > > >
> > > >Jon, I look forward to your patch. :)
> > > >
> > > >
> > > Allow me, to cut in and plug my own thing.
> > [snip]
> > > I just create an argv of all the environment variables of the=20
> firmware
> > > and I pass the psysical address of that NULL terminated argv =
array
> > > to the kernel command line like so... "u-boot-env=3D0x0f000f00".
> >
> > The 'problem' I forsee with this is that we still have two methods=20=
> for
> > getting stuff in, an OF tree or env array.=A0 If we got with a fake =
OF
> > tree, we have just one method and we can always use it.
> >
> > [snip]
> > > I know this is the Nth time this discussion is taking place bu=20
> IMO something
> > > must be finally decided. I don't really care if my solution will=20=
> be selected
> > > as long as something is at last selected.
> >
> > As far as I'm concerned, unless some horrible problem springs up =
that
> > we can't resolve, this is it.
>
> Same here, I see that no one has raised a technical issue with the
> flattened device tree method. Since it is a working mechanism AND it
> unifies the arch, it's the clear choice over reinventing the wheel.
> All we need is an implementation.
I'm in agreement with Matt and Tom. We should only have one solution=20
to this problem.
- kumar
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 14:41 ` bi_recs Matt Porter
2004-10-04 15:00 ` bi_recs Kumar Gala
@ 2004-10-04 15:06 ` Jon Masters
2004-10-04 15:47 ` bi_recs Kumar Gala
1 sibling, 1 reply; 23+ messages in thread
From: Jon Masters @ 2004-10-04 15:06 UTC (permalink / raw)
To: Matt Porter; +Cc: linuxppc-embedded
Matt Porter wrote:
> Same here, I see that no one has raised a technical issue with the
> flattened device tree method. Since it is a working mechanism AND it
> unifies the arch, it's the clear choice over reinventing the wheel.
> All we need is an implementation.
Well don't go writing it as I'll get there sometime soon - just need
chance to fit it in with worky stuff this week. If you don't see a patch
from me by the weekend then you're welcome to hit me with large pointy
sticks at next OLS.
Jon.
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 15:06 ` bi_recs Jon Masters
@ 2004-10-04 15:47 ` Kumar Gala
0 siblings, 0 replies; 23+ messages in thread
From: Kumar Gala @ 2004-10-04 15:47 UTC (permalink / raw)
To: Jon Masters; +Cc: <linuxppc-embedded@ozlabs.org>
Jon,
Do you mind writing up a bit about what you have learned on the ppc64
side and sending that to the list. I'm significantly deficient on my
open firmware knowledge. (If you do this I might be able to help or
find help to get this moved into ppc32)
thanks
- kumar
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 12:45 ` bi_recs Jon Masters
@ 2004-10-04 16:43 ` Dan Malek
2004-10-04 21:53 ` bi_recs Tom Rini
2004-10-04 20:20 ` bi_recs Wolfgang Denk
1 sibling, 1 reply; 23+ messages in thread
From: Dan Malek @ 2004-10-04 16:43 UTC (permalink / raw)
To: jonathan; +Cc: linuxppc-embedded
On Oct 4, 2004, at 8:45 AM, Jon Masters wrote:
> I think that's an approach which works up to a point. It's nice to
> have a hierachy of devices like with OF because then we can infer
> things like order of devices on a bus that need to be shutdown for a
> suspend.
The problem with a hierarchy of devices is that isn't the kind of
information we need in an embedded system. With the embedded
system, you have a pretty good idea what you have. We need
_environment_ information, such as MAC addresses, memory sizes
and other information tidbits are are likely to vary within an embedded
system. This is something an OF tree doesn't give us.
The OF tree is great for workstations or other highly configurable
systems where you don't know what kind of device is plugged into
a PCI bus and you have an OF function to initialize that device.
When you have a bunch of integrated peripherals, you know they
are present and you need unique configuration information for
them, not where they are located on the address bus (because
you already know that).
Thanks.
-- Dan
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 6:07 ` bi_recs Pantelis Antoniou
` (2 preceding siblings ...)
2004-10-04 14:29 ` bi_recs Tom Rini
@ 2004-10-04 20:18 ` Wolfgang Denk
3 siblings, 0 replies; 23+ messages in thread
From: Wolfgang Denk @ 2004-10-04 20:18 UTC (permalink / raw)
To: Pantelis Antoniou; +Cc: jonathan, linuxppc-embedded
In message <4160E898.9080905@intracom.gr> you wrote:
>
> I too need to access and use firmware variables from Linux
> and the solution I came up is extremely simple.
...and known to have problems.
> P.S. Hope wd is listening in and come forward with his thoughts...
I do, but I won't repeat all the arguments again.
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd@denx.de
core error - bus dumped
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 12:45 ` bi_recs Jon Masters
2004-10-04 16:43 ` bi_recs Dan Malek
@ 2004-10-04 20:20 ` Wolfgang Denk
1 sibling, 0 replies; 23+ messages in thread
From: Wolfgang Denk @ 2004-10-04 20:20 UTC (permalink / raw)
To: jonathan; +Cc: linuxppc-embedded
In message <35fb2e5904100405451423c391@mail.gmail.com> you wrote:
>
> > I have working patches for u-boot, the kernel parser, a kernel /proc
> > interface for accessing them and also some patches for busybox
>
> That's great. So seriously worth looking at then.
Not really. I already explained on the U-Boot list why such a patch
will not make it into U-Boot. Please read _all_ of the discussion
before wasting your time.
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd@denx.de
As far as we know, our computer has never had an undetected error.
-- Weisert
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: bi_recs
2004-10-04 16:43 ` bi_recs Dan Malek
@ 2004-10-04 21:53 ` Tom Rini
0 siblings, 0 replies; 23+ messages in thread
From: Tom Rini @ 2004-10-04 21:53 UTC (permalink / raw)
To: Dan Malek; +Cc: jonathan, linuxppc-embedded
On Mon, Oct 04, 2004 at 12:43:21PM -0400, Dan Malek wrote:
>
> On Oct 4, 2004, at 8:45 AM, Jon Masters wrote:
>
> >I think that's an approach which works up to a point. It's nice to
> >have a hierachy of devices like with OF because then we can infer
> >things like order of devices on a bus that need to be shutdown for a
> >suspend.
>
> The problem with a hierarchy of devices is that isn't the kind of
> information we need in an embedded system. With the embedded
> system, you have a pretty good idea what you have. We need
> _environment_ information, such as MAC addresses, memory sizes
> and other information tidbits are are likely to vary within an embedded
> system. This is something an OF tree doesn't give us.
There's nothing saying that what we know to Always Be True must be Put
Into The Tree. We can just have say, /ethN/mac for the mac address we
yank out of firmware somehow, but leave the addresses we know as part of
the OCP table, or whatever.
No one is saying we have to have a tree that fully describes every bit
of the system. Just a tree that describes what we don't know at compile
time. The tree for what we know is in OCP already. :)
--
Tom Rini
http://gate.crashing.org/~trini/
^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2004-10-04 21:53 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-09-30 23:02 bi_recs Jon Masters
2004-09-30 23:21 ` bi_recs Benjamin Herrenschmidt
2004-09-30 23:53 ` bi_recs Jon Masters
2004-10-01 3:11 ` bi_recs Kumar Gala
2004-10-01 3:40 ` bi_recs Benjamin Herrenschmidt
2004-10-01 11:14 ` bi_recs Jon Masters
2004-10-01 14:53 ` [PATCH] for linuxppc-2.4 tree: adds Memec 2VP7 / 2VP4 board support Andrei Konovalov
2004-10-01 21:54 ` bi_recs Jon Masters
2004-10-02 4:35 ` bi_recs Benjamin Herrenschmidt
2004-10-02 12:59 ` bi_recs Jon Masters
2004-10-01 22:06 ` bi_recs Tom Rini
2004-10-04 6:07 ` bi_recs Pantelis Antoniou
2004-10-04 12:09 ` bi_recs Mark Chambers
2004-10-04 12:45 ` bi_recs Jon Masters
2004-10-04 16:43 ` bi_recs Dan Malek
2004-10-04 21:53 ` bi_recs Tom Rini
2004-10-04 20:20 ` bi_recs Wolfgang Denk
2004-10-04 14:29 ` bi_recs Tom Rini
2004-10-04 14:41 ` bi_recs Matt Porter
2004-10-04 15:00 ` bi_recs Kumar Gala
2004-10-04 15:06 ` bi_recs Jon Masters
2004-10-04 15:47 ` bi_recs Kumar Gala
2004-10-04 20:18 ` bi_recs Wolfgang Denk
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).