aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStijn Tintel <stijn@linux-ipv6.be>2022-12-07 19:04:12 +0200
committerStijn Tintel <stijn@linux-ipv6.be>2023-02-17 16:20:03 +0200
commitbaf76634f38d7415c3d8a5034f40b75e3612b967 (patch)
tree0dec2dffa14ab3f7642a9e46e7b2bbaebf960e28
parent8c3bcc1989ac5fb596da86bfd82af6f8aafca1ab (diff)
downloadupstream-baf76634f38d7415c3d8a5034f40b75e3612b967.tar.gz
upstream-baf76634f38d7415c3d8a5034f40b75e3612b967.tar.bz2
upstream-baf76634f38d7415c3d8a5034f40b75e3612b967.zip
build: add option to use preinit IP as LAN IP
We currently have build options to customize the IP address used in the preinit phase of the boot process, but not to set the default LAN IP. Introduce a boolean build option that, when enabled, results in the IP address configured for the preinit phase, to be also used as the default LAN IP address. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
-rw-r--r--package/base-files/Makefile13
-rw-r--r--package/base-files/image-config.in7
2 files changed, 20 insertions, 0 deletions
diff --git a/package/base-files/Makefile b/package/base-files/Makefile
index 914f0598ff..8732f82fb9 100644
--- a/package/base-files/Makefile
+++ b/package/base-files/Makefile
@@ -89,6 +89,19 @@ define ImageConfigOptions
echo 'pi_preinit_net_messages="$(CONFIG_TARGET_PREINIT_SHOW_NETMSG)"' >>$(1)/lib/preinit/00_preinit.conf
echo 'pi_preinit_no_failsafe_netmsg="$(CONFIG_TARGET_PREINIT_SUPPRESS_FAILSAFE_NETMSG)"' >>$(1)/lib/preinit/00_preinit.conf
echo 'pi_preinit_no_failsafe="$(CONFIG_TARGET_PREINIT_DISABLE_FAILSAFE)"' >>$(1)/lib/preinit/00_preinit.conf
+ifeq ($(CONFIG_TARGET_DEFAULT_LAN_IP_FROM_PREINIT),y)
+ mkdir -p $(1)/etc/board.d
+ echo '. /lib/functions/uci-defaults.sh' >$(1)/etc/board.d/99-lan-ip
+ echo 'logger -t 99-lan-ip "setting custom default LAN IP"' >>$(1)/etc/board.d/99-lan-ip
+ echo 'board_config_update' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_select network' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_select lan' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_add_string ipaddr $(if $(CONFIG_TARGET_PREINIT_IP),$(CONFIG_TARGET_PREINIT_IP),"192.168.1.1")' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_add_string netmask $(if $(CONFIG_TARGET_PREINIT_NETMASK),$(CONFIG_TARGET_PREINIT_NETMASK),"255.255.255.0")' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_select ..' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_select ..' >>$(1)/etc/board.d/99-lan-ip
+ echo 'board_config_flush' >>$(1)/etc/board.d/99-lan-ip
+endif
endef
define Build/Prepare
diff --git a/package/base-files/image-config.in b/package/base-files/image-config.in
index ac406bc456..2de2130b84 100644
--- a/package/base-files/image-config.in
+++ b/package/base-files/image-config.in
@@ -5,6 +5,13 @@
# See /LICENSE for more information.
#
+config TARGET_DEFAULT_LAN_IP_FROM_PREINIT
+ bool "Use preinit IP configuration as default LAN IP" if IMAGEOPT
+ default n
+ help
+ Enabling this will set the default LAN IP address and netmask
+ to the preinit values set in the image config.
+
menuconfig PREINITOPT
bool "Preinit configuration options" if IMAGEOPT
default n