All of lore.kernel.org
 help / color / mirror / Atom feed
From: Val Henson <val@nmt.edu>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: linuxppc-dev@lists.linuxppc.org
Subject: Re: EV-64260-BP & GT64260 bi_recs
Date: Sun, 24 Mar 2002 12:09:30 -0700	[thread overview]
Message-ID: <20020324120930.A14640@boardwalk> (raw)
In-Reply-To: <20020324122048.8670@smtp.wanadoo.fr>; from benh@kernel.crashing.org on Sun, Mar 24, 2002 at 01:20:48PM +0100


On Sun, Mar 24, 2002 at 01:20:48PM +0100, Benjamin Herrenschmidt wrote:
>
> We define a special BI_DEVICE type of bi_rec that represents
> a HW device for which the firmware provides some informations. Since
> the firmware is free to provide whatever informations it want (that
> set is not fully defined), the content of the BI_DEVICE record is itself
> a list of bi_recs.
<snip>
> The "standard" kernel only define a few BI_DEV_TYPE's (like PCI,
> 4xx OCP, 8xx OCP). Drivers define attributes they can read from the
> BI_DEVICE (4xx ethernet can read a HW eth adress for example).
> Board vendors are free to provide additional information in the
> BI_DEVICE, and add the ability to the driver (patches welcome) to
> make good use of that information ;) (Could be, for example, wiring
> of the PHY since it may not use MII, etc...).
>
> What do you think ?

I had an amazing and brilliant insight (which I'm sure everyone else
has already had). :) The kernel just ignores bi_recs it doesn't
understand.  Really, you don't need any BI_DEV_TYPE's for non-core
kernel code - just a type that the kernel is guaranteed never to use
for any other bi_rec type.

How about one BI_IGNORE type, and driver writers and firmware authors
can put whatever they feel like inside that bi_rec?  The BI_IGNORE
bi_rec can contain whatever you want - more bi_recs, object code,
random data - and it would be the driver and firmware writers'
responsibility to make them match up.  I personally think this is an
awful idea, but it would give everyone the freedom they want while
staying within the very nice bi_rec interface.  The rest of the
bi_recs, the ones that the core kernel code will interpret, can be
simple, one-dimensional bi_recs.  What do you think, Ben?

I really agree with Dan Malek on this - we shouldn't use bi_recs as a
way to reimplement methods of passing information that already exist,
for example, the __setup() functions.  It should be a way of passing
information that only a bootloader can know, such as the location of a
ramdisk, or the command line that the user typed into the bootloader.
People who don't agree with this philosophy can shove whatever they
like into the BI_IGNORE record type, and suffer the consequences. :)

-VAL

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

  reply	other threads:[~2002-03-24 19:09 UTC|newest]

