2 # Copyright (C) 2006 OpenWrt.org
3 # Copyright (C) 2010 Vertical Communications
6 grep -q "$1" /proc
/net
/dev ||
return
9 ip
-4 address add
$pi_ip/$pi_netmask broadcast
$pi_broadcast dev
$1
12 preinit_config_board
() {
13 /bin
/board_detect
/tmp
/board.json
15 [ -f "/tmp/board.json" ] ||
return
17 .
/usr
/share
/libubox
/jshn.sh
20 json_load
"$(cat /tmp/board.json)"
28 [ -n "$ifname" ] ||
return
30 # only use the first one
36 preinit_ip_config
$ifname
40 # if the preinit interface isn't specified and ifname is set in
41 # preinit.arch use that interface
42 if [ -z "$pi_ifname" ]; then
46 if [ -n "$pi_ifname" ]; then
47 preinit_ip_config
$pi_ifname
48 elif [ -d "/etc/board.d/" ]; then
53 preinit_ip_deconfig
() {
54 [ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc
/net
/dev
&& {
55 ip
-4 address flush dev
$pi_ifname
56 ip link
set dev
$pi_ifname down
61 [ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc
/net
/dev
&& {
63 [ "$pi_preinit_net_messages" = "y" ] ||
{
64 [ "$pi_failsafe_net_message" = "true" ] &&
65 [ "$pi_preinit_no_failsafe_netmsg" != "y" ]
67 } && netmsg
$pi_broadcast "$1"
76 pi_indicate_preinit
() {
77 preinit_net_echo
"Doing Lede Preinit\n"
81 boot_hook_add preinit_main preinit_ip
82 boot_hook_add preinit_main pi_indicate_preinit