Merge branch 'CR_2809_Net_Status_detection_samin.guo' into 'jh7110-devel'

CR2809: Support IP automatic release

See merge request sdk/buildroot!89
This commit is contained in:
andy.hu
2022-12-09 04:42:57 +00:00
3 changed files with 80 additions and 0 deletions
+12
View File
@@ -0,0 +1,12 @@
diff -purN ifplugd-0.28.orig/conf/ifplugd.conf ifplugd-0.28/conf/ifplugd.conf
--- ifplugd-0.28.orig/conf/ifplugd.conf 2003-12-12 01:58:43.000000000 +0800
+++ ifplugd-0.28/conf/ifplugd.conf 2022-12-06 16:37:58.939672090 +0800
@@ -30,7 +30,7 @@
# according to /proc/net/dev. Note that the list of interfaces
# appearing in /proc/net/dev may depend on which kernel modules you
# have loaded.
-INTERFACES="eth0"
+INTERFACES="eth0 eth1"
# Additional parameters for ifplugd.
# (Run "ifplugd -h" for further information.)
@@ -18,8 +18,21 @@ define IFUPDOWN_SCRIPTS_LOCALHOST
endef
IFUPDOWN_SCRIPTS_DHCP_IFACE = $(call qstrip,$(BR2_SYSTEM_DHCP))
IFUPDOWN_SCRIPTS_DHCP_HOTPLUG = $(call qstrip,$(BR2_PACKAGE_IFPLUGD))
ifneq ($(IFUPDOWN_SCRIPTS_DHCP_IFACE),)
ifneq ($(IFUPDOWN_SCRIPTS_DHCP_HOTPLUG),)
define IFUPDOWN_SCRIPTS_DHCP
( \
echo ; \
echo "allow-hotplug $(IFUPDOWN_SCRIPTS_DHCP_IFACE)"; \
echo "iface $(IFUPDOWN_SCRIPTS_DHCP_IFACE) inet dhcp"; \
echo " pre-up /etc/network/nfs_check"; \
echo " wait-delay 15"; \
echo " hostname \$$(hostname)"; \
) >> $(TARGET_DIR)/etc/network/interfaces
endef
else
define IFUPDOWN_SCRIPTS_DHCP
( \
echo ; \
@@ -30,6 +43,7 @@ define IFUPDOWN_SCRIPTS_DHCP
echo " hostname \$$(hostname)"; \
) >> $(TARGET_DIR)/etc/network/interfaces
endef
endif
define IFUPDOWN_SCRIPTS_DHCP_OPENRC
echo "ifup $(IFUPDOWN_SCRIPTS_DHCP_IFACE)" \
> $(TARGET_DIR)/etc/ifup.$(IFUPDOWN_SCRIPTS_DHCP_IFACE)
@@ -38,6 +52,41 @@ define IFUPDOWN_SCRIPTS_DHCP_OPENRC
endef
endif
IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE = $(call qstrip,$(BR2_SYSTEM_DHCP_DUAL))
IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE_HOTPLUG = $(call qstrip,$BR2_PACKAGE_IFPLUGD))
ifneq ($(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE),)
ifneq ($(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE_HOTPLUG),)
define IFUPDOWN_SCRIPTS_DHCP_DUAL
( \
echo ; \
echo "allow-hotplug $(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE)"; \
echo "iface $(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE) inet dhcp"; \
echo " pre-up /etc/network/nfs_check"; \
echo " wait-delay 15"; \
echo " hostname \$$(hostname)"; \
) >> $(TARGET_DIR)/etc/network/interfaces
endef
else
define IFUPDOWN_SCRIPTS_DHCP_DUAL
( \
echo ; \
echo "auto $(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE)"; \
echo "iface $(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE) inet dhcp"; \
echo " pre-up /etc/network/nfs_check"; \
echo " wait-delay 15"; \
echo " hostname \$$(hostname)"; \
) >> $(TARGET_DIR)/etc/network/interfaces
endef
endif
define IFUPDOWN_SCRIPTS_DHCP_DUAL_OPENRC
echo "ifup $(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE)" \
> $(TARGET_DIR)/etc/ifup.$(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE)
echo "ifdown $(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE)" \
> $(TARGET_DIR)/etc/ifdown.$(IFUPDOWN_SCRIPTS_DHCP_DUAL_IFACE)
endef
endif
define IFUPDOWN_SCRIPTS_INSTALL_TARGET_CMDS
$(INSTALL) -m 0755 -D $(IFUPDOWN_SCRIPTS_PKGDIR)/nfs_check \
$(TARGET_DIR)/etc/network/nfs_check
@@ -48,6 +97,8 @@ define IFUPDOWN_SCRIPTS_INSTALL_INIT_OPENRC
$(IFUPDOWN_SCRIPTS_PREAMBLE)
$(IFUPDOWN_SCRIPTS_DHCP)
$(IFUPDOWN_SCRIPTS_DHCP_OPENRC)
$(IFUPDOWN_SCRIPTS_DHCP_DUAL)
$(IFUPDOWN_SCRIPTS_DHCP_DUAL_OPENRC)
endef
define IFUPDOWN_SCRIPTS_INSTALL_INIT_SYSV
@@ -56,6 +107,7 @@ define IFUPDOWN_SCRIPTS_INSTALL_INIT_SYSV
$(IFUPDOWN_SCRIPTS_PREAMBLE)
$(IFUPDOWN_SCRIPTS_LOCALHOST)
$(IFUPDOWN_SCRIPTS_DHCP)
$(IFUPDOWN_SCRIPTS_DHCP_DUAL)
endef
# ifupdown-scripts can not be selected when systemd-networkd is
@@ -67,6 +119,7 @@ define IFUPDOWN_SCRIPTS_INSTALL_INIT_SYSTEMD
$(IFUPDOWN_SCRIPTS_PREAMBLE)
$(IFUPDOWN_SCRIPTS_LOCALHOST)
$(IFUPDOWN_SCRIPTS_DHCP)
$(IFUPDOWN_SCRIPTS_DHCP_DUAL)
endef
$(eval $(generic-package))
+15
View File
@@ -403,6 +403,21 @@ config BR2_SYSTEM_DHCP
overwrite /etc/network/interfaces or add a networkd
configuration file.
config BR2_SYSTEM_DHCP_DUAL
string "Dual Network interface for the 2nd to configure through DHCP"
default ""
depends on BR2_PACKAGE_BUSYBOX || BR2_PACKAGE_IFUPDOWN || \
BR2_PACKAGE_SYSTEMD_NETWORKD
help
Enter here the name of the network interface (E.G. eth1) to
automatically configure through DHCP at bootup.
If left empty, no automatic DHCP requests will take place.
For more complicated network setups use an overlay to
overwrite /etc/network/interfaces or add a networkd
configuration file.
comment "automatic network configuration via DHCP needs ifupdown or busybox or networkd or netifrc"
depends on !(BR2_PACKAGE_BUSYBOX || BR2_PACKAGE_IFUPDOWN || \
BR2_PACKAGE_SYSTEMD_NETWORKD || BR2_PACKAGE_NETIFRC)