[ARM] msm: mahimahi: Add platform data for USB accessory function
Signed-off-by: Mike Lockwood <lockwood@android.com>
diff --git a/arch/arm/mach-msm/board-mahimahi.c b/arch/arm/mach-msm/board-mahimahi.c
index 78745c7..23285d5 100644
--- a/arch/arm/mach-msm/board-mahimahi.c
+++ b/arch/arm/mach-msm/board-mahimahi.c
@@ -25,6 +25,7 @@
#include <linux/kernel.h>
#include <linux/platform_device.h>
#include <linux/usb/android_composite.h>
+#include <linux/usb/f_accessory.h>
#include <linux/android_pmem.h>
#include <linux/synaptics_i2c_rmi.h>
@@ -142,6 +143,11 @@
"adb",
};
+#ifdef CONFIG_USB_ANDROID_ACCESSORY
+static char *usb_functions_accessory[] = { "accessory" };
+static char *usb_functions_accessory_adb[] = { "accessory", "adb" };
+#endif
+
#ifdef CONFIG_USB_ANDROID_DIAG
static char *usb_functions_adb_diag[] = {
"usb_mass_storage",
@@ -154,6 +160,9 @@
#ifdef CONFIG_USB_ANDROID_RNDIS
"rndis",
#endif
+#ifdef CONFIG_USB_ANDROID_ACCESSORY
+ "accessory",
+#endif
"usb_mass_storage",
"adb",
#ifdef CONFIG_USB_ANDROID_ACM
@@ -185,6 +194,20 @@
.num_functions = ARRAY_SIZE(usb_functions_rndis_adb),
.functions = usb_functions_rndis_adb,
},
+#ifdef CONFIG_USB_ANDROID_ACCESSORY
+ {
+ .vendor_id = USB_ACCESSORY_VENDOR_ID,
+ .product_id = USB_ACCESSORY_PRODUCT_ID,
+ .num_functions = ARRAY_SIZE(usb_functions_accessory),
+ .functions = usb_functions_accessory,
+ },
+ {
+ .vendor_id = USB_ACCESSORY_VENDOR_ID,
+ .product_id = USB_ACCESSORY_ADB_PRODUCT_ID,
+ .num_functions = ARRAY_SIZE(usb_functions_accessory_adb),
+ .functions = usb_functions_accessory_adb,
+ },
+#endif
#ifdef CONFIG_USB_ANDROID_DIAG
{
.product_id = 0x4e17,