Hello Eyal Reizer, The patch 6e91d48371e7: "wlcore: sdio: check for valid platform device data before suspend" from May 28, 2018, leads to the following static checker warning: drivers/net/wireless/ti/wlcore/sdio.c:404 wl1271_suspend() warn: missing error code here? 'platform_get_drvdata()' failed. 'ret' = '0' drivers/net/wireless/ti/wlcore/sdio.c 391 #ifdef CONFIG_PM 392 static int wl1271_suspend(struct device *dev) 393 { 394 /* Tell MMC/SDIO core it's OK to power down the card 395 * (if it isn't already), but not to remove it completely */ 396 struct sdio_func *func = dev_to_sdio_func(dev); 397 struct wl12xx_sdio_glue *glue = sdio_get_drvdata(func); 398 struct wl1271 *wl = platform_get_drvdata(glue->core); 399 mmc_pm_flag_t sdio_flags; 400 int ret = 0; 401 402 if (!wl) { 403 dev_err(dev, "no wilink module was probed\n"); 404 goto out; We should set -ENOMEM or something? 405 } 406 407 dev_dbg(dev, "wl1271 suspend. wow_enabled: %d\n", 408 wl->wow_enabled); 409 410 /* check whether sdio should keep power */ 411 if (wl->wow_enabled) { 412 sdio_flags = sdio_get_host_pm_caps(func); 413 414 if (!(sdio_flags & MMC_PM_KEEP_POWER)) { 415 dev_err(dev, "can't keep power while host " 416 "is suspended\n"); 417 ret = -EINVAL; 418 goto out; 419 } 420 421 /* keep power while host suspended */ 422 ret = sdio_set_host_pm_flags(func, MMC_PM_KEEP_POWER); 423 if (ret) { 424 dev_err(dev, "error while trying to keep power\n"); 425 goto out; 426 } 427 } 428 out: 429 return ret; 430 } regards, dan carpenter