RE: [PATCH] ARM: EXYNOS: Use gpio_request_one

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Kukjin Kim wrote:
> -----Original Message-----
> Subject: RE: [PATCH] ARM: EXYNOS: Use gpio_request_one
> 
> Jingoo Han wrote:
> >
> > By using gpio_request_one it is possible to set the direction
> > and initial value in one shot. Thus, using gpio_request_one can
> > make the code simpler.
> >
> > Signed-off-by: Jingoo Han <jg1.han@xxxxxxxxxxx>
> > ---
> >  arch/arm/mach-exynos/mach-nuri.c           |    4 +---
> >  arch/arm/mach-exynos/mach-smdkv310.c       |    4 +---
> >  arch/arm/mach-exynos/mach-universal_c210.c |   10 +++-------
> >  3 files changed, 5 insertions(+), 13 deletions(-)
> >
> > diff --git a/arch/arm/mach-exynos/mach-nuri.c b/arch/arm/mach-exynos/mach-
> > nuri.c
> > index 236bbe1..c96de1f 100644
> > --- a/arch/arm/mach-exynos/mach-nuri.c
> > +++ b/arch/arm/mach-exynos/mach-nuri.c
> > @@ -249,9 +249,7 @@ static int nuri_bl_init(struct device *dev)
> >  {
> >  	int ret, gpio = EXYNOS4_GPE2(3);
> >
> > -	ret = gpio_request(gpio, "LCD_LDO_EN");
> > -	if (!ret)
> > -		gpio_direction_output(gpio, 0);
> > +	ret = gpio_request_one(gpio, GPIOF_OUT_INIT_LOW, "LCD_LD0_EN");
> >
> Looks good, but following is better?
> 
>  static int nuri_bl_init(struct device *dev)
>  {
> -       int ret, gpio = EXYNOS4_GPE2(3);
> -
> -       ret = gpio_request(gpio, "LCD_LDO_EN");
> -       if (!ret)
> -               gpio_direction_output(gpio, 0);
> -
> -       return ret;
> +       return gpio_request_one(EXYNOS4_GPE2(3), GPIOF_OUT_INIT_LOW,
> "LCD_LDO_EN");
>  }
> 
> Others, ok to me.
> Could you please re-send?
OK, I will send you v2 patch.
Thank you.
> 
> Thanks.
> 
> Best regards,
> Kgene.
> --
> Kukjin Kim <kgene.kim@xxxxxxxxxxx>, Senior Engineer,
> SW Solution Development Team, Samsung Electronics Co., Ltd.
> 
> >  	return ret;
> >  }
> > diff --git a/arch/arm/mach-exynos/mach-smdkv310.c b/arch/arm/mach-
> > exynos/mach-smdkv310.c
> > index cec2afa..cbf31bd 100644
> > --- a/arch/arm/mach-exynos/mach-smdkv310.c
> > +++ b/arch/arm/mach-exynos/mach-smdkv310.c
> > @@ -129,9 +129,7 @@ static void lcd_lte480wv_set_power(struct
> > plat_lcd_data *pd,
> >  		gpio_free(EXYNOS4_GPD0(1));
> >  #endif
> >  		/* fire nRESET on power up */
> > -		gpio_request(EXYNOS4_GPX0(6), "GPX0");
> > -
> > -		gpio_direction_output(EXYNOS4_GPX0(6), 1);
> > +		gpio_request_one(EXYNOS4_GPX0(6), GPIOF_OUT_INIT_HIGH,
> > "GPX0");
> >  		mdelay(100);
> >
> >  		gpio_set_value(EXYNOS4_GPX0(6), 0);
> > diff --git a/arch/arm/mach-exynos/mach-universal_c210.c b/arch/arm/mach-
> > exynos/mach-universal_c210.c
> > index a2a177f..0a04cd6 100644
> > --- a/arch/arm/mach-exynos/mach-universal_c210.c
> > +++ b/arch/arm/mach-exynos/mach-universal_c210.c
> > @@ -608,8 +608,7 @@ static void __init universal_tsp_init(void)
> >
> >  	/* TSP_LDO_ON: XMDMADDR_11 */
> >  	gpio = EXYNOS4_GPE2(3);
> > -	gpio_request(gpio, "TSP_LDO_ON");
> > -	gpio_direction_output(gpio, 1);
> > +	gpio_request_one(gpio, GPIOF_OUT_INIT_HIGH, "TSP_LDO_ON");
> >  	gpio_export(gpio, 0);
> >
> >  	/* TSP_INT: XMDMADDR_7 */
> > @@ -669,8 +668,7 @@ static void __init universal_touchkey_init(void)
> >  	i2c_gpio12_devs[0].irq = gpio_to_irq(gpio);
> >
> >  	gpio = EXYNOS4_GPE3(3);			/* XMDMDATA_3 */
> > -	gpio_request(gpio, "3_TOUCH_EN");
> > -	gpio_direction_output(gpio, 1);
> > +	gpio_request_one(gpio, GPIOF_OUT_INIT_HIGH, "3_TOUCH_EN");
> >  }
> >
> >  static struct s3c2410_platform_i2c universal_i2c0_platdata __initdata = {
> > @@ -1000,9 +998,7 @@ static void __init universal_map_io(void)
> >  void s5p_tv_setup(void)
> >  {
> >  	/* direct HPD to HDMI chip */
> > -	gpio_request(EXYNOS4_GPX3(7), "hpd-plug");
> > -
> > -	gpio_direction_input(EXYNOS4_GPX3(7));
> > +	gpio_request_one(EXYNOS4_GPX3(7), GPIOF_IN, "hpd-plug");
> >  	s3c_gpio_cfgpin(EXYNOS4_GPX3(7), S3C_GPIO_SFN(0x3));
> >  	s3c_gpio_setpull(EXYNOS4_GPX3(7), S3C_GPIO_PULL_NONE);
> >
> > --
> > 1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux