The AT91 family of SoCs have a USB device controller, this patch should enable 
the feature
and cleanup the default config of the at91 target to play nicely with the 
gadget modules.

kmod-usb-eth-gadget is added as a default module to retain the same board 
functionality as
before this patch, though, the 'debug' network interface in the default config 
is rather
useless.

Signed-off-by: Owen Kirby <o...@exegin.com>
---
diff --git a/target/linux/at91/Makefile b/target/linux/at91/Makefile
index 8340d2a..9aed19f 100644
--- a/target/linux/at91/Makefile
+++ b/target/linux/at91/Makefile
@@ -10,13 +10,13 @@ ARCH:=arm
 BOARD:=at91
 MAINTAINER:=Claudio Mignanti <c.migna...@gmail.com>
 BOARDNAME:=Atmel AT91
-FEATURES:=squashfs targz ext2 usb
+FEATURES:=squashfs targz ext2 usb usbgadget ubifs
 CPU_TYPE:=arm926ej-s
LINUX_VERSION:=3.10.36 include $(INCLUDE_DIR)/target.mk -DEFAULT_PACKAGES += kmod-usb-ohci
+DEFAULT_PACKAGES += kmod-usb-ohci kmod-at91-udc kmod-usb-eth-gadget
$(eval $(call BuildTarget))
diff --git a/target/linux/at91/config-default b/target/linux/at91/config-default
index e1c90a1..8281458 100644
--- a/target/linux/at91/config-default
+++ b/target/linux/at91/config-default
@@ -236,13 +236,7 @@ CONFIG_UID16=y
 CONFIG_UIDGID_CONVERTED=y
 CONFIG_UNCOMPRESS_INCLUDE="mach/uncompress.h"
 # CONFIG_USB_ARCH_HAS_XHCI is not set
-CONFIG_USB_AT91=y
 CONFIG_USB_COMMON=y
-CONFIG_USB_ETH=y
-# CONFIG_USB_ETH_EEM is not set
-CONFIG_USB_ETH_RNDIS=y
-CONFIG_USB_GADGET=y
-CONFIG_USB_LIBCOMPOSITE=y
 CONFIG_USB_SUPPORT=y
 CONFIG_USE_OF=y
 CONFIG_VECTORS_BASE=0xffff0000
diff --git a/target/linux/at91/modules.mk b/target/linux/at91/modules.mk
index 4678b92..9e82efc 100644
--- a/target/linux/at91/modules.mk
+++ b/target/linux/at91/modules.mk
@@ -50,6 +50,20 @@ endef
$(eval $(call KernelPackage,at91-adc)) +define KernelPackage/at91-udc
+  SUBMENU:=$(USB_MENU)
+  TITLE:=USB Device on atmel SoC
+  DEPENDS:=@TARGET_at91 +kmod-usb-gadget
+  KCONFIG:=CONFIG_USB_AT91
+  FILES:=$(LINUX_DIR)/drivers/usb/gadget/at91_udc.ko
+  AUTOLOAD:=$(call AutoLoad,51,at91_udc)
+endef
+
+define KernelPackage/at91-udc/description
+ Kernel module for the USB Device controller for Atmel AT91
+endef
+
+$(eval $(call KernelPackage,at91-udc))
I2C_AT91_MODULES:=\
   CONFIG_I2C_AT91:drivers/i2c/busses/i2c-at91
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to