Hello Stephen,

El 14/02/14 03:16, Stephen Warren escribió:
clk-fixed-rate currently names clocks according to a node's name without
the unit address. When faced with the legal and technically correct DT
structure below, this causes rgistration attempts for 3 clocks with the
same name, 2 of which fail.

        clocks {
                compatible = "simple-bus";
                #address-cells = <1>;
                #size-cells = <0>;

                clk_mmc: clock@0 {
                        compatible = "fixed-clock";
                        reg = <0>;
...
                clk_i2c: clock@1 {
                        compatible = "fixed-clock";
                        reg = <1>;
...
                clk_spi: clock@2 {
                        compatible = "fixed-clock";
                        reg = <2>;
...

Solve this by naming the clocks after the full node name rather than the
short version (e.g. /clocks/clock@0).

An alternative that doesn't require any change in the driver would be to use the optional but recommended clock-output-names property from the common clock binding.

Your DT would then look something like the following

> ...
>            clk_mmc: clk@0 {
>                    compatible = "fixed-clock";
>                    clock-output-names = "mmc";
> ...
>            clk_i2c: clk@1 {
>                    compatible = "fixed-clock";
>                    clock-output-names = "i2c";
> ...
>            clk_spi: clk@2 {
>                    compatible = "fixed-clock";
>                    clock-output-names = "spi";
> ...

Cheers,

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

Reply via email to