OSDN Git Service

cnss2: Initialize plat_priv during bus_init
authorJayachandran Sreekumaran <jsreekum@codeaurora.org>
Tue, 26 Mar 2019 06:35:48 +0000 (12:05 +0530)
committerJayachandran Sreekumaran <jsreekum@codeaurora.org>
Tue, 26 Mar 2019 06:57:47 +0000 (12:27 +0530)
cnss_usb_data structure member plat_priv remains uninitialized till
the function invoke of cnss_usb_probe. This leads to the access of
uninitialized pointer plat_priv if CLD gets loaded prior to
firmware download completion. Hence initialize the plat_priv
in cnss_usb_data structure during cnss_usb_init.

Change-Id: Ic471eacf22b112aaffe61458e22c7a9102470467
Signed-off-by: Jayachandran Sreekumaran <jsreekum@codeaurora.org>
drivers/net/wireless/cnss2/usb.c

index b196e9f..cf4137a 100644 (file)
@@ -415,6 +415,8 @@ int cnss_usb_init(struct cnss_plat_data *plat_priv)
                goto out;
        }
 
+       usb_priv = plat_priv->bus_priv;
+       usb_priv->plat_priv = plat_priv;
        ret = usb_register(&cnss_usb_driver);
        if (ret) {
                cnss_pr_err("Failed to register to Linux USB framework, err = %d\n",