lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 10 Aug 2021 09:52:36 +0200
From:   Paul Cercueil <>
To:     Paul Boddie <>
Cc:     "H. Nikolaus Schaller" <>,
        David Airlie <>,
        linux-mips <>,
        dri-devel <>,
        linux-kernel <>,
        Daniel Vetter <>,,
        Sam Ravnborg <>,
        Discussions about the Letux Kernel 
Subject: Re: [Letux-kernel] [PATCH 8/8] drm/ingenic: Attach bridge chain to

Hi Paul,

Le mar., août 10 2021 at 01:17:20 +0200, Paul Boddie 
<> a écrit :
> On Monday, 9 August 2021 18:22:12 CEST Paul Cercueil wrote:
>>  Le lun., août 9 2021 at 13:14:03 +0200, H. Nikolaus Schaller
> <> a écrit :
>>  >
>>  > quick feedback: our HDMI on top compiles fine after fixing 2 merge
>>  > conflicts, but dos not yet work.
>>  > Will need some spare time with access to the CI20 board to 
>> research
>>  > the issue, i.e. can not give feedback immediately.
>>  Alright, no problem. I'll be back home in about 2 weeks and then I 
>> can
>>  test on my CI20 as well.
> Just for reference, I looked into this initialisation failure. The 
> peripheral driver gets initialised satisfactorily...
> dw-hdmi-ingenic 10180000.hdmi: Detected HDMI TX controller v1.31a 
> with HDCP
> dw-hdmi-ingenic 10180000.hdmi: registered DesignWare HDMI I2C bus 
> driver
> But then the reported error occurs in the DRM driver:
> ingenic-drm 13050000.lcdc0: Unable to init connector
> ingenic-drm: probe of 13050000.lcdc0 failed with error -22
> This originates in a call to drm_bridge_connector_init from 
> ingenic_drm_bind:
> connector = drm_bridge_connector_init(drm, encoder);
> The invoked function iterates over the registered bridges, one of 
> which seems
> to be the HDMI peripheral (it has bridge operations defined 
> identically to
> those specified in the Synopsys driver), but the type member of the 
> drm_bridge
> structure is set to 0 (DRM_MODE_CONNECTOR_Unknown).
> I might expect the bridge to expose a type acquired from its 
> connector, but I
> don't see this propagation occurring in the Synopsys driver: 
> dw_hdmi_probe
> sets the bridge operations and other members of the drm_bridge 
> structure, but
> it doesn't set the type.
> Also, it might be possible that dw_hdmi_connector_detect (exposed as 
> the
> detect operation) is not getting called, and this would explain why 
> the
> bridge's connector member does not have the connector_type set, 
> either (since
> it is also set to 0).

 From what I understand the last bridge in the chained list is supposed 
to set the connector type. The HDMI driver's probe function should get 
a pointer to the next bridge in the queue and attach it (see how 
ite-it66121.c does it). The last bridge in the queue should be 
"hdmi-connector" (display-connector.c) which will effectively set the 
connector type.


Powered by blists - more mailing lists