[LEDE-DEV] About /etc/board.json
Gio
gio at diveni.re
Fri Aug 4 01:36:17 PDT 2017
Hi all!
When we started working on libremesh.org there was no /etc/board.json and of
course no way to reliably know the hardware setup (expecially switch ports
layout) so we had to do a copy of the first boot configuration and with some
rough euristics the code had an approximative idea of the hardware setup and
generated a community mesh network hopefully suitable configuration based on
that idea.
Now it has been a reasonable amount of time that /etc/board.json is around to
consider it a reliable source of hardware information so we could generate
configuration based on that instead of the old tricky system, so I have a
bunch of questions before starting a plan to rewrite an important part of the
libremesh core:
- Should we consider this stable?
- Is there some specification on how to write a board.json file for new
hardware?
- From what I saw on devices I have under my hands the board.json file doesn't
come in the source code, but is generated by the old scripts with all the
hardware model big switch/case, is this to be considered final or it is just a
transition to shipping the board.json file without the big switch/case?
- About switch ports in a TP-Link tl-wdr4310 I can see that port 0 has
different properties that other ports, like +"device": "eth0"+ can we consider
this equivalent to "the switch is connected to the CPU via port 0 and it is
seen as eth0" in all cases?
- How would board.json look like in case two switch chips are present, can
each switch have a port connected to the other switch beside the one connected
to the CPU? How would board.json look like if the other switch is connected
only to the other switch and not to the CPU? How would board.json look like if
the other switch is connected to the CPU only (this last seems simple to
answhere)?
- In the TP-Link tl-wdr3500 there is a separate ethernet port eth1 that is
used as wan, in the board.json the only reference that i find to that port is
as network.wan.ifname, but there is not something like an "hardware
description" like we have for the switch section, is there any plan to inlude
those extra info like if it is gigabit, or the max MTU supported in
board.json, or we have to guess the existence of ethernet ports iterating
trought the childs of network ?
- There is no information about wifi devices, also in cases they are soldered
in the device, is there a plan to include that information in board.json too
or there is another place where one can get in wifi devices information in an
equivalent format (JSON)?
- There is already a JSON parsing/generation Lua library of choice in LEDE? (I
suppose there is at least in Luci)
Cheers!
Gio
More information about the Lede-dev
mailing list