From: "Ard Biesheuvel" <ardb@kernel.org>
To: "Dmitry Baryshkov" <dmitry.baryshkov@oss.qualcomm.com>,
"Ard Biesheuvel" <ardb+git@google.com>
Cc: linux-arm-kernel@lists.infradead.org,
"Bjorn Andersson" <andersson@kernel.org>,
"Konrad Dybcio" <konradybcio@kernel.org>,
"Abel Vesa" <abelvesa@kernel.org>,
"Dmitry Baryshkov" <lumag@kernel.org>,
linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH 2/7] arm64: dts: qcom: c630: Use LN_BB_CLK2 as the eDP bridge reference clock
Date: Wed, 11 Nov 2026 14:45:58 +0100 [thread overview]
Message-ID: <27227279-dcec-4e46-916c-5d65ad8ca086@app.fastmail.com> (raw)
In-Reply-To: <71d569ee-a939-4c41-b32f-985d7db4040f@app.fastmail.com>
On Wed, 11 Nov 2026, at 14:15, Ard Biesheuvel wrote:
> On Wed, 11 Nov 2026, at 13:43, Dmitry Baryshkov wrote:
>> On Wed, Nov 11, 2026 at 12:53:06PM +0100, Ard Biesheuvel wrote:
>>> From: Ard Biesheuvel <ardb@kernel.org>
>>>
>>> The SN65DSI86 eDP bridge on the Yoga C630 is described as being clocked by
>>> an always-on fixed 19.2 MHz reference clock. However, as on the SDM845
>>> reference design (Cheza), its REFCLK appears to be fed by the LN_BB_CLK2
>>> output of the PMIC, which also serves as the master clock of the WCD9340
>>> audio codec.
>>>
>>> As nothing tells Linux that the bridge depends on LN_BB_CLK2, the clock
>>> only runs when the codec happens to have it enabled, and the WCD934x
>>> driver only enables it on demand. If the bridge is brought up while
>>> LN_BB_CLK2 is off or being toggled, e.g., when the display stack probes
>>> before the codec, or while the codec is being initialized, all AUX
>>> transfers fail and the DP PLL does not lock, leaving the panel dark:
>>>
>>> ti_sn65dsi86 10-002c: Can't read lane count (-110); assuming 4
>>> ti_sn65dsi86 10-002c: Can't read eDP rev (-110), assuming 1.1
>>> ti_sn65dsi86 10-002c: Can't read max rate (-110); assuming 5.4 GHz
>>> ti_sn65dsi86 10-002c: DP_PLL_LOCK polling failed (-110)
>>>
>>> So describe the actual clock instead, so that the bridge driver keeps it
>>> enabled for as long as the bridge is powered up.
>>
>> According to the schematics the actual clock is a divider clock coming
>> from the GPIO16 of the PMIC.
>>
>
> Which is always powered, I suppose?
>
> So I suppose that means just the arbitrary stall resulting from the
> clock enable is sufficient to make this issue go away? Any clue what
> else it might be waiting for?
I've just double checked with the old DT: the system comes up with the
panel dark, but as soon as I do
echo 1 | sudo tee /sys/kernel/debug/clk/ln_bb_clk2/clk_prepare_enable
[on a writable clocks kernel], the panel lights up fine after I blank
and unblank it.
Could it be an error in the schematic?
next prev parent reply other threads:[~2026-11-11 13:46 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-11 11:53 [PATCH 0/7] Lenovo Yoga C630 (sdm845) fixes Ard Biesheuvel
2026-11-11 11:53 ` [PATCH 1/7] arm64: dts: qcom: sdm845: Bump fastrpc shared DMA pool to 32MB for 16k pages Ard Biesheuvel
2026-11-11 14:42 ` Abel Vesa
2026-11-11 11:53 ` [PATCH 2/7] arm64: dts: qcom: c630: Use LN_BB_CLK2 as the eDP bridge reference clock Ard Biesheuvel
2026-11-11 12:43 ` Dmitry Baryshkov
2026-11-11 13:15 ` Ard Biesheuvel
2026-11-11 13:45 ` Ard Biesheuvel [this message]
2026-11-11 11:53 ` [PATCH 3/7] arm64: dts: qcom: c630: Enable DisplayPort alt mode Ard Biesheuvel
2026-11-11 12:50 ` Dmitry Baryshkov
2026-11-11 14:42 ` Abel Vesa
2026-11-11 11:53 ` [PATCH 4/7] arm64: dts: qcom: c630: Use the idle states from the ACPI tables Ard Biesheuvel
2026-11-11 12:56 ` Dmitry Baryshkov
2026-11-11 14:42 ` Abel Vesa
2026-11-11 11:53 ` [PATCH 5/7] arm64: dts: qcom: c630: Wait for the touchpad at resume Ard Biesheuvel
2026-11-11 12:22 ` Ard Biesheuvel
2026-11-11 12:58 ` Dmitry Baryshkov
2026-11-11 13:16 ` Ard Biesheuvel
2026-11-11 12:56 ` Dmitry Baryshkov
2026-11-11 11:53 ` [PATCH 6/7] platform: arm64: lenovo-yoga-c630: Disable the EC interrupt while suspended Ard Biesheuvel
2026-11-11 12:57 ` Dmitry Baryshkov
2026-11-11 11:53 ` [PATCH 7/7] platform: arm64: lenovo-yoga-c630: Expose the keyboard backlight as an LED Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=27227279-dcec-4e46-916c-5d65ad8ca086@app.fastmail.com \
--to=ardb@kernel.org \
--cc=abelvesa@kernel.org \
--cc=andersson@kernel.org \
--cc=ardb+git@google.com \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=lumag@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox