Skip to contentSkip to conversation

MSM gpio fixes

PATCH In review David Brown 2 participants 7 messages Jul 18, 2013 – Jul 25, 2013

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

cover MSM gpio fixes

Rohit sent these three fixes out on June 18. I still need a devicetree ack for the first patch, and would like these to get pulled in for v3.11

Rohit Vaswani (3):
ARM: msm: dts: Fix the gpio register address for msm8960
drivers: gpio: msm: Fix the error condition for reading ngpio
ARM: msm: Consolidate gpiomux for older architectures

 arch/arm/boot/dts/msm8960-cdp.dts |  4 ++--
 arch/arm/mach-msm/Kconfig         |  3 +--
 arch/arm/mach-msm/gpiomux-v1.c    | 33 ---------------------------------
 arch/arm/mach-msm/gpiomux.h       | 10 ----------
 drivers/gpio/gpio-msm-v2.c        |  2 +-
 5 files changed, 4 insertions(+), 48 deletions(-)
 delete mode 100644 arch/arm/mach-msm/gpiomux-v1.c
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
#1 lore raw

PATCH 1/3 ARM: msm: dts: Fix the gpio register address for msm8960

From: Rohit Vaswani <[email protected]>

Fix the the gpio reg address for the device tree entry.

---
 arch/arm/boot/dts/msm8960-cdp.dts | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
arch/arm/boot/dts/msm8960-cdp.dts +2 -2
index db2060c..9c1167b0 100644
@@ -26,7 +26,7 @@
 		cpu-offset = <0x80000>;
 	};
 
-	msmgpio: gpio at fd510000 {
+	msmgpio: gpio at 800000 {
 		compatible = "qcom,msm-gpio";
 		gpio-controller;
 		#gpio-cells = <2>;
@@ -34,7 +34,7 @@
 		interrupts = <0 32 0x4>;
 		interrupt-controller;
 		#interrupt-cells = <2>;
-		reg = <0xfd510000 0x4000>;
+		reg = <0x800000 0x4000>;
 	};
 
 	serial at 16440000 {
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
#2 lore raw

PATCH 2/3 drivers: gpio: msm: Fix the error condition for reading ngpio

In reply to David Brown

From: Rohit Vaswani <[email protected]>

of_property_read_u32 return 0 on success. The check was using a ! to return error. Fix the if condition.

---
 drivers/gpio/gpio-msm-v2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/gpio/gpio-msm-v2.c +1 -1
index f4491a4..c2fa770 100644
@@ -378,7 +378,7 @@ static int msm_gpio_probe(struct platform_device *pdev)
 	int ret, ngpio;
 	struct resource *res;
 
-	if (!of_property_read_u32(pdev->dev.of_node, "ngpio", &ngpio)) {
+	if (of_property_read_u32(pdev->dev.of_node, "ngpio", &ngpio)) {
 		dev_err(&pdev->dev, "%s: ngpio property missing\n", __func__);
 		return -EINVAL;
 	}
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
#3 lore raw

PATCH 3/3 ARM: msm: Consolidate gpiomux for older architectures

In reply to David Brown

From: Rohit Vaswani <[email protected]>

Msm gpiomux can be used only for 7x30 and 8x50. Prevent compilation and fix build issues on 7X00, 8X60 and 8960.

---
 arch/arm/mach-msm/Kconfig      |  3 +--
 arch/arm/mach-msm/gpiomux-v1.c | 33 ---------------------------------
 arch/arm/mach-msm/gpiomux.h    | 10 ----------
 3 files changed, 1 insertion(+), 45 deletions(-)
 delete mode 100644 arch/arm/mach-msm/gpiomux-v1.c
arch/arm/mach-msm/Kconfig +1 -2
index 614e41e..905efc8 100644
@@ -121,8 +121,7 @@ config MSM_SMD
 	bool
 
 config MSM_GPIOMUX
-	depends on !(ARCH_MSM8X60 || ARCH_MSM8960)
-	bool "MSM V1 TLMM GPIOMUX architecture"
+	bool
 	help
 	  Support for MSM V1 TLMM GPIOMUX architecture.
 
arch/arm/mach-msm/gpiomux-v1.c deleted +0 -33
deleted file mode 100644
index 27de2ab..0000000
@@ -1,33 +0,0 @@
-/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 and
- * only version 2 as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301, USA.
- */
-#include <linux/kernel.h>
-#include "gpiomux.h"
-#include "proc_comm.h"
-
-void __msm_gpiomux_write(unsigned gpio, gpiomux_config_t val)
-{
-	unsigned tlmm_config  = (val & ~GPIOMUX_CTL_MASK) |
-				((gpio & 0x3ff) << 4);
-	unsigned tlmm_disable = 0;
-	int rc;
-
-	rc = msm_proc_comm(PCOM_RPC_GPIO_TLMM_CONFIG_EX,
-			   &tlmm_config, &tlmm_disable);
-	if (rc)
-		pr_err("%s: unexpected proc_comm failure %d: %08x %08x\n",
-		       __func__, rc, tlmm_config, tlmm_disable);
-}
arch/arm/mach-msm/gpiomux.h +0 -10
index 8e82f41..4410d77 100644
@@ -73,16 +73,6 @@ extern struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS];
 int msm_gpiomux_write(unsigned gpio,
 		      gpiomux_config_t active,
 		      gpiomux_config_t suspended);
-
-/* Architecture-internal function for use by the framework only.
- * This function can assume the following:
- * - the gpio value has passed a bounds-check
- * - the gpiomux spinlock has been obtained
- *
- * This function is not for public consumption.  External users
- * should use msm_gpiomux_write.
- */
-void __msm_gpiomux_write(unsigned gpio, gpiomux_config_t val);
 #else
 static inline int msm_gpiomux_write(unsigned gpio,
 				    gpiomux_config_t active,
Signature · 2 lines
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
#4 lore raw
In reply to David Brown
Quoted 7 lines · David Brown

Rohit sent these three fixes out on June 18. I still need a devicetree ack for the first patch, and would like these to get pulled in for v3.11

Rohit Vaswani (3):
ARM: msm: dts: Fix the gpio register address for msm8960
drivers: gpio: msm: Fix the error condition for reading ngpio

OK for these two...

Quoted 1 line

ARM: msm: Consolidate gpiomux for older architectures

This does not look like a fix? Surely this can wait for v3.12?

Yours,
Linus Walleij

#5 lore raw
Quoted 10 lines · Linus Walleij
Quoted 7 lines · David Brown

Rohit sent these three fixes out on June 18. I still need a devicetree ack for the first patch, and would like these to get pulled in for v3.11

Rohit Vaswani (3):
ARM: msm: dts: Fix the gpio register address for msm8960
drivers: gpio: msm: Fix the error condition for reading ngpio

Quoted 5 lines

OK for these two...

Quoted 1 line

ARM: msm: Consolidate gpiomux for older architectures

This does not look like a fix? Surely this can wait for v3.12?

It fixes compilation. But, it could also wait for v3.12.

David

Signature · 3 lines
sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
#6 lore raw
Quoted 7 lines · David Brown
Quoted 3 lines · Linus Walleij
Quoted 1 line

ARM: msm: Consolidate gpiomux for older architectures

This does not look like a fix? Surely this can wait for v3.12?

It fixes compilation. But, it could also wait for v3.12.

Well it's up to you. The GPIO patch is in Torvalds tree now, so the rest goes through ARM SoC I guess...

Yours,
Linus Walleij