Thread overview: 93+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-20  0:43 EV-64260-BP & GT64260 bi_recs Michael Sokolov
2002-03-19 23:00 ` Mark A. Greer
2002-03-20  7:55   ` Wolfgang Denk
2002-03-20 13:19 ` benh
2002-03-20 15:30   ` Michael Sokolov
2002-03-20 16:19     ` Tom Rini
2002-03-20 16:58       ` benh
2002-03-23  4:01         ` Val Henson
2002-03-23 13:07           ` Murray Jensen
2002-03-24 12:22             ` Benjamin Herrenschmidt
2002-03-24 12:20           ` Benjamin Herrenschmidt
2002-03-24 19:09             ` Val Henson [this message]
2002-03-24 16:46               ` Benjamin Herrenschmidt
2002-03-25  8:51                 ` Geert Uytterhoeven
2002-03-24 18:16                   ` Benjamin Herrenschmidt
2002-03-26  2:16                 ` Val Henson
2002-03-26 10:05                   ` Benjamin Herrenschmidt
2002-03-24 19:38               ` Geert Uytterhoeven
2002-03-24 16:55                 ` Benjamin Herrenschmidt
2002-03-24 17:18                   ` Benjamin Herrenschmidt
2002-03-25  0:44               ` Murray Jensen
2002-03-25 22:05                 ` Val Henson
2002-03-26  3:21             ` Val Henson
2002-03-26  4:14               ` Murray Jensen
2002-03-26 10:14               ` benh
2002-03-26 12:05                 ` Gabriel Paubert
2002-03-26 12:18                   ` benh
2002-03-26 23:24             ` Mark A. Greer
2002-03-26 21:40               ` benh
2002-03-27 15:13                 ` Mark A. Greer
  -- strict thread matches above, loose matches on Subject: below --
2002-03-27 20:09 Michael Sokolov
2002-03-27 18:53 Michael Sokolov
2002-03-27 19:37 ` benh
2002-03-27 18:34 Michael Sokolov
2002-03-27 18:32 Michael Sokolov
2002-03-27 18:46 ` benh
2002-03-27 18:03 Michael Sokolov
2002-03-27 16:16 ` Mark A. Greer
2002-03-27 16:24   ` Mark A. Greer
2002-03-27 18:40   ` benh
2002-03-27 18:02     ` Mark A. Greer
2002-03-27 18:06       ` Mark A. Greer
2002-03-27 17:32 Michael Sokolov
2002-03-27 15:46 ` Mark A. Greer
2002-03-27 17:48 ` benh
2002-03-27 15:59   ` Mark A. Greer
2002-03-27  2:37 Michael Sokolov
2002-03-26 21:52 ` benh
2002-03-27 14:15   ` Matt Porter
2002-03-27 15:10     ` Mark A. Greer
2002-03-27 15:15       ` Mark A. Greer
2002-03-27 17:47         ` benh
2002-03-28  9:14       ` Geert Uytterhoeven
2002-03-27  1:35 Michael Sokolov
2002-03-26 23:48 ` Mark A. Greer
2002-03-24 16:02 Michael Sokolov
2002-03-21  2:13 Michael Sokolov
2002-03-21  6:39 ` Dan Malek
2002-03-31  8:32   ` Paul Mackerras
2002-04-01 18:39     ` Dan Malek
2002-04-02  5:32       ` Paul Mackerras
2002-04-02 16:33         ` Tom Rini
2002-04-02 17:29         ` Dan Malek
2002-04-02 14:42           ` Armin
2002-04-02 20:12           ` Tom Rini
2002-04-02 21:02             ` Dan Malek
2002-04-03  0:21               ` Tom Rini
     [not found] <dan@embeddededge.com>
     [not found] ` <3C98DA15.50302@embeddededge.com>
2002-03-21  1:11   ` Murray Jensen
2002-03-21  6:50     ` Dan Malek
2002-03-21 11:05       ` Murray Jensen
2002-03-21  1:10 Michael Sokolov
2002-03-21  0:57 Michael Sokolov
2002-03-21  6:58 ` Dan Malek
2002-03-21  0:47 Michael Sokolov
     [not found] <3C98B189.78A92DFE@mvista.com>
2002-03-20 18:12 ` Wolfgang Denk
     [not found]   ` <3C98DB49.2C3A2F79@mvista.com>
2002-03-23  3:49     ` Val Henson
2002-03-20 17:11 Michael Sokolov
2002-03-20 18:06 ` Wolfgang Denk
2002-03-20 17:04 Michael Sokolov
2002-03-20 17:25 ` Tom Rini
2002-03-21 20:36 ` Troy Benjegerdes
2002-03-21 19:17   ` Mark A. Greer
2002-03-21 21:36     ` Jim Potter
     [not found] <20020320164025.31626@mailhost.mipsys.com>
2002-03-20 16:59 ` Wolfgang Denk
     [not found] <20020320155551.GD3762@opus.bloom.county>
2002-03-20 16:18 ` Wolfgang Denk
     [not found] <20020320150119.GB3762@opus.bloom.county>
2002-03-20 15:43 ` Wolfgang Denk
2002-03-20  1:02 Michael Sokolov
     [not found] <20020320000500.GV3762@opus.bloom.county>
2002-03-20  0:28 ` Wolfgang Denk
     [not found] <20020319235815.GU3762@opus.bloom.county>
2002-03-20  0:24 ` Wolfgang Denk
     [not found] <20020319224420.GO3762@opus.bloom.county>
2002-03-19 23:00 ` Wolfgang Denk
2002-03-20  0:03 ` Gabriel Paubert
     [not found] <20020319231628.GQ3762@opus.bloom.county>
2002-03-19 23:46 ` Wolfgang Denk
     [not found] <3C97A9C1.EBA150B6@mvista.com>
2002-03-19 23:36 ` Wolfgang Denk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20020324120930.A14640@boardwalk \
    --to=val@nmt.edu \
    --cc=benh@kernel.crashing.org \
    --cc=linuxppc-dev@lists.linuxppc.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.