From: Johan Hovold <johan@kernel.org>
To: Stephan Gerhold <stephan.gerhold@linaro.org>,
Bjorn Andersson <andersson@kernel.org>,
Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: Konrad Dybcio <konradybcio@kernel.org>,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
Abel Vesa <abel.vesa@linaro.org>
Subject: Re: [PATCH 1/2] soc: qcom: pd_mapper: Add X1E80100
Date: Tue, 30 Jul 2024 11:28:14 +0200 [thread overview]
Message-ID: <ZqiyLvP0gkBnuekL@hovoldconsulting.com> (raw)
In-Reply-To: <Zqet8iInnDhnxkT9@hovoldconsulting.com>
On Mon, Jul 29, 2024 at 04:57:54PM +0200, Johan Hovold wrote:
> On Mon, Jul 08, 2024 at 06:22:09PM +0200, Stephan Gerhold wrote:
> > X1E80100 has the same protection domains as SM8550, except that MPSS is
> > missing. Add it to the in-kernel pd-mapper to avoid having to run the
> > daemon in userspace for charging and audio functionality.
>
> I'm seeing a bunch of new errors when running with this patch applied on
> top of 6.11-rc1. I'm assuming it is due to changes in timing that are
> either exposing existing bugs or there is a general problem with the
> in-kernel pd-mapper implementation.
>
> In any case, this does does not seem to be specific to x1e80100 even if
> I'm not seeing as many issues on sc8280xp (there is one new error there
> too however).
>
> It doesn't happen on every boot, but with the in-kernel pd-mapper I
> often (every 3-4 boots) see the following errors on the x1e80100 CRD
> during boot:
>
> [ 9.799719] pmic_glink_altmode.pmic_glink_altmode pmic_glink.altmode.0: failed to send altmode request: 0x10 (-125)
> [ 9.812446] pmic_glink_altmode.pmic_glink_altmode pmic_glink.altmode.0: failed to request altmode notifications: -125
> [ 9.831796] ucsi_glink.pmic_glink_ucsi pmic_glink.ucsi.0: failed to send UCSI read request: -125
>
> [ 9.269230] qcom_battmgr.pmic_glink_power_supply pmic_glink.power-supply.0: failed to request power notifications
>
> I've also seen the following, which may also be related:
>
> [ 14.565059] PDR: avs/audio get domain list txn wait failed: -110
> [ 14.571943] PDR: service lookup for avs/audio failed: -110
>
> I haven't seen the -ECANCELED (-125) errors in 30 reboots with the patch
> reverted again.
Here's another bug, a NULL deref in the battery driver, that is
apparently exposed by the in-kernel pd-mapper. This is also on the
x1e80100 CRD with a couple of added printks to indicate when the
pd-mapper probes and when the pmic glink services are up:
[ 8.933775] remoteproc remoteproc1: powering up 32300000.remoteproc
[ 8.934623] qcom_pmic_glink pmic-glink: Failed to create device link (0x180) with fd5000.phy
[ 8.945244] remoteproc remoteproc1: Booting fw image qcom/x1e80100/cdsp.mbn, size 3027368
[ 8.965537] remoteproc remoteproc0: powering up 30000000.remoteproc
[ 8.971075] qcom_pmic_glink pmic-glink: Failed to create device link (0x180) with fda000.phy
[ 8.974299] remoteproc remoteproc0: Booting fw image qcom/x1e80100/adsp.mbn, size 21424472
[ 8.999726] msm-mdss ae00000.display-subsystem: Adding to iommu group 4
[ 9.007697] qcom_pmic_glink pmic-glink: Failed to create device link (0x180) with fdf000.phy
[ 9.101196] remoteproc remoteproc1: remote processor 32300000.remoteproc is now up
[ 9.103860] qcom_pd_mapper.qcom-pdm-mapper qcom_common.pd-mapper.1: qcom_pdm_probe
[ 9.105989] qcom_pd_mapper.qcom-pdm-mapper qcom_common.pd-mapper.0: qcom_pdm_probe
- pd-mapper probing
[ 9.112983] qcom-snps-eusb2-hsphy fd3000.phy: Registered Qcom-eUSB2 phy
[ 9.296879] remoteproc remoteproc0: remote processor 30000000.remoteproc is now up
- adsp is up
[ 9.300086] qcom_pmic_glink pmic-glink: pmic_glink_pdr_callback - state = 7fffffff
- SERVREG_SERVICE_STATE_UNINIT
[ 9.301878] qcom-snps-eusb2-hsphy fd9000.phy: Registered Qcom-eUSB2 phy
[ 9.306985] qcom,fastrpc 30000000.remoteproc:glink-edge.fastrpcglink-apps-dsp.-1.-1: no reserved DMA memory for FAST
RPC
[ 9.309924] qcom,fastrpc-cb 30000000.remoteproc:glink-edge:fastrpc:compute-cb@3: Adding to iommu group 5
[ 9.311367] qcom,fastrpc-cb 30000000.remoteproc:glink-edge:fastrpc:compute-cb@4: Adding to iommu group 6
[ 9.318330] PDR: Indication received from msm/adsp/charger_pd, state: 0x1fffffff, trans-id: 1
- This looks suspicious
[ 9.323924] qcom-snps-eusb2-hsphy fde000.phy: Registered Qcom-eUSB2 phy
[ 9.325275] qcom,fastrpc-cb 30000000.remoteproc:glink-edge:fastrpc:compute-cb@5: Adding to iommu group 7
[ 9.326008] qcom,fastrpc-cb 30000000.remoteproc:glink-edge:fastrpc:compute-cb@6: Adding to iommu group 8
[ 9.326733] qcom,fastrpc-cb 30000000.remoteproc:glink-edge:fastrpc:compute-cb@7: Adding to iommu group 9
[ 9.336582] qcom_pmic_glink pmic-glink: pmic_glink_pdr_callback - state = 1fffffff
- SERVREG_SERVICE_STATE_UP
[ 9.345544] dwc3 a000000.usb: Adding to iommu group 10
[ 9.361410] qcom,apr 30000000.remoteproc:glink-edge.adsp_apps.-1.-1: Adding APR/GPR dev: gprsvc:service:2:1
[ 9.362803] pmic_glink_altmode.pmic_glink_altmode pmic_glink.altmode.0: failed to send altmode request: 0x10 (-125)
[ 9.362882] pmic_glink_altmode.pmic_glink_altmode pmic_glink.altmode.0: failed to request altmode notifications: -125
- -ECANCELED errors I reported earlier
[ 9.364298] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000010
...
[ 9.364339] Internal error: Oops: 0000000096000004 [#1] PREEMPT SMP
[ 9.364395] CPU: 6 UID: 0 PID: 111 Comm: kworker/6:4 Not tainted 6.11.0-rc1 #70
[ 9.364397] Hardware name: Qualcomm CRD, BIOS 6.0.231221.BOOT.MXF.2.4-00348.1-HAMOA-1 12/21/2023
[ 9.364398] Workqueue: events qcom_battmgr_enable_worker [qcom_battmgr]
[ 9.364401] pstate: 01400005 (nzcv daif +PAN -UAO -TCO +DIT -SSBS BTYPE=--)
[ 9.364403] pc : pmic_glink_send+0xc/0x24 [pmic_glink]
[ 9.364405] lr : qcom_battmgr_enable_worker+0x60/0xbc [qcom_battmgr]
...
[ 9.364427] Call trace:
[ 9.364428] pmic_glink_send+0xc/0x24 [pmic_glink]
[ 9.364429] qcom_battmgr_enable_worker+0x60/0xbc [qcom_battmgr]
[ 9.364430] process_one_work+0x210/0x614
[ 9.364435] worker_thread+0x244/0x388
[ 9.364436] kthread+0x124/0x128
[ 9.364437] ret_from_fork+0x10/0x20
[ 9.364439] Code: 17fffff7 d503233f a9bf7bfd 910003fd (f9400800)
[ 9.364441] ---[ end trace 0000000000000000 ]---
[ 9.365205] ucsi_glink.pmic_glink_ucsi pmic_glink.ucsi.0: failed to send UCSI read request: -125
Johan
next prev parent reply other threads:[~2024-07-30 9:28 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-08 16:22 [PATCH 0/2] soc: qcom: pd_mapper: Add X1E80100 and older platforms Stephan Gerhold
2024-07-08 16:22 ` [PATCH 1/2] soc: qcom: pd_mapper: Add X1E80100 Stephan Gerhold
2024-07-08 20:22 ` Dmitry Baryshkov
2024-07-29 14:57 ` Johan Hovold
2024-07-30 9:28 ` Johan Hovold [this message]
2024-07-30 11:06 ` Dmitry Baryshkov
2024-07-30 23:50 ` Chris Lew
2024-07-31 1:41 ` Dmitry Baryshkov
2024-07-31 6:04 ` Chris Lew
2024-08-22 7:28 ` Johan Hovold
2024-09-04 12:40 ` Johan Hovold
2024-09-04 13:27 ` Dmitry Baryshkov
2024-07-08 16:22 ` [PATCH 2/2] soc: qcom: pd_mapper: Add more older platforms without domains Stephan Gerhold
2024-07-08 20:22 ` Dmitry Baryshkov
2024-08-15 20:40 ` [PATCH 0/2] soc: qcom: pd_mapper: Add X1E80100 and older platforms Bjorn Andersson
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=ZqiyLvP0gkBnuekL@hovoldconsulting.com \
--to=johan@kernel.org \
--cc=abel.vesa@linaro.org \
--cc=andersson@kernel.org \
--cc=dmitry.baryshkov@linaro.org \
--cc=konradybcio@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=stephan.gerhold@linaro.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