All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality
@ 2011-05-09 11:41 Igor Grinberg
  2011-05-09 11:41 ` [PATCH 2/4] arm: pxa3xx: cm-x300: GPIO cleanup Igor Grinberg
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Igor Grinberg @ 2011-05-09 11:41 UTC (permalink / raw)
  To: linux-arm-kernel

While in sleep mode the CS# and other V3020 RTC GPIOs must be driven
high, otherwise V3020 RTC fails to keep the right time in sleep mode.

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
Cc: stable at kernel.org
---
 arch/arm/mach-pxa/cm-x300.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
index b2248e7..8a03487 100644
--- a/arch/arm/mach-pxa/cm-x300.c
+++ b/arch/arm/mach-pxa/cm-x300.c
@@ -161,10 +161,10 @@ static mfp_cfg_t cm_x3xx_mfp_cfg[] __initdata = {
 	GPIO99_GPIO,			/* Ethernet IRQ */
 
 	/* RTC GPIOs */
-	GPIO95_GPIO,			/* RTC CS */
-	GPIO96_GPIO,			/* RTC WR */
-	GPIO97_GPIO,			/* RTC RD */
-	GPIO98_GPIO,			/* RTC IO */
+	GPIO95_GPIO | MFP_LPM_DRIVE_HIGH,	/* RTC CS */
+	GPIO96_GPIO | MFP_LPM_DRIVE_HIGH,	/* RTC WR */
+	GPIO97_GPIO | MFP_LPM_DRIVE_HIGH,	/* RTC RD */
+	GPIO98_GPIO,				/* RTC IO */
 
 	/* Standard I2C */
 	GPIO21_I2C_SCL,
-- 
1.7.3.4

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 2/4] arm: pxa3xx: cm-x300: GPIO cleanup
  2011-05-09 11:41 [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
@ 2011-05-09 11:41 ` Igor Grinberg
  2011-05-17 13:22   ` Eric Miao
  2011-05-09 11:41 ` [PATCH 3/4] arm: pxa3xx: cm-x300: minor style cleanup Igor Grinberg
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 9+ messages in thread
From: Igor Grinberg @ 2011-05-09 11:41 UTC (permalink / raw)
  To: linux-arm-kernel

use gpio_request_<one|array>() instead of multiple gpiolib calls

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
---
 arch/arm/mach-pxa/cm-x300.c |   43 ++++++++++++++++++++-----------------------
 1 files changed, 20 insertions(+), 23 deletions(-)

diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
index 8a03487..880df33 100644
--- a/arch/arm/mach-pxa/cm-x300.c
+++ b/arch/arm/mach-pxa/cm-x300.c
@@ -484,14 +484,14 @@ static int cm_x300_ulpi_phy_reset(void)
 	int err;
 
 	/* reset the PHY */
-	err = gpio_request(GPIO_ULPI_PHY_RST, "ulpi reset");
+	err = gpio_request_one(GPIO_ULPI_PHY_RST, GPIOF_OUT_INIT_LOW,
+			       "ulpi reset");
 	if (err) {
 		pr_err("%s: failed to request ULPI reset GPIO: %d\n",
 		       __func__, err);
 		return err;
 	}
 
-	gpio_direction_output(GPIO_ULPI_PHY_RST, 0);
 	msleep(10);
 	gpio_set_value(GPIO_ULPI_PHY_RST, 1);
 	msleep(10);
@@ -768,39 +768,36 @@ static void __init cm_x300_init_da9030(void)
 	irq_set_irq_wake(IRQ_WAKEUP0, 1);
 }
 
+/* wi2wi gpio setting for system_rev >= 130 */
+static struct gpio cm_x300_wi2wi_gpios[] __initdata = {
+	{ 71, GPIOF_OUT_INIT_HIGH, "wlan en" },
+	{ 70, GPIOF_OUT_INIT_HIGH, "bt reset" },
+};
+
 static void __init cm_x300_init_wi2wi(void)
 {
 	int bt_reset, wlan_en;
 	int err;
 
 	if (system_rev < 130) {
-		wlan_en = 77;
-		bt_reset = 78;
-	} else {
-		wlan_en = 71;
-		bt_reset = 70;
+		cm_x300_wi2wi_gpios[0].gpio = 77;	/* wlan en */
+		cm_x300_wi2wi_gpios[1].gpio = 78;	/* bt reset */
 	}
 
 	/* Libertas and CSR reset */
-	err = gpio_request(wlan_en, "wlan en");
+	err = gpio_request_array(ARRAY_AND_SIZE(cm_x300_wi2wi_gpios));
 	if (err) {
-		pr_err("CM-X300: failed to request wlan en gpio: %d\n", err);
-	} else {
-		gpio_direction_output(wlan_en, 1);
-		gpio_free(wlan_en);
+		pr_err("CM-X300: failed to request wifi/bt gpios: %d\n", err);
+		return;
 	}
 
-	err = gpio_request(bt_reset, "bt reset");
-	if (err) {
-		pr_err("CM-X300: failed to request bt reset gpio: %d\n", err);
-	} else {
-		gpio_direction_output(bt_reset, 1);
-		udelay(10);
-		gpio_set_value(bt_reset, 0);
-		udelay(10);
-		gpio_set_value(bt_reset, 1);
-		gpio_free(bt_reset);
-	}
+	udelay(10);
+	gpio_set_value(bt_reset, 0);
+	udelay(10);
+	gpio_set_value(bt_reset, 1);
+
+	gpio_free(wlan_en);
+	gpio_free(bt_reset);
 }
 
 /* MFP */
