[PATCH 1/1] ARM: EXYNOS: Update CONFIG_ARCH_NR_GPIO for Exynos

Sachin Kamat sachin.kamat at linaro.org
Mon Jul 22 23:11:32 EDT 2013


On 23 July 2013 01:06, Sylwester Nawrocki <sylvester.nawrocki at gmail.com> wrote:
> On 07/22/2013 07:21 PM, Tomasz Figa wrote:
>>
>> On Monday 22 of July 2013 12:37:52 Kukjin Kim wrote:
>>>
>>> Sachin Kamat wrote:
>>>>
>>>> On 22 July 2013 07:18, Kukjin Kim<kgene.kim at samsung.com>  wrote:
>>>>>
>>>>> Sachin Kamat wrote:
>>>>>>
>>>>>> With the recent cleanup in Exynos platform code notably commits
>>>>>> 17859bec ("ARM: EXYNOS: Do not select legacy Kconfig symbols any
>>>>>> more") and b9222210 ("ARM: EXYNOS: Remove mach/gpio.h"), the
>>>>>> definition
>>>>>> of ARCH_NR_GPIOS got removed. This started causing problems on SoCs
>>>>
>>>>
>>>> like
>>>>
>>>>>> Exynos4412 which have more (285) than the default number of GPIOs
>>>
>>>
>>> (255).
>>>
>>>>>> Thus define this number in Kconfig file. Without this patch we get
>>>>>> the
>>>>>> following errors during boot:
>>>>>>
>>>>>> gpiochip_add: gpios 251..258 (gpv0) failed to register
>>>>>> samsung-pinctrl 106e0000.pinctrl: failed to register gpio_chip gpv0,
>>>>>> error code: -22
>>>>>> samsung-pinctrl: probe of 106e0000.pinctrl failed with error -22
>>>>>>
>>>>>> Signed-off-by: Sachin Kamat<sachin.kamat at linaro.org>
>>>>>> Cc: Tomasz Figa<t.figa at samsung.com>
>>>>>> ---
>>>>>> Based on Kukjin's for-next tree.
>>>>>> ---
>>>>>>
>>>>>>   arch/arm/Kconfig |    1 +
>>>>>>   1 file changed, 1 insertion(+)
>>>>>>
>>>>>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>>>>>> index ddf2667..380a53b 100644
>>>>>> --- a/arch/arm/Kconfig
>>>>>> +++ b/arch/arm/Kconfig
>>>>>> @@ -1578,6 +1578,7 @@ config ARCH_NR_GPIO
>>>>>>
>>>>>>        default 512 if SOC_OMAP5
>>>>>>        default 392 if ARCH_U8500
>>>>>>        default 352 if ARCH_VT8500
>>>>>>
>>>>>> +     default 288 if ARCH_EXYNOS
>>>>>>
>>>>>>        default 288 if ARCH_SUNXI
>>>>>>        default 264 if MACH_H4700
>>>>>>        default 0
>>>>>>
>>>>>> --
>>>>>> 1.7.9.5
>>>>>
>>>>>
>>>>> Hmm, BTW, I'm wondering why it is 288 not 285 or other specific
>>>
>>>
>>> number...
>>>
>>>> I wasn't really sure if we can have any number there. I chose the
>>>> closest one (288) which was already used by other platform.
>>>> If there is no problem to use 285 itself then I can resend with that
>>>> number. Please let me know.
>>>
>>>
>>> If there is no reason, please don't use bigger value than necessary one.
>>
>>
>> Hmm, what about some GPIO expanders that would require bigger GPIO address
>> space? I would reserve some space just in case, i.e. define this value to
>> be
>> the highest number of GPIOs on all Exynos SoCs + some extra, like 32 or
>> 64.
>
>
> That sounds like a good idea. IIRC I once had to increase ARCH_NR_GPIO to
> make the wm8994 GPIO controller working. The wm8994 driver also handles
> WM1811 audio codec that some Exynos development boards are shipped with.

Looks like a valid point.

Kukjin,
Let me know your opinion about this before I respin the patch.

-- 
With warm regards,
Sachin



More information about the linux-arm-kernel mailing list