Thread (42 messages) 42 messages, 6 authors, 2014-11-27

[PATCH 4/7] pinctrl: zynq: Document DT binding

From: Linus Walleij <hidden>
Date: 2014-11-27 13:10:34
Also in: linux-sh, lkml

On Wed, Nov 12, 2014 at 7:53 PM, S?ren Brinkmann
[off-list ref] wrote:
On Tue, 2014-11-11 at 04:00PM +0100, Linus Walleij wrote:
quoted
I don't really like that you mix multiplexing and config in the
same node. I would prefer if the generic bindings say we have
muxing nodes and config nodes, and those are disparate.

Can't you just split this:

common-mux {
    groups = "uart1_10_grp";
    function = "uart1";
};

common-config {
    groups = "uart1_10_grp";
    slew-rate = <0>;
    io-standard = <1>;
};

That way we can identify nodes as mux nodes (have "function")
or config nodes (have "groups" or "pins" but not "function") which
I think makes things easier to read.
I think such separation is not required by the bindings currently and
the parser assumes everything can be present in any node.
The bindings say:

== Generic pin multiplexing node content ==

pin multiplexing nodes:

function                - the mux function to select
groups                  - the list of groups to select with this function

Example:

state_0_node_a {
        function = "uart0";
        groups = "u0rxtx", "u0rtscts";
};
state_1_node_a {
        function = "spi0";
        groups = "spi0pins";
};


== Generic pin configuration node content ==

(...)
Supported generic properties are:

pins                    - the list of pins that properties in the node
                          apply to (either this or "group" has to be
                          specified)
group                   - the group to apply the properties to, if the driver
                          supports configuration of whole groups rather than
                          individual pins (either this or "pins" has to be
                          specified)

It is not explicit that they have to be separate nodes but if needed
we can state that more clearly.
Can we add that requirement to the generic bindings without breaking
current users? I think it would make the implementation a little easier.
I think so.

Yours,
Linus Walleij
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help