Re: connecting a sn65dsi86 to displayport connector

2022-07-11 Thread Doug Anderson
Hi,

On Tue, Jul 5, 2022 at 8:10 AM Kieran Bingham
 wrote:
>
> Hi Rasmus,
>
> Quoting Rasmus Villemoes (2022-07-05 10:08:37)
> > Hi
> >
> > I have an imx8mp board with a sn65dsi86 and a (full-size) DisplayPort
> > connector, which I'm trying to get up and running.
> >
> > The display connector registers itself as a bridge; I do get
> > successfully to the end of display_connector_probe(). But
> > ti_sn_bridge_probe() only looks for a panel (passing NULL for the
> > drm_bridge** argument), so always fails with -EPROBE_DEFER.
> >
> > This text
> >
> >   At the moment, this binding only handles the eDP case. It is
> >   possible it will be extended in the future to handle the DP case.
> >   For DP, presumably a connector would be listed under the DP AUX
> >   bus instead of a panel.
> >
> > in dp-aux-bus.yaml suggests that what I'm trying to do is simply not
> > supported yet. But then I stumbled on commit 5a6bca1ff7a5 (arm64: dts:
> > renesas: falcon-cpu: Add DSI display output), which seems to do exactly
> > what I'm trying to, except with a mini dp connector. So I must be
> > missing something; maybe ti_sn_bridge_probe() failing is not actually a
> > problem and I could be looking at the wrong place.
> >
> > Snippets from my .dts; the dp connector is currently placed at top
> > level, i.e. not within an aux-bus node below the sn65dsi86:
> >
> > display_port0: connector {
> > compatible = "dp-connector";
> > label = "DP0";
> > type = "full-size";
> > dp-pwr-supply = <®_DP_PWR>;
> >
> > port {
> > dp_connector_in: endpoint {
> > remote-endpoint = <&sn65dsi86_out>;
> > };
> > };
> > };
> >
> > &i2c5 {
> > ...
> > eDP: bridge@2c {
> > compatible = "ti,sn65dsi86";
> > reg = <0x2c>;
> > pinctrl-names = "default";
> > pinctrl-0 = <&pinctrl_eDP>;
> >
> > interrupts-extended = <&gpio3 14 IRQ_TYPE_LEVEL_HIGH>;
> > enable-gpios = <&gpio3 9 GPIO_ACTIVE_HIGH>;
> >
> > vpll-supply = <&VDD_1V8>;
> > vccio-supply = <&VDD_1V8>;
> > vcca-supply = <®_1V2>;
> > vcc-supply = <®_1V2>;
> >
> > clocks = <&clk_38_4MHz>;
> > clock-names = "refclk";
> >
> > ports {
> > #address-cells = <1>;
> > #size-cells = <0>;
> >
> > port@0 {
> > reg = <0>;
> > sn65dsi86_in_a: endpoint {
> > remote-endpoint = <&mipi_dsi_out>;
> > };
> > };
> >
> > port@1 {
> > reg = <1>;
> > sn65dsi86_out: endpoint {
> > remote-endpoint = 
> > <&dp_connector_in>;
> > data-lanes = <3 2 1 0>;
> > };
> > };
> > };
> > };
> > };
> >
> > When I manually set the enable-gpio high in U-Boot, I can talk to the
> > device and e.g. read out the 8 device_id bytes which match what I expect.
> >
> > Any hints would be highly appreciated.
>
> If it helps, this is an area I've been working to support one of our
> boards. I have a branch at:
>
>  git://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git
>  kbingham/drm-misc/next/sn65dsi86/hpd
>
> But it's still a work in progress, and now needs rebasing to account for
> Sam's latest updates.
>
> I intend to resume this in a few weeks, but hopefully that branch may
> have some helpful pointers to get things progressing for you too.

In case you didn't notice, Dmitry's latest series is probably
interesting to you.

https://lore.kernel.org/r/20220711092117.360797-1-dmitry.barysh...@linaro.org/


-Doug


Re: connecting a sn65dsi86 to displayport connector

2022-07-07 Thread Kieran Bingham
Quoting Rasmus Villemoes (2022-07-07 10:46:24)
> On 05/07/2022 17.10, Kieran Bingham wrote:
> > Hi Rasmus,
> > 
> > Quoting Rasmus Villemoes (2022-07-05 10:08:37)
> >> Hi
> >>
> >> I have an imx8mp board with a sn65dsi86 and a (full-size) DisplayPort
> >> connector, which I'm trying to get up and running.
> >>
> [...]
> >> Any hints would be highly appreciated.
> > 
> > If it helps, this is an area I've been working to support one of our
> > boards. I have a branch at:
> > 
> >  git://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git
> >  kbingham/drm-misc/next/sn65dsi86/hpd
> > 
> > But it's still a work in progress, and now needs rebasing to account for
> > Sam's latest updates.
> > 
> > I intend to resume this in a few weeks, but hopefully that branch may
> > have some helpful pointers to get things progressing for you too.
> 
> Hi Kieran
> 
> Thanks for the pointer, I'll take a look. But just to be clear: Is the
> board you're referring to above the same as the one where the DT changes
> went in with commit 5a6bca1ff7 ? Or does that Falcon board work with the
> current state of mainline, and the patches in the above branch are to
> support some other board/use case?

Yes, the board I have is the Falcon V3U, as referred to in 5a6bca1ff7.
--
Kieran

> 
> Thanks,
> Rasmus


Re: connecting a sn65dsi86 to displayport connector

2022-07-07 Thread Rasmus Villemoes
On 05/07/2022 17.10, Kieran Bingham wrote:
> Hi Rasmus,
> 
> Quoting Rasmus Villemoes (2022-07-05 10:08:37)
>> Hi
>>
>> I have an imx8mp board with a sn65dsi86 and a (full-size) DisplayPort
>> connector, which I'm trying to get up and running.
>>
[...]
>> Any hints would be highly appreciated.
> 
> If it helps, this is an area I've been working to support one of our
> boards. I have a branch at:
> 
>  git://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git
>  kbingham/drm-misc/next/sn65dsi86/hpd
> 
> But it's still a work in progress, and now needs rebasing to account for
> Sam's latest updates.
> 
> I intend to resume this in a few weeks, but hopefully that branch may
> have some helpful pointers to get things progressing for you too.

Hi Kieran

Thanks for the pointer, I'll take a look. But just to be clear: Is the
board you're referring to above the same as the one where the DT changes
went in with commit 5a6bca1ff7 ? Or does that Falcon board work with the
current state of mainline, and the patches in the above branch are to
support some other board/use case?

Thanks,
Rasmus


Re: connecting a sn65dsi86 to displayport connector

2022-07-05 Thread Kieran Bingham
Hi Rasmus,

Quoting Rasmus Villemoes (2022-07-05 10:08:37)
> Hi
> 
> I have an imx8mp board with a sn65dsi86 and a (full-size) DisplayPort
> connector, which I'm trying to get up and running.
> 
> The display connector registers itself as a bridge; I do get
> successfully to the end of display_connector_probe(). But
> ti_sn_bridge_probe() only looks for a panel (passing NULL for the
> drm_bridge** argument), so always fails with -EPROBE_DEFER.
> 
> This text
> 
>   At the moment, this binding only handles the eDP case. It is
>   possible it will be extended in the future to handle the DP case.
>   For DP, presumably a connector would be listed under the DP AUX
>   bus instead of a panel.
> 
> in dp-aux-bus.yaml suggests that what I'm trying to do is simply not
> supported yet. But then I stumbled on commit 5a6bca1ff7a5 (arm64: dts:
> renesas: falcon-cpu: Add DSI display output), which seems to do exactly
> what I'm trying to, except with a mini dp connector. So I must be
> missing something; maybe ti_sn_bridge_probe() failing is not actually a
> problem and I could be looking at the wrong place.
> 
> Snippets from my .dts; the dp connector is currently placed at top
> level, i.e. not within an aux-bus node below the sn65dsi86:
> 
> display_port0: connector {
> compatible = "dp-connector";
> label = "DP0";
> type = "full-size";
> dp-pwr-supply = <®_DP_PWR>;
> 
> port {
> dp_connector_in: endpoint {
> remote-endpoint = <&sn65dsi86_out>;
> };
> };
> };
> 
> &i2c5 {
> ...
> eDP: bridge@2c {
> compatible = "ti,sn65dsi86";
> reg = <0x2c>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_eDP>;
> 
> interrupts-extended = <&gpio3 14 IRQ_TYPE_LEVEL_HIGH>;
> enable-gpios = <&gpio3 9 GPIO_ACTIVE_HIGH>;
> 
> vpll-supply = <&VDD_1V8>;
> vccio-supply = <&VDD_1V8>;
> vcca-supply = <®_1V2>;
> vcc-supply = <®_1V2>;
> 
> clocks = <&clk_38_4MHz>;
> clock-names = "refclk";
> 
> ports {
> #address-cells = <1>;
> #size-cells = <0>;
> 
> port@0 {
> reg = <0>;
> sn65dsi86_in_a: endpoint {
> remote-endpoint = <&mipi_dsi_out>;
> };
> };
> 
> port@1 {
> reg = <1>;
> sn65dsi86_out: endpoint {
> remote-endpoint = <&dp_connector_in>;
> data-lanes = <3 2 1 0>;
> };
> };
> };
> };
> };
> 
> When I manually set the enable-gpio high in U-Boot, I can talk to the
> device and e.g. read out the 8 device_id bytes which match what I expect.
> 
> Any hints would be highly appreciated.

If it helps, this is an area I've been working to support one of our
boards. I have a branch at:

 git://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git
 kbingham/drm-misc/next/sn65dsi86/hpd

But it's still a work in progress, and now needs rebasing to account for
Sam's latest updates.

I intend to resume this in a few weeks, but hopefully that branch may
have some helpful pointers to get things progressing for you too.

--
Kieran


> 
> Thanks,
> Rasmus