-- 
1.7.3.4

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 3/4] arm: pxa3xx: cm-x300: minor style cleanup
  2011-05-09 11:41 [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
  2011-05-09 11:41 ` [PATCH 2/4] arm: pxa3xx: cm-x300: GPIO cleanup Igor Grinberg
@ 2011-05-09 11:41 ` Igor Grinberg
  2011-05-17 13:22   ` Eric Miao
  2011-05-09 11:41 ` [PATCH 4/4] arm: pxa3xx: cm-x300: update cm_x300_defconfig Igor Grinberg
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 9+ messages in thread
From: Igor Grinberg @ 2011-05-09 11:41 UTC (permalink / raw)
  To: linux-arm-kernel

introduce pr_fmt, so the pr_* calls will be cleaner

Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
---
 arch/arm/mach-pxa/cm-x300.c |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
index 880df33..b199596 100644
--- a/arch/arm/mach-pxa/cm-x300.c
+++ b/arch/arm/mach-pxa/cm-x300.c
@@ -12,6 +12,7 @@
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
+#define pr_fmt(fmt) "%s: " fmt, __func__
 
 #include <linux/module.h>
 #include <linux/kernel.h>
@@ -487,8 +488,7 @@ static int cm_x300_ulpi_phy_reset(void)
 	err = gpio_request_one(GPIO_ULPI_PHY_RST, GPIOF_OUT_INIT_LOW,
 			       "ulpi reset");
 	if (err) {
-		pr_err("%s: failed to request ULPI reset GPIO: %d\n",
-		       __func__, err);
+		pr_err("failed to request ULPI reset GPIO: %d\n", err);
 		return err;
 	}
 
@@ -510,8 +510,7 @@ static inline int cm_x300_u2d_init(struct device *dev)
 		pout_clk = clk_get(NULL, "CLK_POUT");
 		if (IS_ERR(pout_clk)) {
 			err = PTR_ERR(pout_clk);
-			pr_err("%s: failed to get CLK_POUT: %d\n",
-			       __func__, err);
+			pr_err("failed to get CLK_POUT: %d\n", err);
 			return err;
 		}
 		clk_enable(pout_clk);
@@ -787,7 +786,7 @@ static void __init cm_x300_init_wi2wi(void)
 	/* Libertas and CSR reset */
 	err = gpio_request_array(ARRAY_AND_SIZE(cm_x300_wi2wi_gpios));
 	if (err) {
-		pr_err("CM-X300: failed to request wifi/bt gpios: %d\n", err);
+		pr_err("failed to request wifi/bt gpios: %d\n", err);
 		return;
 	}
 
-- 
1.7.3.4

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 4/4] arm: pxa3xx: cm-x300: update cm_x300_defconfig
  2011-05-09 11:41 [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
  2011-05-09 11:41 ` [PATCH 2/4] arm: pxa3xx: cm-x300: GPIO cleanup Igor Grinberg
  2011-05-09 11:41 ` [PATCH 3/4] arm: pxa3xx: cm-x300: minor style cleanup Igor Grinberg
@ 2011-05-09 11:41 ` Igor Grinberg
  2011-05-19 16:04   ` Igor Grinberg
  2011-05-17 12:34 ` [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
  2011-05-17 13:21 ` Eric Miao
  4 siblings, 1 reply; 9+ messages in thread
From: Igor Grinberg @ 2011-05-09 11:41 UTC (permalink / raw)
  To: linux-arm-kernel


Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
---
 arch/arm/configs/cm_x300_defconfig |   18 ++++--------------
 1 files changed, 4 insertions(+), 14 deletions(-)

diff --git a/arch/arm/configs/cm_x300_defconfig b/arch/arm/configs/cm_x300_defconfig
index 921e56a..f4b7672 100644
--- a/arch/arm/configs/cm_x300_defconfig
+++ b/arch/arm/configs/cm_x300_defconfig
@@ -5,7 +5,6 @@ CONFIG_SYSVIPC=y
 CONFIG_IKCONFIG=y
 CONFIG_IKCONFIG_PROC=y
 CONFIG_LOG_BUF_SHIFT=18
-CONFIG_SYSFS_DEPRECATED_V2=y
 CONFIG_BLK_DEV_INITRD=y
 # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
 CONFIG_MODULES=y
@@ -13,6 +12,7 @@ CONFIG_MODULE_UNLOAD=y
 CONFIG_MODULE_FORCE_UNLOAD=y
 # CONFIG_BLK_DEV_BSG is not set
 CONFIG_ARCH_PXA=y
+CONFIG_GPIO_PCA953X=y
 CONFIG_MACH_CM_X300=y
 CONFIG_NO_HZ=y
 CONFIG_AEABI=y
@@ -23,7 +23,6 @@ CONFIG_CMDLINE="root=/dev/mtdblock5 rootfstype=ubifs console=ttyS2,38400"
 CONFIG_CPU_FREQ=y
 CONFIG_CPU_FREQ_GOV_USERSPACE=y
 CONFIG_FPE_NWFPE=y
-CONFIG_PM=y
 CONFIG_APM_EMULATION=y
 CONFIG_NET=y
 CONFIG_PACKET=y
@@ -40,8 +39,8 @@ CONFIG_IP_PNP_RARP=y
 # CONFIG_INET_DIAG is not set
 # CONFIG_IPV6 is not set
 CONFIG_BT=m
-CONFIG_BT_L2CAP=m
-CONFIG_BT_SCO=m
+CONFIG_BT_L2CAP=y
+CONFIG_BT_SCO=y
 CONFIG_BT_RFCOMM=m
 CONFIG_BT_RFCOMM_TTY=y
 CONFIG_BT_BNEP=m
@@ -60,7 +59,6 @@ CONFIG_MTD_NAND_PXA3xx=y
 CONFIG_MTD_UBI=y
 CONFIG_BLK_DEV_LOOP=y
 CONFIG_BLK_DEV_RAM=y
-# CONFIG_MISC_DEVICES is not set
 CONFIG_SCSI=y
 CONFIG_BLK_DEV_SD=y
 CONFIG_NETDEVICES=y
@@ -81,16 +79,15 @@ CONFIG_TOUCHSCREEN_WM97XX=m
 # CONFIG_TOUCHSCREEN_WM9705 is not set
 # CONFIG_TOUCHSCREEN_WM9713 is not set
 # CONFIG_SERIO is not set
+# CONFIG_LEGACY_PTYS is not set
 CONFIG_SERIAL_PXA=y
 CONFIG_SERIAL_PXA_CONSOLE=y
-# CONFIG_LEGACY_PTYS is not set
 # CONFIG_HW_RANDOM is not set
 CONFIG_I2C=y
 CONFIG_I2C_PXA=y
 CONFIG_SPI=y
 CONFIG_SPI_GPIO=y
 CONFIG_GPIO_SYSFS=y
-CONFIG_GPIO_PCA953X=y
 # CONFIG_HWMON is not set
 CONFIG_PMIC_DA903X=y
 CONFIG_REGULATOR=y
@@ -102,7 +99,6 @@ CONFIG_LCD_CLASS_DEVICE=y
 CONFIG_LCD_TDO24M=y
 # CONFIG_BACKLIGHT_GENERIC is not set
 CONFIG_BACKLIGHT_DA903X=m
-# CONFIG_VGA_CONSOLE is not set
 CONFIG_FRAMEBUFFER_CONSOLE=y
 CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
 CONFIG_FONTS=y
@@ -131,7 +127,6 @@ CONFIG_HID_GREENASIA=y
 CONFIG_HID_SMARTJOYPLUS=y
 CONFIG_HID_TOPSEED=y
 CONFIG_HID_THRUSTMASTER=y
-CONFIG_HID_WACOM=m
 CONFIG_HID_ZEROPLUS=y
 CONFIG_USB=y
 CONFIG_USB_DEVICEFS=y
@@ -152,7 +147,6 @@ CONFIG_RTC_DRV_PXA=y
 CONFIG_EXT2_FS=y
 CONFIG_EXT3_FS=y
 # CONFIG_EXT3_FS_XATTR is not set
-CONFIG_INOTIFY=y
 CONFIG_MSDOS_FS=m
 CONFIG_VFAT_FS=m
 CONFIG_TMPFS=y
@@ -164,7 +158,6 @@ CONFIG_NFS_V3=y
 CONFIG_NFS_V3_ACL=y
 CONFIG_NFS_V4=y
 CONFIG_ROOT_NFS=y
-CONFIG_SMB_FS=m
 CONFIG_CIFS=m
 CONFIG_CIFS_WEAK_PW_HASH=y
 CONFIG_PARTITION_ADVANCED=y
@@ -172,9 +165,7 @@ CONFIG_NLS_CODEPAGE_437=m
 CONFIG_NLS_ISO8859_1=m
 CONFIG_DEBUG_FS=y
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DETECT_SOFTLOCKUP is not set
 # CONFIG_SCHED_DEBUG is not set
-# CONFIG_RCU_CPU_STALL_DETECTOR is not set
 CONFIG_SYSCTL_SYSCALL_CHECK=y
 # CONFIG_FTRACE is not set
 CONFIG_DEBUG_USER=y
@@ -182,7 +173,6 @@ CONFIG_DEBUG_LL=y
 CONFIG_CRYPTO_ECB=m
 CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_AES=m
-CONFIG_CRYPTO_ARC4=m
 # CONFIG_CRYPTO_ANSI_CPRNG is not set
 # CONFIG_CRYPTO_HW is not set
 CONFIG_CRC_T10DIF=y
-- 
1.7.3.4

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality
  2011-05-09 11:41 [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
                   ` (2 preceding siblings ...)
  2011-05-09 11:41 ` [PATCH 4/4] arm: pxa3xx: cm-x300: update cm_x300_defconfig Igor Grinberg
@ 2011-05-17 12:34 ` Igor Grinberg
  2011-05-17 13:21 ` Eric Miao
  4 siblings, 0 replies; 9+ messages in thread
From: Igor Grinberg @ 2011-05-17 12:34 UTC (permalink / raw)
  To: linux-arm-kernel

Eric,


Can this go into .39?
I'd like it to...


On 05/09/11 14:41, Igor Grinberg wrote:

> While in sleep mode the CS# and other V3020 RTC GPIOs must be driven
> high, otherwise V3020 RTC fails to keep the right time in sleep mode.
>
> Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
> Cc: stable at kernel.org
> ---
>  arch/arm/mach-pxa/cm-x300.c |    8 ++++----
>  1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
> index b2248e7..8a03487 100644
> --- a/arch/arm/mach-pxa/cm-x300.c
> +++ b/arch/arm/mach-pxa/cm-x300.c
> @@ -161,10 +161,10 @@ static mfp_cfg_t cm_x3xx_mfp_cfg[] __initdata = {
>  	GPIO99_GPIO,			/* Ethernet IRQ */
>  
>  	/* RTC GPIOs */
> -	GPIO95_GPIO,			/* RTC CS */
> -	GPIO96_GPIO,			/* RTC WR */
> -	GPIO97_GPIO,			/* RTC RD */
> -	GPIO98_GPIO,			/* RTC IO */
> +	GPIO95_GPIO | MFP_LPM_DRIVE_HIGH,	/* RTC CS */
> +	GPIO96_GPIO | MFP_LPM_DRIVE_HIGH,	/* RTC WR */
> +	GPIO97_GPIO | MFP_LPM_DRIVE_HIGH,	/* RTC RD */
> +	GPIO98_GPIO,				/* RTC IO */
>  
>  	/* Standard I2C */
>  	GPIO21_I2C_SCL,

-- 
Regards,
Igor.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality
  2011-05-09 11:41 [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
                   ` (3 preceding siblings ...)
  2011-05-17 12:34 ` [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
@ 2011-05-17 13:21 ` Eric Miao
  4 siblings, 0 replies; 9+ messages in thread
From: Eric Miao @ 2011-05-17 13:21 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, May 9, 2011 at 7:41 PM, Igor Grinberg <grinberg@compulab.co.il> wrote:
> While in sleep mode the CS# and other V3020 RTC GPIOs must be driven
> high, otherwise V3020 RTC fails to keep the right time in sleep mode.
>
> Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
> Cc: stable at kernel.org

Applied.

> ---
> ?arch/arm/mach-pxa/cm-x300.c | ? ?8 ++++----
> ?1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
> index b2248e7..8a03487 100644
> --- a/arch/arm/mach-pxa/cm-x300.c
> +++ b/arch/arm/mach-pxa/cm-x300.c
> @@ -161,10 +161,10 @@ static mfp_cfg_t cm_x3xx_mfp_cfg[] __initdata = {
> ? ? ? ?GPIO99_GPIO, ? ? ? ? ? ? ? ? ? ?/* Ethernet IRQ */
>
> ? ? ? ?/* RTC GPIOs */
> - ? ? ? GPIO95_GPIO, ? ? ? ? ? ? ? ? ? ?/* RTC CS */
> - ? ? ? GPIO96_GPIO, ? ? ? ? ? ? ? ? ? ?/* RTC WR */
> - ? ? ? GPIO97_GPIO, ? ? ? ? ? ? ? ? ? ?/* RTC RD */
> - ? ? ? GPIO98_GPIO, ? ? ? ? ? ? ? ? ? ?/* RTC IO */
> + ? ? ? GPIO95_GPIO | MFP_LPM_DRIVE_HIGH, ? ? ? /* RTC CS */
> + ? ? ? GPIO96_GPIO | MFP_LPM_DRIVE_HIGH, ? ? ? /* RTC WR */
> + ? ? ? GPIO97_GPIO | MFP_LPM_DRIVE_HIGH, ? ? ? /* RTC RD */
> + ? ? ? GPIO98_GPIO, ? ? ? ? ? ? ? ? ? ? ? ? ? ?/* RTC IO */
>
> ? ? ? ?/* Standard I2C */
> ? ? ? ?GPIO21_I2C_SCL,
> --
> 1.7.3.4
>
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 2/4] arm: pxa3xx: cm-x300: GPIO cleanup
  2011-05-09 11:41 ` [PATCH 2/4] arm: pxa3xx: cm-x300: GPIO cleanup Igor Grinberg
@ 2011-05-17 13:22   ` Eric Miao
  0 siblings, 0 replies; 9+ messages in thread
From: Eric Miao @ 2011-05-17 13:22 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, May 9, 2011 at 7:41 PM, Igor Grinberg <grinberg@compulab.co.il> wrote:
> use gpio_request_<one|array>() instead of multiple gpiolib calls
>
> Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>

Applied.

> ---
> ?arch/arm/mach-pxa/cm-x300.c | ? 43 ++++++++++++++++++++-----------------------
> ?1 files changed, 20 insertions(+), 23 deletions(-)
>
> diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
> index 8a03487..880df33 100644
> --- a/arch/arm/mach-pxa/cm-x300.c
> +++ b/arch/arm/mach-pxa/cm-x300.c
> @@ -484,14 +484,14 @@ static int cm_x300_ulpi_phy_reset(void)
> ? ? ? ?int err;
>
> ? ? ? ?/* reset the PHY */
> - ? ? ? err = gpio_request(GPIO_ULPI_PHY_RST, "ulpi reset");
> + ? ? ? err = gpio_request_one(GPIO_ULPI_PHY_RST, GPIOF_OUT_INIT_LOW,
> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?"ulpi reset");
> ? ? ? ?if (err) {
> ? ? ? ? ? ? ? ?pr_err("%s: failed to request ULPI reset GPIO: %d\n",
> ? ? ? ? ? ? ? ? ? ? ? __func__, err);
> ? ? ? ? ? ? ? ?return err;
> ? ? ? ?}
>
> - ? ? ? gpio_direction_output(GPIO_ULPI_PHY_RST, 0);
> ? ? ? ?msleep(10);
> ? ? ? ?gpio_set_value(GPIO_ULPI_PHY_RST, 1);
> ? ? ? ?msleep(10);
> @@ -768,39 +768,36 @@ static void __init cm_x300_init_da9030(void)
> ? ? ? ?irq_set_irq_wake(IRQ_WAKEUP0, 1);
> ?}
>
> +/* wi2wi gpio setting for system_rev >= 130 */
> +static struct gpio cm_x300_wi2wi_gpios[] __initdata = {
> + ? ? ? { 71, GPIOF_OUT_INIT_HIGH, "wlan en" },
> + ? ? ? { 70, GPIOF_OUT_INIT_HIGH, "bt reset" },
> +};
> +
> ?static void __init cm_x300_init_wi2wi(void)
> ?{
> ? ? ? ?int bt_reset, wlan_en;
> ? ? ? ?int err;
>
> ? ? ? ?if (system_rev < 130) {
> - ? ? ? ? ? ? ? wlan_en = 77;
> - ? ? ? ? ? ? ? bt_reset = 78;
> - ? ? ? } else {
> - ? ? ? ? ? ? ? wlan_en = 71;
> - ? ? ? ? ? ? ? bt_reset = 70;
> + ? ? ? ? ? ? ? cm_x300_wi2wi_gpios[0].gpio = 77; ? ? ? /* wlan en */
> + ? ? ? ? ? ? ? cm_x300_wi2wi_gpios[1].gpio = 78; ? ? ? /* bt reset */
> ? ? ? ?}
>
> ? ? ? ?/* Libertas and CSR reset */
> - ? ? ? err = gpio_request(wlan_en, "wlan en");
> + ? ? ? err = gpio_request_array(ARRAY_AND_SIZE(cm_x300_wi2wi_gpios));
> ? ? ? ?if (err) {
> - ? ? ? ? ? ? ? pr_err("CM-X300: failed to request wlan en gpio: %d\n", err);
> - ? ? ? } else {
> - ? ? ? ? ? ? ? gpio_direction_output(wlan_en, 1);
> - ? ? ? ? ? ? ? gpio_free(wlan_en);
> + ? ? ? ? ? ? ? pr_err("CM-X300: failed to request wifi/bt gpios: %d\n", err);
> + ? ? ? ? ? ? ? return;
> ? ? ? ?}
>
> - ? ? ? err = gpio_request(bt_reset, "bt reset");
> - ? ? ? if (err) {
> - ? ? ? ? ? ? ? pr_err("CM-X300: failed to request bt reset gpio: %d\n", err);
> - ? ? ? } else {
> - ? ? ? ? ? ? ? gpio_direction_output(bt_reset, 1);
> - ? ? ? ? ? ? ? udelay(10);
> - ? ? ? ? ? ? ? gpio_set_value(bt_reset, 0);
> - ? ? ? ? ? ? ? udelay(10);
> - ? ? ? ? ? ? ? gpio_set_value(bt_reset, 1);
> - ? ? ? ? ? ? ? gpio_free(bt_reset);
> - ? ? ? }
> + ? ? ? udelay(10);
> + ? ? ? gpio_set_value(bt_reset, 0);
> + ? ? ? udelay(10);
> + ? ? ? gpio_set_value(bt_reset, 1);
> +
> + ? ? ? gpio_free(wlan_en);
> + ? ? ? gpio_free(bt_reset);
> ?}
>
> ?/* MFP */
> --
> 1.7.3.4
>
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 3/4] arm: pxa3xx: cm-x300: minor style cleanup
  2011-05-09 11:41 ` [PATCH 3/4] arm: pxa3xx: cm-x300: minor style cleanup Igor Grinberg
@ 2011-05-17 13:22   ` Eric Miao
  0 siblings, 0 replies; 9+ messages in thread
From: Eric Miao @ 2011-05-17 13:22 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, May 9, 2011 at 7:41 PM, Igor Grinberg <grinberg@compulab.co.il> wrote:
> introduce pr_fmt, so the pr_* calls will be cleaner
>
> Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>

Applied.

> ---
> ?arch/arm/mach-pxa/cm-x300.c | ? ?9 ++++-----
> ?1 files changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/mach-pxa/cm-x300.c b/arch/arm/mach-pxa/cm-x300.c
> index 880df33..b199596 100644
> --- a/arch/arm/mach-pxa/cm-x300.c
> +++ b/arch/arm/mach-pxa/cm-x300.c
> @@ -12,6 +12,7 @@
> ?* it under the terms of the GNU General Public License version 2 as
> ?* published by the Free Software Foundation.
> ?*/
> +#define pr_fmt(fmt) "%s: " fmt, __func__
>
> ?#include <linux/module.h>
> ?#include <linux/kernel.h>
> @@ -487,8 +488,7 @@ static int cm_x300_ulpi_phy_reset(void)
> ? ? ? ?err = gpio_request_one(GPIO_ULPI_PHY_RST, GPIOF_OUT_INIT_LOW,
> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "ulpi reset");
> ? ? ? ?if (err) {
> - ? ? ? ? ? ? ? pr_err("%s: failed to request ULPI reset GPIO: %d\n",
> - ? ? ? ? ? ? ? ? ? ? ?__func__, err);
> + ? ? ? ? ? ? ? pr_err("failed to request ULPI reset GPIO: %d\n", err);
> ? ? ? ? ? ? ? ?return err;
> ? ? ? ?}
>
> @@ -510,8 +510,7 @@ static inline int cm_x300_u2d_init(struct device *dev)
> ? ? ? ? ? ? ? ?pout_clk = clk_get(NULL, "CLK_POUT");
> ? ? ? ? ? ? ? ?if (IS_ERR(pout_clk)) {
> ? ? ? ? ? ? ? ? ? ? ? ?err = PTR_ERR(pout_clk);
> - ? ? ? ? ? ? ? ? ? ? ? pr_err("%s: failed to get CLK_POUT: %d\n",
> - ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?__func__, err);
> + ? ? ? ? ? ? ? ? ? ? ? pr_err("failed to get CLK_POUT: %d\n", err);
> ? ? ? ? ? ? ? ? ? ? ? ?return err;
> ? ? ? ? ? ? ? ?}
> ? ? ? ? ? ? ? ?clk_enable(pout_clk);
> @@ -787,7 +786,7 @@ static void __init cm_x300_init_wi2wi(void)
> ? ? ? ?/* Libertas and CSR reset */
> ? ? ? ?err = gpio_request_array(ARRAY_AND_SIZE(cm_x300_wi2wi_gpios));
> ? ? ? ?if (err) {
> - ? ? ? ? ? ? ? pr_err("CM-X300: failed to request wifi/bt gpios: %d\n", err);
> + ? ? ? ? ? ? ? pr_err("failed to request wifi/bt gpios: %d\n", err);
> ? ? ? ? ? ? ? ?return;
> ? ? ? ?}
>
> --
> 1.7.3.4
>
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 4/4] arm: pxa3xx: cm-x300: update cm_x300_defconfig
  2011-05-09 11:41 ` [PATCH 4/4] arm: pxa3xx: cm-x300: update cm_x300_defconfig Igor Grinberg
@ 2011-05-19 16:04   ` Igor Grinberg
  0 siblings, 0 replies; 9+ messages in thread
From: Igor Grinberg @ 2011-05-19 16:04 UTC (permalink / raw)
  To: linux-arm-kernel

Eric,


What about this one?

It fixes the BT issue and also removes 10 more lines :)



On 05/09/11 14:41, Igor Grinberg wrote:

> Signed-off-by: Igor Grinberg <grinberg@compulab.co.il>
> ---
>  arch/arm/configs/cm_x300_defconfig |   18 ++++--------------
>  1 files changed, 4 insertions(+), 14 deletions(-)
>
> diff --git a/arch/arm/configs/cm_x300_defconfig b/arch/arm/configs/cm_x300_defconfig
> index 921e56a..f4b7672 100644
> --- a/arch/arm/configs/cm_x300_defconfig
> +++ b/arch/arm/configs/cm_x300_defconfig
> @@ -5,7 +5,6 @@ CONFIG_SYSVIPC=y
>  CONFIG_IKCONFIG=y
>  CONFIG_IKCONFIG_PROC=y
>  CONFIG_LOG_BUF_SHIFT=18
> -CONFIG_SYSFS_DEPRECATED_V2=y
>  CONFIG_BLK_DEV_INITRD=y
>  # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
>  CONFIG_MODULES=y
> @@ -13,6 +12,7 @@ CONFIG_MODULE_UNLOAD=y
>  CONFIG_MODULE_FORCE_UNLOAD=y
>  # CONFIG_BLK_DEV_BSG is not set
>  CONFIG_ARCH_PXA=y
> +CONFIG_GPIO_PCA953X=y
>  CONFIG_MACH_CM_X300=y
>  CONFIG_NO_HZ=y
>  CONFIG_AEABI=y
> @@ -23,7 +23,6 @@ CONFIG_CMDLINE="root=/dev/mtdblock5 rootfstype=ubifs console=ttyS2,38400"
>  CONFIG_CPU_FREQ=y
>  CONFIG_CPU_FREQ_GOV_USERSPACE=y
>  CONFIG_FPE_NWFPE=y
> -CONFIG_PM=y
>  CONFIG_APM_EMULATION=y
>  CONFIG_NET=y
>  CONFIG_PACKET=y
> @@ -40,8 +39,8 @@ CONFIG_IP_PNP_RARP=y
>  # CONFIG_INET_DIAG is not set
>  # CONFIG_IPV6 is not set
>  CONFIG_BT=m
> -CONFIG_BT_L2CAP=m
> -CONFIG_BT_SCO=m
> +CONFIG_BT_L2CAP=y
> +CONFIG_BT_SCO=y
>  CONFIG_BT_RFCOMM=m
>  CONFIG_BT_RFCOMM_TTY=y
>  CONFIG_BT_BNEP=m
> @@ -60,7 +59,6 @@ CONFIG_MTD_NAND_PXA3xx=y
>  CONFIG_MTD_UBI=y
>  CONFIG_BLK_DEV_LOOP=y
>  CONFIG_BLK_DEV_RAM=y
> -# CONFIG_MISC_DEVICES is not set
>  CONFIG_SCSI=y
>  CONFIG_BLK_DEV_SD=y
>  CONFIG_NETDEVICES=y
> @@ -81,16 +79,15 @@ CONFIG_TOUCHSCREEN_WM97XX=m
>  # CONFIG_TOUCHSCREEN_WM9705 is not set
>  # CONFIG_TOUCHSCREEN_WM9713 is not set
>  # CONFIG_SERIO is not set
> +# CONFIG_LEGACY_PTYS is not set
>  CONFIG_SERIAL_PXA=y
>  CONFIG_SERIAL_PXA_CONSOLE=y
> -# CONFIG_LEGACY_PTYS is not set
>  # CONFIG_HW_RANDOM is not set
>  CONFIG_I2C=y
>  CONFIG_I2C_PXA=y
>  CONFIG_SPI=y
>  CONFIG_SPI_GPIO=y
>  CONFIG_GPIO_SYSFS=y
> -CONFIG_GPIO_PCA953X=y
>  # CONFIG_HWMON is not set
>  CONFIG_PMIC_DA903X=y
>  CONFIG_REGULATOR=y
> @@ -102,7 +99,6 @@ CONFIG_LCD_CLASS_DEVICE=y
>  CONFIG_LCD_TDO24M=y
>  # CONFIG_BACKLIGHT_GENERIC is not set
>  CONFIG_BACKLIGHT_DA903X=m
> -# CONFIG_VGA_CONSOLE is not set
>  CONFIG_FRAMEBUFFER_CONSOLE=y
>  CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
>  CONFIG_FONTS=y
> @@ -131,7 +127,6 @@ CONFIG_HID_GREENASIA=y
>  CONFIG_HID_SMARTJOYPLUS=y
>  CONFIG_HID_TOPSEED=y
>  CONFIG_HID_THRUSTMASTER=y
> -CONFIG_HID_WACOM=m
>  CONFIG_HID_ZEROPLUS=y
>  CONFIG_USB=y
>  CONFIG_USB_DEVICEFS=y
> @@ -152,7 +147,6 @@ CONFIG_RTC_DRV_PXA=y
>  CONFIG_EXT2_FS=y
>  CONFIG_EXT3_FS=y
>  # CONFIG_EXT3_FS_XATTR is not set
> -CONFIG_INOTIFY=y
>  CONFIG_MSDOS_FS=m
>  CONFIG_VFAT_FS=m
>  CONFIG_TMPFS=y
> @@ -164,7 +158,6 @@ CONFIG_NFS_V3=y
>  CONFIG_NFS_V3_ACL=y
>  CONFIG_NFS_V4=y
>  CONFIG_ROOT_NFS=y
> -CONFIG_SMB_FS=m
>  CONFIG_CIFS=m
>  CONFIG_CIFS_WEAK_PW_HASH=y
>  CONFIG_PARTITION_ADVANCED=y
> @@ -172,9 +165,7 @@ CONFIG_NLS_CODEPAGE_437=m
>  CONFIG_NLS_ISO8859_1=m
>  CONFIG_DEBUG_FS=y
>  CONFIG_DEBUG_KERNEL=y
> -# CONFIG_DETECT_SOFTLOCKUP is not set
>  # CONFIG_SCHED_DEBUG is not set
> -# CONFIG_RCU_CPU_STALL_DETECTOR is not set
>  CONFIG_SYSCTL_SYSCALL_CHECK=y
>  # CONFIG_FTRACE is not set
>  CONFIG_DEBUG_USER=y
> @@ -182,7 +173,6 @@ CONFIG_DEBUG_LL=y
>  CONFIG_CRYPTO_ECB=m
>  CONFIG_CRYPTO_MICHAEL_MIC=m
>  CONFIG_CRYPTO_AES=m
> -CONFIG_CRYPTO_ARC4=m
>  # CONFIG_CRYPTO_ANSI_CPRNG is not set
>  # CONFIG_CRYPTO_HW is not set
>  CONFIG_CRC_T10DIF=y

-- 
Regards,
Igor.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2011-05-19 16:04 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-05-09 11:41 [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
2011-05-09 11:41 ` [PATCH 2/4] arm: pxa3xx: cm-x300: GPIO cleanup Igor Grinberg
2011-05-17 13:22   ` Eric Miao
2011-05-09 11:41 ` [PATCH 3/4] arm: pxa3xx: cm-x300: minor style cleanup Igor Grinberg
2011-05-17 13:22   ` Eric Miao
2011-05-09 11:41 ` [PATCH 4/4] arm: pxa3xx: cm-x300: update cm_x300_defconfig Igor Grinberg
2011-05-19 16:04   ` Igor Grinberg
2011-05-17 12:34 ` [PATCH 1/4] arm: pxa3xx: cm-x300: fix V3020 RTC functionality Igor Grinberg
2011-05-17 13:21 ` Eric Miao

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.