[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3665a5ad-ff6d-97a1-ca31-971973a7167f@gmail.com>
Date: Mon, 15 Apr 2019 21:54:57 +0200
From: Alexander Sverdlin <alexander.sverdlin@...il.com>
To: Arnd Bergmann <arnd@...db.de>,
Hartley Sweeten <HartleyS@...ionengravers.com>
Cc: Linus Walleij <linus.walleij@...aro.org>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
Stefan Agner <stefan@...er.ch>,
Enric Balletbo i Serra <enric.balletbo@...labora.com>,
Guenter Roeck <groeck@...omium.org>,
"linux-input@...r.kernel.org" <linux-input@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 2/4] ARM: ep93xx: keypad: stop using mach/platform.h
Hi!
On 15/04/2019 21:47, Arnd Bergmann wrote:
>>> We can communicate the clock rate using platform data rather than setting a
>>> flag to use a particular value in the driver, which is cleaner and avoids the dependency.
>>>
>>> No platform in the kernel currently defines the ep93xx keypad device structure, so this
>>> is a rather pointless excercise. Any out of tree users are probably dead now, but if not,
>>> they have to change their platform code to match the new platform_data structure.
>> <snip>
>>
>>> diff --git a/include/linux/platform_data/keypad-ep93xx.h b/include/linux/platform_data/keypad-ep93xx.h
>>> index 0e36818e3680..3054fced8509 100644
>>> --- a/include/linux/platform_data/keypad-ep93xx.h
>>> +++ b/include/linux/platform_data/keypad-ep93xx.h
>>> @@ -9,8 +9,7 @@ struct matrix_keymap_data;
>>> #define EP93XX_KEYPAD_DIAG_MODE (1<<1) /* diagnostic mode */
>>> #define EP93XX_KEYPAD_BACK_DRIVE (1<<2) /* back driving mode */
>>> #define EP93XX_KEYPAD_TEST_MODE (1<<3) /* scan only column 0 */
>>> -#define EP93XX_KEYPAD_KDIV (1<<4) /* 1/4 clock or 1/16 clock */
>>> -#define EP93XX_KEYPAD_AUTOREPEAT (1<<5) /* enable key autorepeat */
>>> +#define EP93XX_KEYPAD_AUTOREPEAT (1<<4) /* enable key autorepeat */
>> You have re-defined the keypad register bits here.
>>
>> The KDIV bit changes the clock rate. The AUTOREPEAT bit enables key autorepeat.
> As far as I can tell, they are not register bits, just software flags
> for communicating between a board file and the driver, so I
> assumed I could freely reorganize them.
>
> Did I miss something?
They are indeed only software flags (just checked datasheet), so you are only changing
platform data format. But as I do not know any keypad user in person, I'd rely on
Hartley's opinion in this case (if it's a good idea to change platform data or not).
--
Alex.
Powered by blists - more mailing lists