[PATCH 12/12] [ARM][S3C6410] Add support gpio function for keypad device

Ben Dooks ben-linux at fluff.org
Sat Sep 5 10:49:43 EDT 2009


On Sat, Sep 05, 2009 at 11:13:18PM +0900, Jinsung Yang wrote:
> Hi,
> I'm sorry for using a little non-English word (my name) when sending 12
> patches.
> That caused by wrong e-mail client setting, already fixed now :)

Ok, please wait for first pass review before reposting.
 
> Best Regards
> --
> Jinsung, Yang <jsgood.yang at samsung.com>
> AP Development Team
> System LSI, Semiconductor Business
> SAMSUNG Electronics Co., LTD
> 
> 
> > -----Original Message-----
> > From: linux-arm-kernel-bounces at lists.infradead.org [mailto:linux-arm-
> > kernel-bounces at lists.infradead.org] On Behalf Of ???
> > Sent: Saturday, September 05, 2009 10:31 PM
> > To: ben-linux at fluff.org
> > Cc: ???/AP???(SYS.LSI)/E3(??)/????; linux-arm-
> > kernel at lists.infradead.org
> > Subject: [PATCH 12/12] [ARM][S3C6410] Add support gpio function for keypad
> > device
> > 
> > This patch includes machine specific gpio function for keypad device
> > which can be changed by platform hardware. The gpio function is
> > related with keypad platform info such as rows and columns of
> > those matrix.
> > 
> > Signed-off-by: Jinsung Yang <jsgood.yang at samsung.com>
> > Signed-off-by: Kyeongil Kim <ki0351.kim at samsung.com>
> > ---
> >  arch/arm/mach-s3c6410/mach-smdk6410.c |   23 +++++++++++++++++++++++
> >  1 files changed, 23 insertions(+), 0 deletions(-)
> > 
> > diff --git a/arch/arm/mach-s3c6410/mach-smdk6410.c b/arch/arm/mach-
> > s3c6410/mach-smdk6410.c
> > index 95e130d..f297c26 100644
> > --- a/arch/arm/mach-s3c6410/mach-smdk6410.c
> > +++ b/arch/arm/mach-s3c6410/mach-smdk6410.c
> > @@ -347,6 +347,28 @@ static struct s3c_platform_keypad keypad_data
> > __initdata = {
> >  	.delay = 50,
> >  };
> > 
> > +static void s3c_keypad_cfg_gpio(int rows, int columns)
> > +{
> > +	unsigned int gpio;
> > +	unsigned int end;
> > +
> > +	end = S3C64XX_GPK(8 + rows);
> > +
> > +	/* Set all the necessary GPK pins to special-function 0 */
> > +	for (gpio = S3C64XX_GPK(8); gpio < end; gpio++) {
> > +		s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(3));
> > +		s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE);
> > +	}
> > +
> > +	end = S3C64XX_GPL(0 + columns);
> > +
> > +	/* Set all the necessary GPK pins to special-function 0 */
> > +	for (gpio = S3C64XX_GPL(0); gpio < end; gpio++) {
> > +		s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(3));
> > +		s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE);
> > +	}
> > +}
> > +
> >  static void __init smdk6410_map_io(void)
> >  {
> >  	u32 tmp;
> > @@ -382,6 +404,7 @@ static void __init smdk6410_machine_init(void)
> >  	i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1));
> > 
> >  	s3c_keypad_set_platdata(&keypad_data);
> > +	s3c_keypad_cfg_gpio(keypad_data.nr_rows, keypad_data.nr_cols);
> > 
> >  	platform_add_devices(smdk6410_devices,
> > ARRAY_SIZE(smdk6410_devices));
> >  }
> > --
> > 1.6.2.5
> > 
> > 
> > _______________________________________________
> > linux-arm-kernel mailing list
> > linux-arm-kernel at lists.infradead.org
> > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

-- 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.




More information about the linux-arm-kernel mailing list