MLK-11896-3 usb: chipidea: imx: add NULL check for usbmisc_data
Check if data->usbmisc_data is NULL before dereference it in probe. Acked-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Li Jun <jun.li@freescale.com>
This commit is contained in:
parent
c9560581d2
commit
2fa1f7fc38
|
@ -531,7 +531,8 @@ static int ci_hdrc_imx_probe(struct platform_device *pdev)
|
|||
if (pdata.flags & CI_HDRC_SUPPORTS_RUNTIME_PM)
|
||||
data->supports_runtime_pm = true;
|
||||
|
||||
if (data->usbmisc_data->index > 1 && (imx_has_hsic_con(data))) {
|
||||
if (data->usbmisc_data && data->usbmisc_data->index > 1
|
||||
&& (imx_has_hsic_con(data))) {
|
||||
pdata.flags |= CI_HDRC_IMX_IS_HSIC;
|
||||
data->hsic_pad_regulator = devm_regulator_get(&pdev->dev,
|
||||
"pad");
|
||||
|
@ -559,7 +560,7 @@ static int ci_hdrc_imx_probe(struct platform_device *pdev)
|
|||
}
|
||||
}
|
||||
|
||||
if (of_find_property(np, "fsl,anatop", NULL)) {
|
||||
if (of_find_property(np, "fsl,anatop", NULL) && data->usbmisc_data) {
|
||||
data->anatop = syscon_regmap_lookup_by_phandle(np,
|
||||
"fsl,anatop");
|
||||
if (IS_ERR(data->anatop)) {
|
||||
|
@ -568,11 +569,11 @@ static int ci_hdrc_imx_probe(struct platform_device *pdev)
|
|||
ret = PTR_ERR(data->anatop);
|
||||
goto disable_hsic_regulator;
|
||||
}
|
||||
if (data->usbmisc_data)
|
||||
data->usbmisc_data->anatop = data->anatop;
|
||||
data->usbmisc_data->anatop = data->anatop;
|
||||
}
|
||||
|
||||
if (of_find_property(np, "imx-usb-charger-detection", NULL)) {
|
||||
if (of_find_property(np, "imx-usb-charger-detection", NULL) &&
|
||||
data->usbmisc_data) {
|
||||
data->imx_usb_charger_detection = true;
|
||||
data->charger.dev = &pdev->dev;
|
||||
data->usbmisc_data->charger = &data->charger;
|
||||
|
@ -615,7 +616,8 @@ static int ci_hdrc_imx_probe(struct platform_device *pdev)
|
|||
}
|
||||
|
||||
/* usbmisc needs to know dr mode to choose wakeup setting */
|
||||
data->usbmisc_data->available_role =
|
||||
if (data->usbmisc_data)
|
||||
data->usbmisc_data->available_role =
|
||||
ci_hdrc_query_available_role(data->ci_pdev);
|
||||
|
||||
if (data->supports_runtime_pm) {
|
||||
|
|
Loading…
Reference in a new issue