usb: ehci-sh: fix illegal phy_init() running when platform_data is NULL

If the platform_data is not set, pdata will be uninitialized value.
Since the driver has the following code, if the condition is true when
the pdata is uninitialized value, the driver may jump to the illegal
phy_init().

	if (pdata && pdata->phy_init)
		pdata->phy_init();

This patch also fixes the following warning:

  CC      drivers/usb/host/ehci-hcd.o
drivers/usb/host/ehci-sh.c: In function ‘ehci_hcd_sh_probe’:
drivers/usb/host/ehci-sh.c:104: warning: ‘pdata’ may be used uninitialized in this function

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Shimoda, Yoshihiro 2012-06-12 09:34:33 +09:00 коммит произвёл Greg Kroah-Hartman
Родитель 6c4707f3f8
Коммит 5897b03829
1 изменённых файлов: 1 добавлений и 2 удалений

Просмотреть файл

@ -126,8 +126,7 @@ static int ehci_hcd_sh_probe(struct platform_device *pdev)
goto fail_create_hcd; goto fail_create_hcd;
} }
if (pdev->dev.platform_data != NULL) pdata = pdev->dev.platform_data;
pdata = pdev->dev.platform_data;
/* initialize hcd */ /* initialize hcd */
hcd = usb_create_hcd(&ehci_sh_hc_driver, &pdev->dev, hcd = usb_create_hcd(&ehci_sh_hc_driver, &pdev->dev,