Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1308383

Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings

From Wolfram Sang <wsa@the-dreams.de>
Newsgroups linux.kernel
Subject Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings
Date 2016-01-13 14:10 +0100
Message-ID <qQtlw-9v-19@gated-at.bofh.it> (permalink)
References <qNWN3-1SF-1@gated-at.bofh.it> <qNWN4-1SF-23@gated-at.bofh.it> <qOm4O-2lt-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

Hi Jan,

> > +Required properties:
> > +- compatible: "i2c-demux-pinctrl"
> > +- i2c-parent: List of phandles of I2C masters available for selection. The first
> > +	      one will be used as default.
> > +- i2c-bus-name: The name of this bus. Also needed as pinctrl-name for the I2C
> > +		parents.
> [...]
> > +	i2chdmi: i2c@8 {
> > +		compatible = "i2c-demux-pinctrl";
> > +		i2c-parent = <&gpioi2c>, <&iic2>, <&i2c2>;
> > +		i2c-bus-name = "i2c-hdmi";
> > +		#address-cells = <1>;
> > +		#size-cells = <0>;
> [...]
> > +	gpioi2c: i2c@9 {
> > +		#address-cells = <1>;
> > +		#size-cells = <0>;
> > +		compatible = "i2c-gpio";
> [...]
> > +&i2c2	{
> > +	pinctrl-0 = <&i2c2_pins>;
> > +	pinctrl-names = "i2c-hdmi";
> > +
> > +	clock-frequency = <100000>;
> > +};
> [...]
> > +&iic2	{
> > +	pinctrl-0 = <&iic2_pins>;
> > +	pinctrl-names = "i2c-hdmi";
> > +
> > +	clock-frequency = <100000>;
> > +};
> [...]
> 
> It seems that the demux-pinctrl driver reconfigures the pinctrl settings
> for the parent devices. I would have expected to have alternative
> pinctrl state on the demux node support switching the same external pins
> between the different controllers. Wouldn't it be possible to have
> pinctrl conflicts between &i2c2_pins and &iic2_pins otherwise?

I don't think so. Before i2c2 is enabled, iic2 gets disabled (status =
"disabled" via OF_DYNAMIC) and thus the pins get free. Doing it this
way, you could even have something like this:

	pinctrl-0 = <&iic2_pins>, <&iic2_c_pins>;
	pinctrl-names = "i2c-hdmi", "i2c-sensors";

which allows you to demux this controller to this or that bus. I haven't
tested this, though.

   Wolfram

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[RFC v2 0/4] i2c/of: switch I2C IP cores at runtime via OF_DYNAMIC Wolfram Sang <wsa@the-dreams.de> - 2016-01-06 15:00 +0100
  [RFC v2 1/4] of: make of_mutex public Wolfram Sang <wsa@the-dreams.de> - 2016-01-06 15:00 +0100
    Re: [RFC v2 1/4] of: make of_mutex public Geert Uytterhoeven <geert@linux-m68k.org> - 2016-01-06 15:30 +0100
  [RFC v2 3/4] i2c: mux: demux-pinctrl: add driver Wolfram Sang <wsa@the-dreams.de> - 2016-01-06 15:00 +0100
    Re: [RFC v2 3/4] i2c: mux: demux-pinctrl: add driver Geert Uytterhoeven <geert@linux-m68k.org> - 2016-01-06 15:30 +0100
      Re: [RFC v2 3/4] i2c: mux: demux-pinctrl: add driver Wolfram Sang <wsa@the-dreams.de> - 2016-01-13 14:00 +0100
        Re: [RFC v2 3/4] i2c: mux: demux-pinctrl: add driver Geert Uytterhoeven <geert@linux-m68k.org> - 2016-01-13 17:20 +0100
    Re: [RFC v2 3/4] i2c: mux: demux-pinctrl: add driver Rob Herring <robh@kernel.org> - 2016-01-06 18:10 +0100
      Re: [RFC v2 3/4] i2c: mux: demux-pinctrl: add driver Wolfram Sang <wsa@the-dreams.de> - 2016-01-13 14:00 +0100
  [RFC v2 4/4] ARM: shmobile: r8a7790: rework dts to use i2c demuxer Wolfram Sang <wsa@the-dreams.de> - 2016-01-06 15:00 +0100
  [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings Wolfram Sang <wsa@the-dreams.de> - 2016-01-06 15:00 +0100
    Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings Geert Uytterhoeven <geert@linux-m68k.org> - 2016-01-06 15:40 +0100
      Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings Wolfram Sang <wsa@the-dreams.de> - 2016-01-13 14:00 +0100
        Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-01-13 15:10 +0100
    Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings Jan Lübbe <jlu@pengutronix.de> - 2016-01-07 18:00 +0100
      Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings Wolfram Sang <wsa@the-dreams.de> - 2016-01-13 14:10 +0100
    Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings Rob Herring <robh@kernel.org> - 2016-01-11 04:00 +0100
      Re: [RFC v2 2/4] dt-bindings: i2c: mux: demux-pinctrl: add bindings Geert Uytterhoeven <geert@linux-m68k.org> - 2016-01-11 09:10 +0100

csiph-web