diff mbox

phy: phy-mxs-usb: suspend to RAM causes NULL pointer dereference

Message ID 1434343020-29604-1-git-send-email-stefan.wahren@i2se.com (mailing list archive)
State New, archived
Headers show

Commit Message

Stefan Wahren June 15, 2015, 4:37 a.m. UTC
Triggering suspend to RAM via sysfs on a i.MX28 causes a NULL pointer
dereference. This patch avoids the oops in mxs_phy_get_vbus_status()
by aborting since there is no syscon available.

Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Fixes: efdbd3a5d6e ("usb: phy: mxs: do not set PWD.RXPWD1PT1 for low speed connection")
CC: <stable@vger.kernel.org> # 4.0
Acked-by: Peter Chen <peter.chen@freescale.com>
---
 drivers/usb/phy/phy-mxs-usb.c |    3 +++
 1 file changed, 3 insertions(+)

Comments

Stefan Wahren June 30, 2015, 5:30 a.m. UTC | #1
Am 15.06.2015 um 06:37 schrieb Stefan Wahren:
> Triggering suspend to RAM via sysfs on a i.MX28 causes a NULL pointer
> dereference. This patch avoids the oops in mxs_phy_get_vbus_status()
> by aborting since there is no syscon available.
>
> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
> Fixes: efdbd3a5d6e ("usb: phy: mxs: do not set PWD.RXPWD1PT1 for low speed connection")
> CC: <stable@vger.kernel.org> # 4.0
> Acked-by: Peter Chen <peter.chen@freescale.com>

Just a gentle ping
Felipe Balbi June 30, 2015, 6:10 a.m. UTC | #2
On Tue, Jun 30, 2015 at 07:30:35AM +0200, Stefan Wahren wrote:
> Am 15.06.2015 um 06:37 schrieb Stefan Wahren:
> > Triggering suspend to RAM via sysfs on a i.MX28 causes a NULL pointer
> > dereference. This patch avoids the oops in mxs_phy_get_vbus_status()
> > by aborting since there is no syscon available.
> >
> > Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
> > Fixes: efdbd3a5d6e ("usb: phy: mxs: do not set PWD.RXPWD1PT1 for low speed connection")
> > CC: <stable@vger.kernel.org> # 4.0
> > Acked-by: Peter Chen <peter.chen@freescale.com>
> 
> Just a gentle ping

it's in my queue, but -rc1 wasn't tagged yet, was it ? In a hurry for
some reason ?
Stefan Wahren June 30, 2015, 6:20 a.m. UTC | #3
Am 30.06.2015 um 08:10 schrieb Felipe Balbi:
> On Tue, Jun 30, 2015 at 07:30:35AM +0200, Stefan Wahren wrote:
>> Am 15.06.2015 um 06:37 schrieb Stefan Wahren:
>>> Triggering suspend to RAM via sysfs on a i.MX28 causes a NULL pointer
>>> dereference. This patch avoids the oops in mxs_phy_get_vbus_status()
>>> by aborting since there is no syscon available.
>>>
>>> Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
>>> Fixes: efdbd3a5d6e ("usb: phy: mxs: do not set PWD.RXPWD1PT1 for low speed connection")
>>> CC: <stable@vger.kernel.org> # 4.0
>>> Acked-by: Peter Chen <peter.chen@freescale.com>
>> Just a gentle ping
> it's in my queue, but -rc1 wasn't tagged yet, was it ? In a hurry for
> some reason ?
>

Everything is fine. Sorry for the noise.

Stefan
diff mbox

Patch

diff --git a/drivers/usb/phy/phy-mxs-usb.c b/drivers/usb/phy/phy-mxs-usb.c
index 8f7cb06..3fcc048 100644
--- a/drivers/usb/phy/phy-mxs-usb.c
+++ b/drivers/usb/phy/phy-mxs-usb.c
@@ -217,6 +217,9 @@  static bool mxs_phy_get_vbus_status(struct mxs_phy *mxs_phy)
 {
 	unsigned int vbus_value;
 
+	if (!mxs_phy->regmap_anatop)
+		return false;
+
 	if (mxs_phy->port_id == 0)
 		regmap_read(mxs_phy->regmap_anatop,
 			ANADIG_USB1_VBUS_DET_STAT,