For net boot setups it is useful to submit boot params like server or
bootfile over dhcp. To distinguish diffrent type of OS running on the same hardware,
a custom vendor id can be sent in dhcp discover/request messages.
E.g. the ISC dhcp server can be configured with
| option client-uuid code 97 = { unsigned integer 8, string };
| class "at91sam9x5ek" {
| match if substring (option vendor-class-identifier,0,20) = "barebox-at91sam9x5ek";
|
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage";
| if substring (option dhcp-client-identifier,0,7) = "ser2net" {
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage-ser2net";
| }
| if substring (option client-uuid,0,7) = "test" {
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage-ser2net";
| }
| if substring (option user-class,0,4) = "toto" {
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage-toto";
| }
| option tftp-server-name "192.168.200.98";
| option option-150 192.168.200.98;
| next-server 192.168.200.98;
| option root-path "192.168.200.98:/opt/work/buildroot/build/sam9x5/target";
| }
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
For net boot setups it is useful to submit boot params like server or
bootfile over dhcp. To distinguish diffrent type of OS running on the same hardware,
a custom client uuid can be sent in dhcp discover/request messages.
E.g. the ISC dhcp server can be configured with
| option client-uuid code 97 = { unsigned integer 8, string };
| class "at91sam9x5ek" {
| match if substring (option vendor-class-identifier,0,20) = "barebox-at91sam9x5ek";
|
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage";
| if substring (option dhcp-client-identifier,0,7) = "ser2net" {
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage-ser2net";
| }
| if substring (option client-uuid,0,7) = "test" {
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage-ser2net";
| }
| option tftp-server-name "192.168.200.98";
| option option-150 192.168.200.98;
| next-server 192.168.200.98;
| option root-path "192.168.200.98:/opt/work/buildroot/build/sam9x5/target";
| }
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
For net boot setups it is useful to submit boot params like server or
bootfile over dhcp. To distinguish diffrent type of OS running on the same hardware,
a custom client id can be sent in dhcp discover/request messages.
E.g. the ISC dhcp server can be configured with
| class "at91sam9x5ek" {
| match if substring (option vendor-class-identifier,0,20) = "barebox-at91sam9x5ek";
|
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage";
| if substring (option dhcp-client-identifier,0,7) = "ser2net" {
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage-ser2net";
| }
| option tftp-server-name "192.168.200.98";
| option option-150 192.168.200.98;
| next-server 192.168.200.98;
| option root-path "192.168.200.98:/opt/work/buildroot/build/sam9x5/target";
| }
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
if the DNS is enable resolve it. The server ip will be set if no server ip it
is set in the bootp.
Export it via env dhcp_tftp_server_name.
E.g. the ISC dhcp server can be configured with
| class "at91sam9x5ek" {
| match if substring (option vendor-class-identifier,0,20) = "barebox-at91sam9x
|
| filename "/tftpboot/atmel/at91sam9x5/sam9x5ek/zImage";
| option tftp-server-name "192.168.200.98";
| option root-path "192.168.200.98:/opt/work/buildroot/build/sam9x5/target";
| }
| }
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Instead of using a static switch case the handle the received option
use an array of supported option.
This will allow to unset the env var without duplicating the code.
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
For net boot setups it is useful to submit boot params like server or
bootfile over dhcp. To distinguish barebox from e.g. pxe machines,
a custom vendor id can be sent in dhcp discover/request messages.
E.g. the ISC dhcp server can be configured with
| if substring(option vendor-class-identifier,0,8) = "barebox:" {
| next-server 192.168.3.24;
| server-name "192.168.3.24";
| option tftp-server-name "192.168.3.24";
| option root-path = concat("/srv/sysroots/by-mac/",
| binary-to-ascii (16, 8, "-", substring (hardware, 1, 6)));
| }
to sent boot params which are valid for barebox hosts only.
Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Jean-Christophe PLAGNIOL-VILLARD:
- update the use dhcp command option
- support to set the vendor via env dhcp_vendor_id
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This is not yet used, but with this the different network
commands can get rid of their global data.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
No need to check for maximum argument counts. The commands are
safe to be called with more arguments, so lets safe some bytes.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>