Skip to content

keep registered console runtime active - #1954

Merged
vdadhani merged 1 commit into
qualcomm-linux:tech/bus/peripheralsfrom
vdadhani:fix-console-noc-error
Oct 1, 2026
Merged

vdadhani merged 1 commit into
qualcomm-linux:tech/bus/peripheralsfrom
vdadhani:fix-console-noc-error

Conversation

@vdadhani

@vdadhani vdadhani commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

Commit aee1f94 ("serial: qcom-geni: remove .pm callback, use runtime PM in startup/shutdown") moved runtime PM references from the serial-core PM callback to the port startup and shutdown callbacks.

The serial core used to leave the console port powered after registration, but after the callback was removed the temporary probe reference is always released. Console writes are not tied to an open TTY and can run from contexts which cannot resume the device, so a runtime-suspended console can stall. This was observed on a Qualcomm X1E80100 CRD device, as the boot console became flakey across boots.

Acquire a runtime PM reference when the console is set up and release it through the console exit callback. This keeps the device active only while the console is registered and balances the reference when the console is disabled or re-enabled through sysfs.

Link: https://lore.kernel.org/all/20260819-topic-geni_console_poweredoff-v1-1-7f7bb3aad8da@oss.qualcomm.com/
Fixes: aee1f94 ("serial: qcom-geni: remove .pm callback, use runtime PM in startup/shutdown")
Assisted-by: LLM

Tested-by: David Heidelberg david@ixit.cz # OnePlus 6T (sdm845)
Reviewed-by: Abel Vesa abel.vesa@oss.qualcomm.com

CRs-fixed: 4688516

Commit aee1f94 ("serial: qcom-geni: remove .pm callback, use
runtime PM in startup/shutdown") moved runtime PM references from the
serial-core PM callback to the port startup and shutdown callbacks.

The serial core used to leave the console port powered after
registration, but after the callback was removed the temporary probe
reference is always released. Console writes are not tied to an open TTY
and can run from contexts which cannot resume the device, so a
runtime-suspended console can stall. This was observed on a Qualcomm
X1E80100 CRD device, as the boot console became flakey across boots.

Acquire a runtime PM reference when the console is set up and release it
through the console exit callback. This keeps the device active only
while the console is registered and balances the reference when the
console is disabled or re-enabled through sysfs.

Link: https://lore.kernel.org/all/20260819-topic-geni_console_poweredoff-v1-1-7f7bb3aad8da@oss.qualcomm.com/
Fixes: aee1f94 ("serial: qcom-geni: remove .pm callback, use runtime PM in startup/shutdown")
Assisted-by: LLM
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Tested-by: David Heidelberg <david@ixit.cz> # OnePlus 6T (sdm845)
Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
Signed-off-by: Viken Dadhaniya <viken.dadhaniya@oss.qualcomm.com>
@vdadhani
vdadhani merged commit 5e70648 into qualcomm-linux:tech/bus/peripherals Oct 1, 2026
3 checks passed
@qcomlnxci
qcomlnxci requested review from a team, jseerapu and mukesh-savaliya and removed request for a team October 1, 2026 18:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants