[ARM] tegra: stingray: enable usblan based on kernel command line
authorSergey Kudakov <sergey.kudakov@motorola.com>
Fri, 3 Sep 2010 16:28:21 +0000 (11:28 -0500)
committerColin Cross <ccross@android.com>
Wed, 6 Oct 2010 23:51:24 +0000 (16:51 -0700)
Change-Id: I819f2fc67fb76f618b6e3c25703d3a57c9f25043
Signed-off-by: Sergey Kudakov <sergey.kudakov@motorola.com>
arch/arm/mach-tegra/board-stingray.c

index a7343b62f167f52721a0618baf1e95f2dcf543c4..1a6a2c42a2b5dddccb0b49efc84727e7f6da635d 100644 (file)
@@ -720,6 +720,16 @@ static int __init parse_tag_powerup_reason(const struct tag *tag)
 }
 __tagtable(ATAG_POWERUP_REASON, parse_tag_powerup_reason);
 
+#define BOOT_MODE_MAX_LEN 30
+static char boot_mode[BOOT_MODE_MAX_LEN + 1];
+int __init board_boot_mode_init(char *s)
+{
+       strncpy(boot_mode, s, BOOT_MODE_MAX_LEN);
+       boot_mode[BOOT_MODE_MAX_LEN] = '\0';
+       printk(KERN_INFO "boot_mode=%s\n", boot_mode);
+}
+__setup("androidboot.mode=", board_boot_mode_init);
+
 #define SERIAL_NUMBER_LENGTH 16
 static char usb_serial_num[SERIAL_NUMBER_LENGTH + 1];
 static int __init mot_usb_serial_num_setup(char *options)
@@ -759,7 +769,7 @@ static void stingray_usb_init(void)
        platform_device_register(&rndis_device);
 #endif
 
-       if (powerup_reason & PU_REASON_FACTORY_CABLE)
+       if (!strncmp(boot_mode, "factorycable", BOOT_MODE_MAX_LEN))
        {
                platform_data = &andusb_plat_factory;
                platform_device_register(&usbnet_device);