[Armadeus-commitlog] SF.net SVN: armadeus:[976] trunk/buildroot/target/device/armadeus
Brought to you by:
sszy
|
From: <jo...@us...> - 2008-12-28 00:49:21
|
Revision: 976
http://armadeus.svn.sourceforge.net/armadeus/?rev=976&view=rev
Author: jorasse
Date: 2008-12-28 00:49:12 +0000 (Sun, 28 Dec 2008)
Log Message:
-----------
[linux] Enhanced USB host driver ISP176x to be linked with linux kernel - Changed default configuration to statically include ISP1760 driver.
Modified Paths:
--------------
trunk/buildroot/target/device/armadeus/apf9328/apf9328-linux-2.6.27.2.config
trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.27.2/linux-2.6.27.2-021-armadeus-apf9328.patch
Modified: trunk/buildroot/target/device/armadeus/apf9328/apf9328-linux-2.6.27.2.config
===================================================================
--- trunk/buildroot/target/device/armadeus/apf9328/apf9328-linux-2.6.27.2.config 2008-12-27 23:54:30 UTC (rev 975)
+++ trunk/buildroot/target/device/armadeus/apf9328/apf9328-linux-2.6.27.2.config 2008-12-28 00:49:12 UTC (rev 976)
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.27.2
-# Sat Dec 20 17:21:59 2008
+# Sun Dec 28 01:31:05 2008
#
CONFIG_ARM=y
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -927,21 +927,15 @@
CONFIG_HID_SUPPORT=y
CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
-# CONFIG_HIDRAW is not set
+CONFIG_HIDRAW=y
#
# USB Input Devices
#
-CONFIG_USB_HID=m
+CONFIG_USB_HID=y
# CONFIG_USB_HIDINPUT_POWERBOOK is not set
# CONFIG_HID_FF is not set
-# CONFIG_USB_HIDDEV is not set
-
-#
-# USB HID Boot Protocol drivers
-#
-# CONFIG_USB_KBD is not set
-# CONFIG_USB_MOUSE is not set
+CONFIG_USB_HIDDEV=y
CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y
# CONFIG_USB_ARCH_HAS_OHCI is not set
@@ -1010,7 +1004,50 @@
#
# USB port drivers
#
-# CONFIG_USB_SERIAL is not set
+CONFIG_USB_SERIAL=y
+CONFIG_USB_SERIAL_CONSOLE=y
+# CONFIG_USB_EZUSB is not set
+CONFIG_USB_SERIAL_GENERIC=y
+# CONFIG_USB_SERIAL_AIRCABLE is not set
+# CONFIG_USB_SERIAL_ARK3116 is not set
+# CONFIG_USB_SERIAL_BELKIN is not set
+# CONFIG_USB_SERIAL_CH341 is not set
+# CONFIG_USB_SERIAL_WHITEHEAT is not set
+# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
+# CONFIG_USB_SERIAL_CP2101 is not set
+# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
+# CONFIG_USB_SERIAL_EMPEG is not set
+# CONFIG_USB_SERIAL_FTDI_SIO is not set
+# CONFIG_USB_SERIAL_FUNSOFT is not set
+# CONFIG_USB_SERIAL_VISOR is not set
+# CONFIG_USB_SERIAL_IPAQ is not set
+# CONFIG_USB_SERIAL_IR is not set
+# CONFIG_USB_SERIAL_EDGEPORT is not set
+# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
+# CONFIG_USB_SERIAL_GARMIN is not set
+# CONFIG_USB_SERIAL_IPW is not set
+# CONFIG_USB_SERIAL_IUU is not set
+# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
+# CONFIG_USB_SERIAL_KEYSPAN is not set
+# CONFIG_USB_SERIAL_KLSI is not set
+# CONFIG_USB_SERIAL_KOBIL_SCT is not set
+# CONFIG_USB_SERIAL_MCT_U232 is not set
+# CONFIG_USB_SERIAL_MOS7720 is not set
+# CONFIG_USB_SERIAL_MOS7840 is not set
+# CONFIG_USB_SERIAL_MOTOROLA is not set
+# CONFIG_USB_SERIAL_NAVMAN is not set
+# CONFIG_USB_SERIAL_PL2303 is not set
+# CONFIG_USB_SERIAL_OTI6858 is not set
+# CONFIG_USB_SERIAL_SPCP8X5 is not set
+# CONFIG_USB_SERIAL_HP4X is not set
+# CONFIG_USB_SERIAL_SAFE is not set
+# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
+# CONFIG_USB_SERIAL_TI is not set
+# CONFIG_USB_SERIAL_CYBERJACK is not set
+# CONFIG_USB_SERIAL_XIRCOM is not set
+# CONFIG_USB_SERIAL_OPTION is not set
+# CONFIG_USB_SERIAL_OMNINET is not set
+# CONFIG_USB_SERIAL_DEBUG is not set
#
# USB Miscellaneous drivers
@@ -1101,7 +1138,7 @@
#
# Communication bus related:
#
-CONFIG_ARMADEUS_ISP1761=m
+CONFIG_ARMADEUS_ISP1761=y
CONFIG_MMC=y
# CONFIG_MMC_DEBUG is not set
# CONFIG_MMC_UNSAFE_RESUME is not set
Modified: trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.27.2/linux-2.6.27.2-021-armadeus-apf9328.patch
===================================================================
--- trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.27.2/linux-2.6.27.2-021-armadeus-apf9328.patch 2008-12-27 23:54:30 UTC (rev 975)
+++ trunk/buildroot/target/device/armadeus/linux/kernel-patches/2.6.27.2/linux-2.6.27.2-021-armadeus-apf9328.patch 2008-12-28 00:49:12 UTC (rev 976)
@@ -3,7 +3,7 @@
(Take a look at armadeus/target/linux/ directory to know how to generate it)
--- linux-2.6.27.2.original/arch/arm/mach-imx/apf9328.c
+++ linux-2.6.27.2.mod/arch/arm/mach-imx/apf9328.c
-@@ -0,0 +1,607 @@
+@@ -0,0 +1,677 @@
+/*
+ * linux/arch/arm/mach-imx/apf9328.c
+ *
@@ -48,6 +48,7 @@
+#include <mach/imx-regs.h> // imx_gpio_mode()
+#include <mach/imx-alsa.h>
+#include <linux/spi/max1027.h>
++#include <linux/usb/isp116x.h>
+
+#ifdef CONFIG_DM9000
+#include <linux/dm9000.h>
@@ -70,7 +71,67 @@
+#ifdef CONFIG_IMX_BACKLIGHT_MODULE
+#define CONFIG_IMX_BACKLIGHT 1
+#endif
++#ifdef CONFIG_ARMADEUS_ISP1761_MODULE
++#define CONFIG_ARMADEUS_ISP1761 1
++#endif
+
++// --- ISP1761
++#ifdef CONFIG_ARMADEUS_ISP1761
++
++static void apf_isp116x_delay(struct device *dev, int delay)
++{
++ /* On this platform, we work with 200MHz clock, giving
++ 5 ns per instruction. The cycle below involves 2
++ instructions and we lose 2 more instruction times due
++ to pipeline flush at jump. I.e., we consume 20 ns
++ per cycle.
++ */
++ int cyc = delay / 20;
++
++ __asm__ volatile ("0:\n"
++ " subs %0, %1, #1\n"
++ " bge 0b\n"
++ :"=r" (cyc)
++ :"0"(cyc));
++}
++
++static struct isp116x_platform_data isp116x_pdata = {
++ .sel15Kres = 1,
++ .oc_enable = 1,
++ .int_act_high = 0,
++ .int_edge_triggered = 1,
++ .remote_wakeup_enable = 1,
++ .delay = apf_isp116x_delay,
++};
++
++static struct resource devfull_isp1761_resources[] = {
++ [0] = {
++ .name = "isp1761-regs",
++ .start = ISP1761_BASE + 0x00000000,
++ .end = ISP1761_BASE + 0x000fffff,
++ .flags = IORESOURCE_MEM,
++ },
++ [1] = {
++ .start = ISP1761_IRQ,
++ .end = ISP1761_IRQ,
++ .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWLEVEL,
++ },
++};
++
++static struct platform_device devfull_isp1761_device = {
++ .name = "isp1761",
++ .id = 0,
++ .num_resources = ARRAY_SIZE(devfull_isp1761_resources),
++ .resource = devfull_isp1761_resources,
++ .dev = { .platform_data = &isp116x_pdata, },
++};
++
++/*static struct platform_device *devfull_isp1761_devices[] = {
++ &devfull_isp1761_device,
++};*/
++
++#endif
++
+// --- ETHERNET RESSOURCE ---
+#ifdef CONFIG_DM9000
+static struct resource dm9000_resources[] = {
@@ -523,6 +584,9 @@
+#if defined(CONFIG_SND_IMX_TSC2102) || defined(CONFIG_SND_IMX_TSC2102_MODULE)
+ &tsc2102_alsa_device,
+#endif // CONFIG_SND_IMX_TSC2102 || CONFIG_SND_IMX_TSC2102_MODULE
++#ifdef CONFIG_ARMADEUS_ISP1761
++ &devfull_isp1761_device,
++#endif // CONFIG_ARMADEUS_ISP1761
+};
+
+static void __init apf9328_init(void)
@@ -547,6 +611,9 @@
+#ifdef CONFIG_CAN_MCP251X
+ mcp251X_init_gpio();
+#endif
++#ifdef CONFIG_ARMADEUS_ISP1761
++ imx_gpio_mode( ISP1761_GPIO_IRQ | GPIO_IN | GPIO_GIUS ); /* Set up IRQ line. */
++#endif // CONFIG_ARMADEUS_ISP1761
+
+ platform_add_devices(devices, ARRAY_SIZE(devices));
+
@@ -598,6 +665,9 @@
+#ifdef CONFIG_ARMADEUS_FPGA_DRIVERS
+ set_irq_type( APF9328_FPGA_IRQ, IRQF_TRIGGER_RISING );
+#endif
++#ifdef CONFIG_ARMADEUS_ISP1761
++ set_irq_type( ISP1761_IRQ, IRQF_TRIGGER_FALLING );
++#endif // CONFIG_ARMADEUS_ISP1761
+}
+
+
@@ -822,7 +892,7 @@
(Take a look at armadeus/target/linux/ directory to know how to generate it)
--- linux-2.6.27.2.original/arch/arm/mach-imx/include/mach/apf9328.h
+++ linux-2.6.27.2.mod/arch/arm/mach-imx/include/mach/apf9328.h
-@@ -0,0 +1,58 @@
+@@ -0,0 +1,63 @@
+/*
+ * linux/include/asm-arm/arch-imx/apf9328.h
+ *
@@ -880,4 +950,9 @@
+
+#define CLK32 32768
+
++// USB HOST ISP1760: option available with APF_devfull
++#define ISP1761_BASE IMX_CS3_PHYS
++#define ISP1761_GPIO_IRQ ( GPIO_PORTC | 10 )
++#define ISP1761_IRQ ( IRQ_GPIOC(10) )
++
+#endif // __ASM_ARCH_APF9328_H
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|