RFC of_boardconfig
John Crispin
blogic at openwrt.org
Sat Nov 26 00:52:40 EST 2011
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>;
};
More information about the devicetree-discuss
mailing list