From: Alexander Stein <alexander.stein@ew.tq-group.com> To: Bjorn Andersson <andersson@kernel.org>, Konrad Dybcio <konrad.dybcio@linaro.org>, Liam Girdwood <lgirdwood@gmail.com>, Mark Brown <broonie@kernel.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Conor Dooley <conor+dt@kernel.org>, Wesley Cheng <quic_wcheng@quicinc.com>, Bryan O'Donoghue <bryan.odonoghue@linaro.org>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Vinod Koul <vkoul@kernel.org>, Kishon Vijay Abraham I <kishon@kernel.org>, Guenter Roeck <linux@roeck-us.net>, Heikki Krogerus <heikki.krogerus@linux.intel.com>, Philipp Zabel <p.zabel@pengutronix.de>, Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-usb@vger.kernel.org, linux-phy@lists.infradead.org Subject: Re: [PATCH v2 05/15] usb: typec: tcpm: fix the PD disabled case Date: Mon, 15 Jan 2024 10:00:03 +0100 [thread overview] Message-ID: <12361952.O9o76ZdvQC@steina-w> (raw) In-Reply-To: <20240113-pmi632-typec-v2-5-182d9aa0a5b3@linaro.org> Hi Dmitry, Am Samstag, 13. Januar 2024, 21:55:48 CET schrieb Dmitry Baryshkov: > If the PD is disabled for the port, port->pds will be left as NULL, > which causes the following crash during caps intilisation. Fix the > crash. > > Unable to handle kernel NULL pointer dereference at virtual address > 0000000000000000 Call trace: > tcpm_register_port+0xaec/0xc44 > qcom_pmic_typec_probe+0x1a4/0x254 > platform_probe+0x68/0xc0 > really_probe+0x148/0x2ac > __driver_probe_device+0x78/0x12c > driver_probe_device+0xd8/0x160 > Bluetooth: hci0: QCA Product ID :0x0000000a > __device_attach_driver+0xb8/0x138 > bus_for_each_drv+0x80/0xdc > Bluetooth: hci0: QCA SOC Version :0x40020150 > __device_attach+0x9c/0x188 > device_initial_probe+0x14/0x20 > bus_probe_device+0xac/0xb0 > deferred_probe_work_func+0x8c/0xc8 > process_one_work+0x1ec/0x51c > worker_thread+0x1ec/0x3e4 > kthread+0x120/0x124 > ret_from_fork+0x10/0x20 > > Fixes: cd099cde4ed2 ("usb: typec: tcpm: Support multiple capabilities") > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > drivers/usb/typec/tcpm/tcpm.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c > index 5945e3a2b0f7..a0978ed1a257 100644 > --- a/drivers/usb/typec/tcpm/tcpm.c > +++ b/drivers/usb/typec/tcpm/tcpm.c > @@ -6848,7 +6848,8 @@ struct tcpm_port *tcpm_register_port(struct device > *dev, struct tcpc_dev *tcpc) if (err) > goto out_role_sw_put; > > - port->typec_caps.pd = port->pds[0]; > + if (port->pds) I'm wondering if the check should be for port->pd_supported instead. Nevertheless this works on my "pd-disable" platform as well. Best regards, Alexander > + port->typec_caps.pd = port->pds[0]; > > port->typec_port = typec_register_port(port->dev, &port- >typec_caps); > if (IS_ERR(port->typec_port)) { -- TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany Amtsgericht München, HRB 105018 Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider http://www.tq-group.com/
WARNING: multiple messages have this Message-ID (diff)
From: Alexander Stein <alexander.stein@ew.tq-group.com> To: Bjorn Andersson <andersson@kernel.org>, Konrad Dybcio <konrad.dybcio@linaro.org>, Liam Girdwood <lgirdwood@gmail.com>, Mark Brown <broonie@kernel.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Conor Dooley <conor+dt@kernel.org>, Wesley Cheng <quic_wcheng@quicinc.com>, Bryan O'Donoghue <bryan.odonoghue@linaro.org>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Vinod Koul <vkoul@kernel.org>, Kishon Vijay Abraham I <kishon@kernel.org>, Guenter Roeck <linux@roeck-us.net>, Heikki Krogerus <heikki.krogerus@linux.intel.com>, Philipp Zabel <p.zabel@pengutronix.de>, Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Cc: linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-usb@vger.kernel.org, linux-phy@lists.infradead.org Subject: Re: [PATCH v2 05/15] usb: typec: tcpm: fix the PD disabled case Date: Mon, 15 Jan 2024 10:00:03 +0100 [thread overview] Message-ID: <12361952.O9o76ZdvQC@steina-w> (raw) In-Reply-To: <20240113-pmi632-typec-v2-5-182d9aa0a5b3@linaro.org> Hi Dmitry, Am Samstag, 13. Januar 2024, 21:55:48 CET schrieb Dmitry Baryshkov: > If the PD is disabled for the port, port->pds will be left as NULL, > which causes the following crash during caps intilisation. Fix the > crash. > > Unable to handle kernel NULL pointer dereference at virtual address > 0000000000000000 Call trace: > tcpm_register_port+0xaec/0xc44 > qcom_pmic_typec_probe+0x1a4/0x254 > platform_probe+0x68/0xc0 > really_probe+0x148/0x2ac > __driver_probe_device+0x78/0x12c > driver_probe_device+0xd8/0x160 > Bluetooth: hci0: QCA Product ID :0x0000000a > __device_attach_driver+0xb8/0x138 > bus_for_each_drv+0x80/0xdc > Bluetooth: hci0: QCA SOC Version :0x40020150 > __device_attach+0x9c/0x188 > device_initial_probe+0x14/0x20 > bus_probe_device+0xac/0xb0 > deferred_probe_work_func+0x8c/0xc8 > process_one_work+0x1ec/0x51c > worker_thread+0x1ec/0x3e4 > kthread+0x120/0x124 > ret_from_fork+0x10/0x20 > > Fixes: cd099cde4ed2 ("usb: typec: tcpm: Support multiple capabilities") > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > drivers/usb/typec/tcpm/tcpm.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c > index 5945e3a2b0f7..a0978ed1a257 100644 > --- a/drivers/usb/typec/tcpm/tcpm.c > +++ b/drivers/usb/typec/tcpm/tcpm.c > @@ -6848,7 +6848,8 @@ struct tcpm_port *tcpm_register_port(struct device > *dev, struct tcpc_dev *tcpc) if (err) > goto out_role_sw_put; > > - port->typec_caps.pd = port->pds[0]; > + if (port->pds) I'm wondering if the check should be for port->pd_supported instead. Nevertheless this works on my "pd-disable" platform as well. Best regards, Alexander > + port->typec_caps.pd = port->pds[0]; > > port->typec_port = typec_register_port(port->dev, &port- >typec_caps); > if (IS_ERR(port->typec_port)) { -- TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany Amtsgericht München, HRB 105018 Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider http://www.tq-group.com/ -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy
next prev parent reply other threads:[~2024-01-15 9:00 UTC|newest] Thread overview: 96+ messages / expand[flat|nested] mbox.gz Atom feed top 2024-01-13 20:55 [PATCH v2 00/15] usb: typec: qcom-pmic-typec: enable support for PMI632 PMIC Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-13 20:55 ` [PATCH v2 01/15] dt-bindings: regulator: qcom,usb-vbus-regulator: add support for PMI632 Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-15 7:58 ` Krzysztof Kozlowski 2024-01-15 7:58 ` Krzysztof Kozlowski 2024-01-13 20:55 ` [PATCH v2 02/15] dt-bindings: usb: qcom,pmic-typec: add support for the PMI632 block Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-15 7:59 ` Krzysztof Kozlowski 2024-01-15 7:59 ` Krzysztof Kozlowski 2024-01-13 20:55 ` [PATCH v2 03/15] dt-bindings: phy: qcom,msm8998-qmp-usb3-phy: split from sc8280xp PHY schema Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-15 8:00 ` Krzysztof Kozlowski 2024-01-15 8:00 ` Krzysztof Kozlowski 2024-01-13 20:55 ` [PATCH v2 04/15] dt-bindings: phy: qcom,msm8998-qmp-usb3-phy: support USB-C data Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-15 9:15 ` Krzysztof Kozlowski 2024-01-15 9:15 ` Krzysztof Kozlowski 2024-01-15 9:47 ` Dmitry Baryshkov 2024-01-15 9:47 ` Dmitry Baryshkov 2024-01-15 10:21 ` Krzysztof Kozlowski 2024-01-15 10:21 ` Krzysztof Kozlowski 2024-01-13 20:55 ` [PATCH v2 05/15] usb: typec: tcpm: fix the PD disabled case Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-15 9:00 ` Alexander Stein [this message] 2024-01-15 9:00 ` Alexander Stein 2024-01-18 9:53 ` Heikki Krogerus 2024-01-18 9:53 ` Heikki Krogerus 2024-01-13 20:55 ` [PATCH v2 06/15] usb: typec: qcom-pmic-typec: fix arguments of qcom_pmic_typec_pdphy_set_roles Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-14 15:51 ` Bryan O'Donoghue 2024-01-14 15:51 ` Bryan O'Donoghue 2024-01-14 16:13 ` Bryan O'Donoghue 2024-01-14 16:13 ` Bryan O'Donoghue 2024-01-13 20:55 ` [PATCH v2 07/15] usb: typec: qcom-pmic-typec: allow different implementations for the PD PHY Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-13 20:55 ` [PATCH v2 08/15] usb: typec: qcom-pmic-typec: allow different implementations for the port backend Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-14 16:12 ` Bryan O'Donoghue 2024-01-14 16:12 ` Bryan O'Donoghue 2024-01-13 20:55 ` [PATCH v2 09/15] usb: typec: qcom-pmic-typec: add support for PMI632 PMIC Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-16 12:32 ` Konrad Dybcio 2024-01-16 12:32 ` Konrad Dybcio 2024-01-16 12:56 ` Dmitry Baryshkov 2024-01-16 12:56 ` Dmitry Baryshkov 2024-01-16 14:23 ` Heikki Krogerus 2024-01-16 14:23 ` Heikki Krogerus 2024-01-25 0:07 ` Dmitry Baryshkov 2024-01-25 0:07 ` Dmitry Baryshkov 2024-01-25 11:03 ` Heikki Krogerus 2024-01-25 11:03 ` Heikki Krogerus 2024-01-13 20:55 ` [PATCH v2 10/15] phy: qcom: qmp-usb: split USB-C PHY driver Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-16 12:33 ` Konrad Dybcio 2024-01-16 12:33 ` Konrad Dybcio 2024-01-13 20:55 ` [PATCH v2 11/15] phy: qcom: qmp-usb: drop dual-lane handling Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-17 0:07 ` Jeff Johnson 2024-01-17 0:07 ` Jeff Johnson 2024-01-13 20:55 ` [PATCH v2 12/15] phy: qcom: qmp-usbc: add support for the Type-C handling Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-13 20:55 ` [PATCH v2 13/15] arm64: dts: qcom: pmi632: define USB-C related blocks Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-15 10:00 ` Konrad Dybcio 2024-01-15 10:00 ` Konrad Dybcio 2024-01-15 10:43 ` Dmitry Baryshkov 2024-01-15 10:43 ` Dmitry Baryshkov 2024-01-17 17:23 ` Bryan O'Donoghue 2024-01-17 17:23 ` Bryan O'Donoghue 2024-01-17 18:05 ` Dmitry Baryshkov 2024-01-17 18:05 ` Dmitry Baryshkov 2024-01-17 18:23 ` Bryan O'Donoghue 2024-01-17 18:23 ` Bryan O'Donoghue 2024-01-17 22:01 ` Bjorn Andersson 2024-01-17 22:01 ` Bjorn Andersson 2024-01-18 11:17 ` Konrad Dybcio 2024-01-18 11:17 ` Konrad Dybcio 2024-01-18 13:38 ` Dmitry Baryshkov 2024-01-18 13:38 ` Dmitry Baryshkov 2024-01-18 13:54 ` Konrad Dybcio 2024-01-18 13:54 ` Konrad Dybcio 2024-01-13 20:55 ` [PATCH v2 14/15] arm64: dts: qcom: sm6115: drop pipe clock selection Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-13 20:55 ` [PATCH v2 15/15] arm64: dts: qcom: qrb4210-rb2: enable USB-C port handling Dmitry Baryshkov 2024-01-13 20:55 ` Dmitry Baryshkov 2024-01-23 20:32 ` Luca Weiss 2024-01-23 20:32 ` Luca Weiss 2024-01-24 1:16 ` Dmitry Baryshkov 2024-01-24 1:16 ` Dmitry Baryshkov 2024-01-23 14:20 ` (subset) [PATCH v2 00/15] usb: typec: qcom-pmic-typec: enable support for PMI632 PMIC Vinod Koul 2024-01-23 14:20 ` Vinod Koul 2024-01-23 20:43 ` Luca Weiss 2024-01-23 20:43 ` Luca Weiss 2024-01-24 1:43 ` Dmitry Baryshkov 2024-01-24 1:43 ` Dmitry Baryshkov
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=12361952.O9o76ZdvQC@steina-w \ --to=alexander.stein@ew.tq-group.com \ --cc=andersson@kernel.org \ --cc=broonie@kernel.org \ --cc=bryan.odonoghue@linaro.org \ --cc=conor+dt@kernel.org \ --cc=devicetree@vger.kernel.org \ --cc=dmitry.baryshkov@linaro.org \ --cc=gregkh@linuxfoundation.org \ --cc=heikki.krogerus@linux.intel.com \ --cc=kishon@kernel.org \ --cc=konrad.dybcio@linaro.org \ --cc=krzysztof.kozlowski+dt@linaro.org \ --cc=lgirdwood@gmail.com \ --cc=linux-arm-msm@vger.kernel.org \ --cc=linux-phy@lists.infradead.org \ --cc=linux-usb@vger.kernel.org \ --cc=linux@roeck-us.net \ --cc=p.zabel@pengutronix.de \ --cc=quic_wcheng@quicinc.com \ --cc=robh+dt@kernel.org \ --cc=vkoul@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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.