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