[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1484827499.2133.228.camel@linux.intel.com>
Date: Thu, 19 Jan 2017 14:04:59 +0200
From: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
To: Mika Westerberg <mika.westerberg@...ux.intel.com>,
Linus Walleij <linus.walleij@...aro.org>
Cc: Alexandre Courbot <gnurou@...il.com>, linux-gpio@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/3] pinctrl: Widen the generic pinconf argument from 16
to 24 bits
On Thu, 2017-01-19 at 12:48 +0300, Mika Westerberg wrote:
> The current pinconf packed format allows only 16-bit argument limiting
> the maximum value 65535. For most types this is enough. However,
> debounce time can be in range of hundreths of milliseconds in case of
> mechanical switches so we cannot represent the worst case using the
> current format.
>
> static inline enum pin_config_param pinconf_to_config_param(unsigned
> long config)
> {
> - return (enum pin_config_param) (config & 0xffffUL);
> + return (enum pin_config_param) (config & 0xffUL);
> }
>
> -static inline u16 pinconf_to_config_argument(unsigned long config)
> +static inline u32 pinconf_to_config_argument(unsigned long config)
> {
> - return (enum pin_config_param) ((config >> 16) & 0xffffUL);
> + return (enum pin_config_param) ((config >> 8) & 0xffffffUL);
Looks like copy'n'paste error in the initial code, I mean casting should
go as (u16) -> (u32).
Perhaps, in case you submit new version, do the first patch with a fix
of this one. Then conversion would look more logical.
--
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
Intel Finland Oy
Powered by blists - more mailing lists