Re: [RFC/PATCH] pinctrl: sh-pfc: Accept standard function, pins and groups properties

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hi Linus,

I'd like to move forward with this patch, could you please comment on my reply 
?

On Wednesday 04 February 2015 11:53:34 Laurent Pinchart wrote:
> On Wednesday 04 February 2015 09:40:48 Linus Walleij wrote:
> > On Tue, Jan 27, 2015 at 9:31 PM, Laurent Pinchart wrote:
> >> The "function", "pins" and "groups" pinmux and pinctrl properties have
> >> been standardized. Support them in addition to the custom "renesas,*"
> >> properties. New-style and old-style properties can't be mixed in DT.
> >> 
> >> Signed-off-by: Laurent Pinchart
> >> <laurent.pinchart+renesas@xxxxxxxxxxxxxxxx>
> > 
> > (...)
> > 
> >>> Would be nice if the PFC driver could be augmented to also accept the
> >>> now standard bindings "groups" and "function" simply :) we're adding
> >>> parse functions for those to the core.
> >> 
> >> Something like this ?
> > 
> > Yes :)
> > 
> >> Please note two differences between the Renesas PFC bindings and the
> >> standard bindings:
> >> 
> >> - The standard bindings state that a pinctrl node must contain either a
> >>   "pins" property or a "groups" property, while the Renesas bindings
> >>   allows for both to coexist in the same node.
> > 
> > Sascha also says this makes sense for him so I guess I'm getting a bit
> > soft on the issue.
> > 
> >> - The standard bindings don't allow a pinmux node to contain a "pins"
> >>   property, while the Renesas bindings do.
> > 
> > Does that mean "pins" affect the muxing or that "pins" is about some
> > per-pin config shoveled into the same node?
> > 
> > The former is not OK, the latter is.
> 
> It means "pins" affect the muxing. The sh-pfc driver supports both muxing
> groups and muxing individual pins.
> 
> >>                 mmcif_pins: mmcif {
> >>                 
> >>                         mux {
> >> 
> >> -                               renesas,groups = "mmc0_data8_0",
> >> "mmc0_ctrl_0";
> >> -                               renesas,function = "mmc0";
> >> +                               groups = "mmc0_data8_0", "mmc0_ctrl_0";
> >> +                               function = "mmc0";
> >> 
> >>                         };
> > 
> > So that looks just very nice.
> > 
> >>                         cfg {
> >> 
> >> -                               renesas,groups = "mmc0_data8_0";
> >> -                               renesas,pins = "PORT279";
> >> +                               groups = "mmc0_data8_0";
> >> +                               pins = "PORT279";
> >> 
> >>                                 bias-pull-up;
> > 
> > And here I can't see the use of "groups" in this node since it
> > doesn't match a function. It's a bit ambiguous what "groups"
> > mean when you run into it like this.
> 
> It means that the bias-pull-up configuration is applied to all pins of the
> "mmc0_data8_0" group, as well as to pin 279.

-- 
Regards,

Laurent Pinchart

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux