Re: [RESEND][PATCH] gpio/samsung: Fix incorrect gpio pull up/down callback for Exynos4

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

 



Hi Grant,

On 10 October 2011 04:40, Grant Likely <grant.likely@xxxxxxxxxxxx> wrote:
> On Sun, Oct 9, 2011 at 12:35 PM, Thomas Abraham
> <thomas.abraham@xxxxxxxxxx> wrote:
>> Some of the gpio chips of exynos4 are assigned a default gpio config without
>> the exynos4 specific pull up/down callbacks which resulted in incorrect
>> setting of pull up/down configuration.
>>
>> Fix this by adding two new exynos4 specific entries in the array of default
>> configs with set_pull and get_pull callbacks set to exynos4 specific callbacks
>> The new default gpio configs can then be used for exynos4 gpio chips.
>>
>> Signed-off-by: Thomas Abraham <thomas.abraham@xxxxxxxxxx>
>
> Hi Thomas,
>
> Does this need to be merged as a bug fix for v3.1, or is it for v3.2?
> Does it have any dependencies, or can it go in via the gpio/next tree?


This patch is a bug fix for the new consolidated samsung gpio driver
that will be merged in v3.2 via Kukjin's tree. The new consolidated
samsung gpio driver is merged only in Kukjin's for-next and not
available in gpio/next.

Thanks,
Thomas.

>
> g.
>
>> ---
>>  drivers/gpio/gpio-samsung.c |   31 +++++++++++++++++++------------
>>  1 files changed, 19 insertions(+), 12 deletions(-)
>>
>> diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c
>> index 037d3bb..b33cad3 100644
>> --- a/drivers/gpio/gpio-samsung.c
>> +++ b/drivers/gpio/gpio-samsung.c
>> @@ -486,7 +486,14 @@ static struct samsung_gpio_cfg samsung_gpio_cfgs[] = {
>>        }, {
>>                .set_config     = samsung_gpio_setcfg_2bit,
>>                .get_config     = samsung_gpio_getcfg_2bit,
>> -       },
>> +       }, {
>> +               .set_pull       = exynos4_gpio_setpull,
>> +               .get_pull       = exynos4_gpio_getpull,
>> +       }, {
>> +               .cfg_eint       = 0x3,
>> +               .set_pull       = exynos4_gpio_setpull,
>> +               .get_pull       = exynos4_gpio_getpull,
>> +       }
>>  };
>>
>>  /*
>> @@ -2253,49 +2260,49 @@ static struct samsung_gpio_chip exynos4_gpios_2[] = {
>>                        .label  = "GPL2",
>>                },
>>        }, {
>> -               .config = &samsung_gpio_cfgs[0],
>> +               .config = &samsung_gpio_cfgs[8],
>>                .chip   = {
>>                        .base   = EXYNOS4_GPY0(0),
>>                        .ngpio  = EXYNOS4_GPIO_Y0_NR,
>>                        .label  = "GPY0",
>>                },
>>        }, {
>> -               .config = &samsung_gpio_cfgs[0],
>> +               .config = &samsung_gpio_cfgs[8],
>>                .chip   = {
>>                        .base   = EXYNOS4_GPY1(0),
>>                        .ngpio  = EXYNOS4_GPIO_Y1_NR,
>>                        .label  = "GPY1",
>>                },
>>        }, {
>> -               .config = &samsung_gpio_cfgs[0],
>> +               .config = &samsung_gpio_cfgs[8],
>>                .chip   = {
>>                        .base   = EXYNOS4_GPY2(0),
>>                        .ngpio  = EXYNOS4_GPIO_Y2_NR,
>>                        .label  = "GPY2",
>>                },
>>        }, {
>> -               .config = &samsung_gpio_cfgs[0],
>> +               .config = &samsung_gpio_cfgs[8],
>>                .chip   = {
>>                        .base   = EXYNOS4_GPY3(0),
>>                        .ngpio  = EXYNOS4_GPIO_Y3_NR,
>>                        .label  = "GPY3",
>>                },
>>        }, {
>> -               .config = &samsung_gpio_cfgs[0],
>> +               .config = &samsung_gpio_cfgs[8],
>>                .chip   = {
>>                        .base   = EXYNOS4_GPY4(0),
>>                        .ngpio  = EXYNOS4_GPIO_Y4_NR,
>>                        .label  = "GPY4",
>>                },
>>        }, {
>> -               .config = &samsung_gpio_cfgs[0],
>> +               .config = &samsung_gpio_cfgs[8],
>>                .chip   = {
>>                        .base   = EXYNOS4_GPY5(0),
>>                        .ngpio  = EXYNOS4_GPIO_Y5_NR,
>>                        .label  = "GPY5",
>>                },
>>        }, {
>> -               .config = &samsung_gpio_cfgs[0],
>> +               .config = &samsung_gpio_cfgs[8],
>>                .chip   = {
>>                        .base   = EXYNOS4_GPY6(0),
>>                        .ngpio  = EXYNOS4_GPIO_Y6_NR,
>> @@ -2303,7 +2310,7 @@ static struct samsung_gpio_chip exynos4_gpios_2[] = {
>>                },
>>        }, {
>>                .base   = (S5P_VA_GPIO2 + 0xC00),
>> -               .config = &samsung_gpio_cfgs[3],
>> +               .config = &samsung_gpio_cfgs[9],
>>                .irq_base = IRQ_EINT(0),
>>                .chip   = {
>>                        .base   = EXYNOS4_GPX0(0),
>> @@ -2313,7 +2320,7 @@ static struct samsung_gpio_chip exynos4_gpios_2[] = {
>>                },
>>        }, {
>>                .base   = (S5P_VA_GPIO2 + 0xC20),
>> -               .config = &samsung_gpio_cfgs[3],
>> +               .config = &samsung_gpio_cfgs[9],
>>                .irq_base = IRQ_EINT(8),
>>                .chip   = {
>>                        .base   = EXYNOS4_GPX1(0),
>> @@ -2323,7 +2330,7 @@ static struct samsung_gpio_chip exynos4_gpios_2[] = {
>>                },
>>        }, {
>>                .base   = (S5P_VA_GPIO2 + 0xC40),
>> -               .config = &samsung_gpio_cfgs[3],
>> +               .config = &samsung_gpio_cfgs[9],
>>                .irq_base = IRQ_EINT(16),
>>                .chip   = {
>>                        .base   = EXYNOS4_GPX2(0),
>> @@ -2333,7 +2340,7 @@ static struct samsung_gpio_chip exynos4_gpios_2[] = {
>>                },
>>        }, {
>>                .base   = (S5P_VA_GPIO2 + 0xC60),
>> -               .config = &samsung_gpio_cfgs[3],
>> +               .config = &samsung_gpio_cfgs[9],
>>                .irq_base = IRQ_EINT(24),
>>                .chip   = {
>>                        .base   = EXYNOS4_GPX3(0),
>> --
>> 1.6.6.rc2
>>
>>
>
>
>
> --
> Grant Likely, B.Sc., P.Eng.
> Secret Lab Technologies Ltd.
>
--
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