|
From: <mar...@us...> - 2007-08-26 11:14:10
|
Revision: 1275
http://hackndev.svn.sourceforge.net/hackndev/?rev=1275&view=rev
Author: marex_z71
Date: 2007-08-25 21:40:15 -0700 (Sat, 25 Aug 2007)
Log Message:
-----------
PalmTX: rewrote udc part, use generic gpio driven udc driver
Modified Paths:
--------------
linux4palm/linux/trunk/arch/arm/mach-pxa/palmtx/palmtx.c
linux4palm/linux/trunk/include/asm-arm/arch-pxa/palmtx-gpio.h
Modified: linux4palm/linux/trunk/arch/arm/mach-pxa/palmtx/palmtx.c
===================================================================
--- linux4palm/linux/trunk/arch/arm/mach-pxa/palmtx/palmtx.c 2007-08-26 04:37:17 UTC (rev 1274)
+++ linux4palm/linux/trunk/arch/arm/mach-pxa/palmtx/palmtx.c 2007-08-26 04:40:15 UTC (rev 1275)
@@ -44,6 +44,7 @@
#include <asm/arch/pxa27x_keyboard.h>
#include <asm/arch/palmtx-init.h>
#include <asm/arch/palmtx-gpio.h>
+#include <asm/arch/pxa2xx_udc_gpio.h>
#include "../generic.h"
@@ -287,44 +288,34 @@
/*******
* USB *
*******/
-
-static int palmtx_udc_is_connected (void){
- int ret = !(GET_GPIO(GPIO_NR_PALMTX_USB_DETECT));
- if (ret)
- printk (KERN_INFO "palmtx_udc: device detected [USB_DETECT: %d]\n",ret);
- else
- printk (KERN_INFO "palmtx_udc: no device detected [USB_DETECT: %d]\n",ret);
-
- return ret;
-}
-
-
-static void palmtx_udc_command (int cmd){
-
- switch (cmd) {
- case PXA2XX_UDC_CMD_DISCONNECT:
- SET_GPIO(GPIO_NR_PALMTX_USB_PULLUP, 0);
- SET_GPIO(GPIO_NR_PALMTX_USB_POWER, 0);
- printk(KERN_INFO "palmtx_udc: got command PXA2XX_UDC_CMD_DISCONNECT\n");
- break;
- case PXA2XX_UDC_CMD_CONNECT:
- SET_GPIO(GPIO_NR_PALMTX_USB_POWER, 1);
- SET_GPIO(GPIO_NR_PALMTX_USB_PULLUP, 1);
- printk(KERN_INFO "palmtx_udc: got command PXA2XX_UDC_CMD_CONNECT\n");
- break;
- default:
- printk("palmtx_udc: unknown command '%d'\n", cmd);
+static int palmtx_udc_power( int power )
+{
+ if (power) {
+ SET_PALMTX_GPIO(USB_POWER, 1);
+ SET_PALMTX_GPIO(USB_PULLUP, 1);
+ } else {
+ SET_PALMTX_GPIO(USB_PULLUP, 0);
+ SET_PALMTX_GPIO(USB_POWER, 0);
}
+
+ return power;
}
+struct pxa2xx_udc_gpio_info palmtx_udc_info = {
+ .detect_gpio = {&pxagpio_device.dev, GPIO_NR_PALMTX_USB_DETECT_N},
+ .detect_gpio_negative = 1,
+ .power_ctrl = {
+ .power = &palmtx_udc_power,
+ },
+};
-static struct pxa2xx_udc_mach_info palmtx_udc_mach_info __initdata = {
- .udc_is_connected = palmtx_udc_is_connected,
- .udc_command = palmtx_udc_command,
+static struct platform_device palmtx_udc = {
+ .name = "pxa2xx-udc-gpio",
+ .dev = {
+ .platform_data = &palmtx_udc_info
+ }
};
-
-
/*************************
* AC97 audio controller *
*************************/
@@ -365,6 +356,7 @@
&palmtx_backlight,
&bcm2035_bt,
&palmtx_border,
+ &palmtx_udc,
};
/***************
@@ -443,7 +435,6 @@
set_pxa_fb_info ( &palmtx_lcd_screen );
pxa_set_btuart_info(&bcm2035_pxa_bt_funcs);
pxa_set_mci_info ( &palmtx_mci_platform_data );
- pxa_set_udc_info ( &palmtx_udc_mach_info );
pxa_set_ficp_info ( &palmtx_ficp_platform_data );
platform_add_devices( devices, ARRAY_SIZE(devices) );
Modified: linux4palm/linux/trunk/include/asm-arm/arch-pxa/palmtx-gpio.h
===================================================================
--- linux4palm/linux/trunk/include/asm-arm/arch-pxa/palmtx-gpio.h 2007-08-26 04:37:17 UTC (rev 1274)
+++ linux4palm/linux/trunk/include/asm-arm/arch-pxa/palmtx-gpio.h 2007-08-26 04:40:15 UTC (rev 1275)
@@ -63,7 +63,7 @@
#define GPIO_NR_PALMTX_ICP_TXD_MD (GPIO_NR_PALMTX_ICP_TXD | GPIO_ALT_FN_2_OUT)
/* USB */
-#define GPIO_NR_PALMTX_USB_DETECT 90
+#define GPIO_NR_PALMTX_USB_DETECT_N 13
#define GPIO_NR_PALMTX_USB_POWER 95
#define GPIO_NR_PALMTX_USB_PULLUP 93
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|