usb: chipidea: ci_hdrc_imx: add null check for usbmisc

This commit is contained in:
Suguru Saito 2021-12-26 21:25:09 +09:00
parent 30f2bc6cf9
commit 1834ea3514
1 changed files with 10 additions and 7 deletions

View File

@ -470,13 +470,15 @@ static int ci_hdrc_imx_probe(struct platform_device *pdev)
goto err_clk;
}
if (!IS_ERR(pdata.id_extcon.edev) ||
of_property_read_bool(np, "usb-role-switch"))
data->usbmisc_data->ext_id = 1;
if ((!IS_ERR(pdata.id_extcon.edev) ||
of_property_read_bool(np, "usb-role-switch")) &&
!IS_ERR_OR_NULL(data->usbmisc_data))
data->usbmisc_data->ext_id = 1;
if (!IS_ERR(pdata.vbus_extcon.edev) ||
of_property_read_bool(np, "usb-role-switch"))
data->usbmisc_data->ext_vbus = 1;
if ((!IS_ERR(pdata.vbus_extcon.edev) ||
of_property_read_bool(np, "usb-role-switch")) &&
!IS_ERR_OR_NULL(data->usbmisc_data))
data->usbmisc_data->ext_vbus = 1;
ret = imx_usbmisc_init_post(data->usbmisc_data);
if (ret) {
@ -485,7 +487,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 (!IS_ERR_OR_NULL(data->usbmisc_data))
data->usbmisc_data->available_role =
ci_hdrc_query_available_role(data->ci_pdev);
if (data->supports_runtime_pm) {