summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/board/generic_x86/buildspec-generic_x86.mk4
-rw-r--r--target/board/generic_x86/init.rc11
-rw-r--r--target/product/generic_x86.mk7
3 files changed, 22 insertions, 0 deletions
diff --git a/target/board/generic_x86/buildspec-generic_x86.mk b/target/board/generic_x86/buildspec-generic_x86.mk
index 5c4e6a5..fbc3947 100644
--- a/target/board/generic_x86/buildspec-generic_x86.mk
+++ b/target/board/generic_x86/buildspec-generic_x86.mk
@@ -1,3 +1,7 @@
BUILD_ENV_SEQUENCE_NUMBER := 9
DISABLE_DEXPREOPT := true
TARGET_ARCH := x86
+
+# The eth0 device should be started with dhcp on boot.
+# Useful for emulators that don't provide a wifi connection.
+NET_ETH0_STARTONBOOT := true
diff --git a/target/board/generic_x86/init.rc b/target/board/generic_x86/init.rc
index 2a6f665..235083d 100644
--- a/target/board/generic_x86/init.rc
+++ b/target/board/generic_x86/init.rc
@@ -191,6 +191,7 @@ on boot
class_start default
+
## Daemon processes to be run by init.
##
service console /system/bin/sh
@@ -241,3 +242,13 @@ service brick /system/bin/wipe nuke
service installd /system/bin/installd
socket installd stream 600 system system
+
+#
+# Set by PRODUCT_PROPERTY_OVERRIDES in <product>.mk
+on property:net.eth0.startonboot=1
+ setprop ro.com.android.dataroaming true
+ start start_eth0
+
+service start_eth0 /system/bin/netcfg eth0 dhcp
+ oneshot
+ disabled
diff --git a/target/product/generic_x86.mk b/target/product/generic_x86.mk
index 00f2822..9713900 100644
--- a/target/product/generic_x86.mk
+++ b/target/product/generic_x86.mk
@@ -25,3 +25,10 @@ PRODUCT_BRAND := generic_x86
PRODUCT_DEVICE := generic_x86
PRODUCT_NAME := generic_x86
PRODUCT_POLICY := android.policy_phone
+
+# If running on an emulator or some other device that has a LAN connection
+# that isn't a wifi connection. This will instruct init.rc to enable the
+# network connection so that you can use it with ADB
+ifdef NET_ETH0_STARTONBOOT
+ PRODUCT_PROPERTY_OVERRIDES += net.eth0.startonboot=1
+endif