Merge "Fix supplicant start"
diff --git a/BoardConfig.mk b/BoardConfig.mk
index 38c1de5..b6f829f 100644
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -87,3 +87,7 @@
 # Avoid the generation of ldrcc instructions
 NEED_WORKAROUND_CORTEX_A9_745320 := true
 BOARD_KERNEL_CMDLINE := androidboot.carrier=wifi-only product_type=w
+
+# Use the open-source board-info file if none was set by the vendor
+# config.
+TARGET_BOARD_INFO_FILE ?= device/moto/wingray/board-info.txt
diff --git a/egl.cfg b/egl.cfg
index a609179..c27a6c8 100644
--- a/egl.cfg
+++ b/egl.cfg
@@ -1,2 +1 @@
-0 0 android
-0 1 tegra
+0 0 tegra
diff --git a/init.stingray.rc b/init.stingray.rc
index 99c7ef0..fd34238 100644
--- a/init.stingray.rc
+++ b/init.stingray.rc
@@ -321,14 +321,6 @@
     start gadget-qbp-modem
     start wrigley-diag
     start logcatd-blan
-    # MTU for USB tethering
-    # TODO: Need a dynamic way to configure appropriate MTU
-    write /sys/class/net/usb0/mtu 1428
-
-on property:ro.bootmode=unknown
-    # MTU for USB tethering
-    # TODO: Need a dynamic way to configure appropriate MTU
-    write /sys/class/net/usb0/mtu 1428
 
 service wlan_prod /system/bin/insmod /system/lib/modules/bcm4329.ko "firmware_path=/vendor/firmware/fw_bcm4329.bin nvram_path=/system/etc/wifi/bcm4329.cal"
     group wifi mot_tcmd system
diff --git a/init.stingray.usb.rc b/init.stingray.usb.rc
index a43c374..0559568 100644
--- a/init.stingray.usb.rc
+++ b/init.stingray.usb.rc
@@ -30,6 +30,7 @@
     write /sys/class/android_usb/android0/functions ${sys.usb.config}
     write /sys/class/android_usb/android0/bDeviceClass 224
     write /sys/class/android_usb/android0/enable 1
+    write /sys/class/net/rndis0/mtu 1428
     setprop sys.usb.state ${sys.usb.config}
 
 on property:sys.usb.config=rndis,adb
@@ -40,6 +41,7 @@
     write /sys/class/android_usb/android0/bDeviceClass 224
     write /sys/class/android_usb/android0/enable 1
     start adbd
+    write /sys/class/net/rndis0/mtu 1428
     setprop sys.usb.state ${sys.usb.config}
 
 on property:sys.usb.config=ptp
@@ -106,6 +108,7 @@
     write /sys/class/android_usb/android0/functions ${sys.usb.config}
     write /sys/class/android_usb/f_acm/instances 3
     write /sys/class/android_usb/android0/enable 1
+    write /sys/class/net/rndis0/mtu 1428
     setprop sys.usb.state ${sys.usb.config}
 
 on property:sys.usb.config=rndis,acm,usbnet,adb
@@ -116,5 +119,6 @@
     write /sys/class/android_usb/f_acm/instances 3
     write /sys/class/android_usb/android0/enable 1
     start adbd
+    write /sys/class/net/rndis0/mtu 1428
     setprop sys.usb.state ${sys.usb.config}
 
diff --git a/kernel b/kernel
index 916d328..6502994 100644
--- a/kernel
+++ b/kernel
Binary files differ
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml
index fa5cf50..a42b3a2 100644
--- a/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/overlay/frameworks/base/core/res/res/values/config.xml
@@ -43,6 +43,7 @@
         <item>"mobile_dun,4,0,5,60000,false"</item>
         <item>"mobile_hipri,5,0,3,60000,false"</item>
         <item>"bluetooth,7,7,0,-1,true"</item>
+        <item>"ethernet,9,9,9,-1,true"</item>
         <item>"mobile_fota,10,0,2,60000,true"</item>
         <item>"mobile_ims,11,0,2,-1,true"</item>
         <item>"mobile_cbs,12,0,2,60000,false"</item>
@@ -225,4 +226,20 @@
          causing scroll startup to jump. -->
     <dimen name="config_viewConfigurationTouchSlop">12dp</dimen>
 
+    <!-- Array of OEM specific USB mode override config.
+         OEM can override a certain USB mode depending on ro.bootmode.
+         Specify an array of below items to set override rule.
+         [bootmode]:[original USB mode]:[USB mode used]-->
+    <string-array translatable="false" name="config_oemUsbModeOverride">
+        <item>"bp-tools:mtp:acm,usbnet"</item>
+        <item>"bp-tools:mtp,adb:acm,usbnet,adb"</item>
+        <item>"bp-tools:ptp:acm,usbnet"</item>
+        <item>"bp-tools:ptp,adb:acm,usbnet,adb"</item>
+        <item>"bp-tools:rndis:rndis,acm,usbnet"</item>
+        <item>"bp-tools:rndis,adb:rndis,acm,usbnet,adb"</item>
+        <item>"factorycable:mtp:usbnet"</item>
+        <item>"factorycable:mtp,adb:usbnet,adb"</item>
+        <item>"factorycable:ptp:usbnet"</item>
+        <item>"factorycable:ptp,adb:usbnet,adb"</item>
+    </string-array>
 </resources>
diff --git a/self-extractors/generate-packages.sh b/self-extractors/generate-packages.sh
index d1f4b56..17f9109 100755
--- a/self-extractors/generate-packages.sh
+++ b/self-extractors/generate-packages.sh
@@ -21,8 +21,10 @@
 # 238432 = IML74E
 # 238649 = IML74G
 # 239410 = IML74K
-ZIP=tervigon-ota-239410.zip
-BUILD=iml74k
+# 257829 = IMM30B
+# 262866 = IMM30D
+ZIP=tervigon-ota-262866.zip
+BUILD=imm30d
 ROOTDEVICE=stingray
 DEVICE=wingray
 MANUFACTURER=moto