Message ID | 20160916130935.21292-3-ulrich.hecht+renesas@gmail.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Simon Horman |
Headers | show |
Hi Ulrich, Thank you for the patch. On Friday 16 Sep 2016 15:09:34 Ulrich Hecht wrote: > Identical to the setup on Lager. > > Signed-off-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com> > --- > arch/arm/boot/dts/r8a7793-gose.dts | 41 +++++++++++++++++++++++++++++++++++ > 1 file changed, 41 insertions(+) > > diff --git a/arch/arm/boot/dts/r8a7793-gose.dts > b/arch/arm/boot/dts/r8a7793-gose.dts index 90af186..e22d63c 100644 > --- a/arch/arm/boot/dts/r8a7793-gose.dts > +++ b/arch/arm/boot/dts/r8a7793-gose.dts > @@ -374,6 +374,11 @@ > groups = "audio_clk_a"; > function = "audio_clk"; > }; > + > + vin0_pins: vin0 { > + groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk"; > + function = "vin0"; > + }; > }; > > ðer { > @@ -531,6 +536,21 @@ > }; > }; > > + hdmi-in@4c { > + compatible = "adi,adv7612"; > + reg = <0x4c>; > + interrupt-parent = <&gpio1>; > + interrupts = <20 IRQ_TYPE_LEVEL_LOW>; Isn't the interrupt signal connected to GP4_2 ? > + remote = <&vin0>; What is this for ? > + default-input = <0>; > + > + port { > + adv7612: endpoint { > + remote-endpoint = <&vin0ep>; > + }; > + }; The ADV7612 has three ports. Ports 0 and 1 correspond to the HDMI inputs, and port 2 to the digital output. You can leave port 1 out as it's not used on the board, but you should specify both ports 0 and 2, and add an HDMI connector DT node connected to port 0 of the ADV7612. > + }; > + > eeprom@50 { > compatible = "renesas,r1ex24002", "atmel,24c02"; > reg = <0x50>; > @@ -558,3 +578,24 @@ > &ssi1 { > shared-pin; > }; > + > +/* HDMI video input */ > +&vin0 { > + status = "okay"; > + pinctrl-0 = <&vin0_pins>; > + pinctrl-names = "default"; > + > + port { > + #address-cells = <1>; > + #size-cells = <0>; > + > + vin0ep: endpoint { > + remote-endpoint = <&adv7612>; > + bus-width = <24>; > + hsync-active = <0>; > + vsync-active = <0>; > + pclk-sample = <1>; > + data-active = <1>; > + }; > + }; > +};
On Fri, Sep 30, 2016 at 2:40 PM, Laurent Pinchart <laurent.pinchart@ideasonboard.com> wrote: >> --- a/arch/arm/boot/dts/r8a7793-gose.dts >> +++ b/arch/arm/boot/dts/r8a7793-gose.dts >> @@ -374,6 +374,11 @@ >> groups = "audio_clk_a"; >> function = "audio_clk"; >> }; >> + >> + vin0_pins: vin0 { >> + groups = "vin0_data24", "vin0_sync", "vin0_clkenb", > "vin0_clk"; >> + function = "vin0"; >> + }; >> }; >> >> ðer { >> @@ -531,6 +536,21 @@ >> }; >> }; >> >> + hdmi-in@4c { >> + compatible = "adi,adv7612"; >> + reg = <0x4c>; >> + interrupt-parent = <&gpio1>; >> + interrupts = <20 IRQ_TYPE_LEVEL_LOW>; > > Isn't the interrupt signal connected to GP4_2 ? No idea about Gose, but on Koelsch it is (hence koelsch DTS is wrong??) Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
On Friday 30 Sep 2016 15:00:59 Geert Uytterhoeven wrote: > On Fri, Sep 30, 2016 at 2:40 PM, Laurent Pinchart wrote: > >> --- a/arch/arm/boot/dts/r8a7793-gose.dts > >> +++ b/arch/arm/boot/dts/r8a7793-gose.dts > >> @@ -374,6 +374,11 @@ > >> groups = "audio_clk_a"; > >> function = "audio_clk"; > >> }; > >> + > >> + vin0_pins: vin0 { > >> + groups = "vin0_data24", "vin0_sync", "vin0_clkenb", > >> "vin0_clk"; > >> + function = "vin0"; > >> + }; > >> }; > >> > >> ðer { > >> @@ -531,6 +536,21 @@ > >> }; > >> }; > >> > >> + hdmi-in@4c { > >> + compatible = "adi,adv7612"; > >> + reg = <0x4c>; > >> + interrupt-parent = <&gpio1>; > >> + interrupts = <20 IRQ_TYPE_LEVEL_LOW>; > > > > Isn't the interrupt signal connected to GP4_2 ? > > No idea about Gose, but on Koelsch it is (hence koelsch DTS is wrong??) I believe so. I don't have a Koelsch board anymore so I can't test that. Niklas, do you have a Koelsch on which you could confirm the IRQ number ?
On 2016-09-30 16:32:52 +0300, Laurent Pinchart wrote: > On Friday 30 Sep 2016 15:00:59 Geert Uytterhoeven wrote: > > On Fri, Sep 30, 2016 at 2:40 PM, Laurent Pinchart wrote: > > >> --- a/arch/arm/boot/dts/r8a7793-gose.dts > > >> +++ b/arch/arm/boot/dts/r8a7793-gose.dts > > >> @@ -374,6 +374,11 @@ > > >> groups = "audio_clk_a"; > > >> function = "audio_clk"; > > >> }; > > >> + > > >> + vin0_pins: vin0 { > > >> + groups = "vin0_data24", "vin0_sync", "vin0_clkenb", > > >> "vin0_clk"; > > >> + function = "vin0"; > > >> + }; > > >> }; > > >> > > >> ðer { > > >> @@ -531,6 +536,21 @@ > > >> }; > > >> }; > > >> > > >> + hdmi-in@4c { > > >> + compatible = "adi,adv7612"; > > >> + reg = <0x4c>; > > >> + interrupt-parent = <&gpio1>; > > >> + interrupts = <20 IRQ_TYPE_LEVEL_LOW>; > > > > > > Isn't the interrupt signal connected to GP4_2 ? > > > > No idea about Gose, but on Koelsch it is (hence koelsch DTS is wrong??) > > I believe so. I don't have a Koelsch board anymore so I can't test that. > Niklas, do you have a Koelsch on which you could confirm the IRQ number ? I have done the best I can to prove the IRQ, it proved to be a bit tricky or maybe I'm doing it the wrong way. I hooked up my oscilloscope to EXIO Connector D pin 7, which according to the schematics should be GP4_2 and attached to a pull-up at 3.3v. I can observe the pull-up and if I control the pin using the /sys/class/gpio interface I do indeed control GP4_2, So the schematic is correct at least this far. The trouble I have is that the adv7612 driver do not currently consume the interrupt so I can't see multiple field interrupts by observing the pin. I do however see what I believe is the first field interrupt, if I observe the pin just as I turn on my HDMI video source the pin go from 1 -> 0 but is never reset and a reset of the entire board is needed if you wish to see it again. If I on the other hand observe pin GP1_20 on EXIO Connector A pin 66 I notice nothing on the oscilloscope from that it's set to 3.3V at power on, no mater how much HDMI input i run. In conclusion, yes I do believe the DTS is wrong and that GP4_2 is the correct interrupt signal on Koelsch. This adds up with the schematics and my rudimentary measurements.
Hi Niklas, On Saturday 01 Oct 2016 11:19:31 Niklas Söderlund wrote: > On 2016-09-30 16:32:52 +0300, Laurent Pinchart wrote: > > On Friday 30 Sep 2016 15:00:59 Geert Uytterhoeven wrote: > >> On Fri, Sep 30, 2016 at 2:40 PM, Laurent Pinchart wrote: > >>>> --- a/arch/arm/boot/dts/r8a7793-gose.dts > >>>> +++ b/arch/arm/boot/dts/r8a7793-gose.dts [snip] > >>>> @@ -531,6 +536,21 @@ > >>>> }; > >>>> }; > >>>> > >>>> + hdmi-in@4c { > >>>> + compatible = "adi,adv7612"; > >>>> + reg = <0x4c>; > >>>> + interrupt-parent = <&gpio1>; > >>>> + interrupts = <20 IRQ_TYPE_LEVEL_LOW>; > >>> > >>> Isn't the interrupt signal connected to GP4_2 ? > >> > >> No idea about Gose, but on Koelsch it is (hence koelsch DTS is wrong??) > > > > I believe so. I don't have a Koelsch board anymore so I can't test that. > > Niklas, do you have a Koelsch on which you could confirm the IRQ number ? > > I have done the best I can to prove the IRQ, it proved to be a bit > tricky or maybe I'm doing it the wrong way. > > I hooked up my oscilloscope to EXIO Connector D pin 7, which according > to the schematics should be GP4_2 and attached to a pull-up at 3.3v. I > can observe the pull-up and if I control the pin using the > /sys/class/gpio interface I do indeed control GP4_2, So the schematic is > correct at least this far. > > The trouble I have is that the adv7612 driver do not currently consume > the interrupt so I can't see multiple field interrupts by observing the > pin. I do however see what I believe is the first field interrupt, if I > observe the pin just as I turn on my HDMI video source the pin go from 1 > -> 0 but is never reset and a reset of the entire board is needed if you > wish to see it again. > > If I on the other hand observe pin GP1_20 on EXIO Connector A pin 66 I > notice nothing on the oscilloscope from that it's set to 3.3V at power > on, no mater how much HDMI input i run. > > In conclusion, yes I do believe the DTS is wrong and that GP4_2 is the > correct interrupt signal on Koelsch. This adds up with the schematics > and my rudimentary measurements. Thanks a lot for testing. Ulrich, could you please fix this patch accordingly ?
diff --git a/arch/arm/boot/dts/r8a7793-gose.dts b/arch/arm/boot/dts/r8a7793-gose.dts index 90af186..e22d63c 100644 --- a/arch/arm/boot/dts/r8a7793-gose.dts +++ b/arch/arm/boot/dts/r8a7793-gose.dts @@ -374,6 +374,11 @@ groups = "audio_clk_a"; function = "audio_clk"; }; + + vin0_pins: vin0 { + groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk"; + function = "vin0"; + }; }; ðer { @@ -531,6 +536,21 @@ }; }; + hdmi-in@4c { + compatible = "adi,adv7612"; + reg = <0x4c>; + interrupt-parent = <&gpio1>; + interrupts = <20 IRQ_TYPE_LEVEL_LOW>; + remote = <&vin0>; + default-input = <0>; + + port { + adv7612: endpoint { + remote-endpoint = <&vin0ep>; + }; + }; + }; + eeprom@50 { compatible = "renesas,r1ex24002", "atmel,24c02"; reg = <0x50>; @@ -558,3 +578,24 @@ &ssi1 { shared-pin; }; + +/* HDMI video input */ +&vin0 { + status = "okay"; + pinctrl-0 = <&vin0_pins>; + pinctrl-names = "default"; + + port { + #address-cells = <1>; + #size-cells = <0>; + + vin0ep: endpoint { + remote-endpoint = <&adv7612>; + bus-width = <24>; + hsync-active = <0>; + vsync-active = <0>; + pclk-sample = <1>; + data-active = <1>; + }; + }; +};
Identical to the setup on Lager. Signed-off-by: Ulrich Hecht <ulrich.hecht+renesas@gmail.com> --- arch/arm/boot/dts/r8a7793-gose.dts | 41 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+)