diff options
Diffstat (limited to 'arch/arm/mach-msm/gpiomux.c')
| -rw-r--r-- | arch/arm/mach-msm/gpiomux.c | 15 | 
1 files changed, 15 insertions, 0 deletions
| diff --git a/arch/arm/mach-msm/gpiomux.c b/arch/arm/mach-msm/gpiomux.c index 53af21abd155..2b8e2d217082 100644 --- a/arch/arm/mach-msm/gpiomux.c +++ b/arch/arm/mach-msm/gpiomux.c @@ -17,9 +17,24 @@  #include <linux/module.h>  #include <linux/spinlock.h>  #include "gpiomux.h" +#include "proc_comm.h"  static DEFINE_SPINLOCK(gpiomux_lock); +static 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); +} +  int msm_gpiomux_write(unsigned gpio,  		      gpiomux_config_t active,  		      gpiomux_config_t suspended) |