Thread (2 messages) 2 messages, 2 authors, 2012-03-29

[RFC] pinctrl: Replace list_groups() with get_groups_count()

From: Stephen Warren <hidden>
Date: 2012-03-29 17:26:48

On 03/29/2012 10:34 AM, viresh kumar wrote:
Most of the SoC drivers implement list_*() routines for pinctrl, pinmux,
pinconf, etc, And these routines continue returning zero until the second
argument is greater than total count of available groups, function, etc.

I will take struct pinctrl_ops as an example to elaborate my concern/doubts.

There are few concerns here:
- list_groups() is called multiple times. If the purpose of this routine is to
  only check the number of groups available, then why not remove it and create
  another routine which returns number of total groups. Over which, we can run a
  simple loop.
- All client drivers have checks in their ops routines to check the range of
  groups, which is just not required if we pass the correct number to pinctrl
  framework. Because these ops are going to be called via pinctrl, and we can
  trust on it and place these range checkers there only to make SoC drivers
  simple.

I just wanted to have different views about my concerns/idea before i start
coding. If this idea looks fine, i would do this change across pinmux framework.
The concept is fine by me.

I vaguely recall raising the same issue before, and Linus saying he
wanted to be consistent with similar list_*() functions in other
subsystems, but personally I'd prefer to evaluate this aspect of the
pinctrl subsystem on its own.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help