|
From: <mar...@us...> - 2007-05-22 19:06:26
|
Revision: 989
http://svn.sourceforge.net/hackndev/?rev=989&view=rev
Author: marex_z71
Date: 2007-05-22 12:06:24 -0700 (Tue, 22 May 2007)
Log Message:
-----------
PalmT5: added bluetooth stuff
Modified Paths:
--------------
linux4palm/linux/trunk/arch/arm/configs/palmt5_defconfig
linux4palm/linux/trunk/arch/arm/mach-pxa/palmt5/palmt5.c
linux4palm/linux/trunk/include/asm-arm/arch-pxa/palmt5-gpio.h
Modified: linux4palm/linux/trunk/arch/arm/configs/palmt5_defconfig
===================================================================
--- linux4palm/linux/trunk/arch/arm/configs/palmt5_defconfig 2007-05-22 11:23:20 UTC (rev 988)
+++ linux4palm/linux/trunk/arch/arm/configs/palmt5_defconfig 2007-05-22 19:06:24 UTC (rev 989)
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.20-hnd0
-# Wed Apr 18 11:05:47 2007
+# Tue May 22 19:25:18 2007
#
CONFIG_ARM=y
# CONFIG_GENERIC_TIME is not set
@@ -413,15 +413,22 @@
#
CONFIG_PXA_FICP=y
CONFIG_BT=m
-# CONFIG_BT_L2CAP is not set
-# CONFIG_BT_SCO is not set
+CONFIG_BT_L2CAP=m
+CONFIG_BT_SCO=m
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=m
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_HIDP=m
#
# Bluetooth device drivers
#
CONFIG_BT_HCIUART=m
-# CONFIG_BT_HCIUART_H4 is not set
+CONFIG_BT_HCIUART_H4=y
# CONFIG_BT_HCIUART_BCSP is not set
+CONFIG_BT_BCM2035UART=m
# CONFIG_BT_HCIVHCI is not set
CONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not set
@@ -620,6 +627,7 @@
# CONFIG_TOUCHSCREEN_ADC is not set
# CONFIG_TOUCHSCREEN_ADC_DEBOUNCE is not set
# CONFIG_TOUCHSCREEN_UCB1400 is not set
+# CONFIG_TOUCHSCREEN_PALMTC is not set
CONFIG_TOUCHSCREEN_WM97XX=m
# CONFIG_TOUCHSCREEN_WM9705 is not set
CONFIG_TOUCHSCREEN_WM9712=y
Modified: linux4palm/linux/trunk/arch/arm/mach-pxa/palmt5/palmt5.c
===================================================================
--- linux4palm/linux/trunk/arch/arm/mach-pxa/palmt5/palmt5.c 2007-05-22 11:23:20 UTC (rev 988)
+++ linux4palm/linux/trunk/arch/arm/mach-pxa/palmt5/palmt5.c 2007-05-22 19:06:24 UTC (rev 989)
@@ -36,6 +36,7 @@
#include <asm/arch/irda.h>
#include <asm/arch/pxa27x_keyboard.h>
#include <asm/arch/pxapwm-bl.h>
+#include <asm/arch/serial.h>
#include "../generic.h"
#include <../drivers/pcmcia/soc_common.h>
@@ -256,15 +257,61 @@
.udc_command = palmt5_udc_command,
};
+/* Bluetooth */
+void bcm2035_bt_reset(int on)
+{
+ printk(KERN_NOTICE "Switch BT reset %d\n", on);
+ if (on)
+ SET_PALMT5_GPIO( BT_RESET, 1 );
+ else
+ SET_PALMT5_GPIO( BT_RESET, 0 );
+}
+EXPORT_SYMBOL(bcm2035_bt_reset);
+void bcm2035_bt_power(int on)
+{
+ printk(KERN_NOTICE "Switch BT power %d\n", on);
+ if (on)
+ SET_PALMT5_GPIO( BT_POWER, 1 );
+ else
+ SET_PALMT5_GPIO( BT_POWER, 0 );
+}
+EXPORT_SYMBOL(bcm2035_bt_power);
+
+
+struct bcm2035_bt_funcs {
+ void (*configure) ( int state );
+};
+
+static struct bcm2035_bt_funcs bt_funcs;
+
+static void
+bcm2035_bt_configure( int state )
+{
+ if (bt_funcs.configure != NULL)
+ bt_funcs.configure( state );
+}
+
+static struct platform_pxa_serial_funcs bcm2035_pxa_bt_funcs = {
+ .configure = bcm2035_bt_configure,
+};
+
+static struct platform_device bcm2035_bt = {
+ .name = "bcm2035-bt",
+ .id = -1,
+ .dev = {
+ .platform_data = &bt_funcs,
+ },
+};
+
/*************************
* AC97 audio controller *
*************************/
static pxa2xx_audio_ops_t palmt5_audio_ops = {
/*
- .startup = palmld_audio_startup,
+ .startup = palmt5_audio_startup,
.shutdown = mst_audio_shutdown,
.suspend = mst_audio_suspend,
.resume = mst_audio_resume,
@@ -294,6 +341,7 @@
&palmt5_ac97,
&palmt5_pm,
&palmt5_backlight,
+ &bcm2035_bt,
};
/***************
@@ -372,6 +420,7 @@
pxa_gpio_mode(GPIO31_SYNC_AC97_MD);
set_pxa_fb_info ( &palmt5_lcd_screen );
+ pxa_set_btuart_info(&bcm2035_pxa_bt_funcs);
pxa_set_mci_info ( &palmt5_mci_platform_data );
pxa_set_udc_info ( &palmt5_udc_mach_info );
pxa_set_ficp_info ( &palmt5_ficp_platform_data );
Modified: linux4palm/linux/trunk/include/asm-arm/arch-pxa/palmt5-gpio.h
===================================================================
--- linux4palm/linux/trunk/include/asm-arm/arch-pxa/palmt5-gpio.h 2007-05-22 11:23:20 UTC (rev 988)
+++ linux4palm/linux/trunk/include/asm-arm/arch-pxa/palmt5-gpio.h 2007-05-22 19:06:24 UTC (rev 989)
@@ -68,6 +68,19 @@
#define GPIO_NR_PALMT5_BL_POWER 84
#define GPIO_NR_PALMT5_LCD_POWER 96
+/* Bluetooth */
+#define GPIO_NR_PALMT5_BT_POWER 17
+#define GPIO_NR_PALMT5_BT_RXD 42
+#define GPIO_NR_PALMT5_BT_TXD 43
+#define GPIO_NR_PALMT5_BT_CTS 44
+#define GPIO_NR_PALMT5_BT_RTS 45
+#define GPIO_NR_PALMT5_BT_RESET 83
+
+#define GPIO_NR_PALMT5_BT_RXD_MD (GPIO_NR_PALMT5_BT_RXD | GPIO_ALT_FN_1_IN)
+#define GPIO_NR_PALMT5_BT_TXD_MD (GPIO_NR_PALMT5_BT_TXD | GPIO_ALT_FN_2_OUT)
+#define GPIO_NR_PALMT5_BT_UART_CTS_MD (GPIO_NR_PALMT5_BT_CTS | GPIO_ALT_FN_1_IN)
+#define GPIO_NR_PALMT5_BT_UART_RTS_MD (GPIO_NR_PALMT5_BT_RTS | GPIO_ALT_FN_2_OUT)
+
/* INTERRUPTS */
#define IRQ_GPIO_PALMT5_SD_DETECT_N IRQ_GPIO(GPIO_NR_PALMT5_SD_DETECT_N)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|