devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* RFC of_boardconfig
@ 2011-11-25 13:52 John Crispin
       [not found] ` <4ECF9DA8.8000504-p3rKhJxN3npAfugRpC6u6w@public.gmane.org>
  0 siblings, 1 reply; 3+ messages in thread
From: John Crispin @ 2011-11-25 13:52 UTC (permalink / raw)
  To: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ

Hi All,

before starting to implement the following proposed wrappers, i wanted
to get some more views on the feasibility of these wrappers.

On most routers that OpenWRT supports, we will find a sector within a
MTD device that holds the board specific info like MAC, wifi calibration
data ...

These wrappers try to provide a generic representation of these board
configuration sectors.

Thank you,
John



Documentation/devicetree/bindings/boardconfig.txt -->

The boardconfig master node requires the following properties:
- compatible    - should be set to "boardconfig"
- partition     - the partition that the data is stored in
                        "<&partition offset size>"

boardconfig slave nodes require the following properties:
- label         - the name that the config element gets exported by
- data          - information describing the actual data
                        "<offset size validator>"

both node types allow to set the following optional properties
- magic         - check for magic sequence at correct offset
                        <offset byte1 byte2 ... byteN>
- no-export     - if this property is set the data will *not* be
		  exported via sysfs

It is possible to define N of these sections within the device tree.

Boardconfig example for a device with 2 macs and a wmac eeprom:
        eep: boardconfig {
                compatible = "boarconfig";
                partition = <&boardconfpart 0x0 0x100>;
                magic = <0x0 0x11 0x22>;
                lanmac {
                        label = "LAN";
                        data = <0x100 0x6>;
                };

                wanmac {
                        label = "WAN";
                        data = <0x106 0x6>;
                };

                ath9keeprom {
                        label = "eeprom";
                        partition = <0x200 0x200>;
                        magic = <0x0 0x55 0xaa 0xaa 0x55>;
                        no-export;
                };
        };

you can are then able to reference these properties from other nodes:
        ethernet {
                compatible = "ethernet";
                phy-mode = "mii";
                //mac-address = [ 00 11 22 33 44 55 ];
                mac-boardconf = <&eep lanmac>;
        };

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-11-29 16:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-25 13:52 RFC of_boardconfig John Crispin
     [not found] ` <4ECF9DA8.8000504-p3rKhJxN3npAfugRpC6u6w@public.gmane.org>
2011-11-29 14:42   ` Rob Herring
     [not found]     ` <4ED4EF4D.4080806-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2011-11-29 16:22       ` John Crispin

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).