From ef22de835ccf8c7c394dbd601c0ca1d7a4ab1681 Mon Sep 17 00:00:00 2001 From: Hsiu-Chang Chen Date: Wed, 12 Jan 2022 13:42:05 +0800 Subject: wcn6740: initialize sscd platform device before register cnss_pci probe will retry when probe fails. Because the sscd platform device is defined as a static variable, we need to initialize the sscd platform device before registering to prevent using corrupted data. Bug: 213957306 Test: Device can boot after reprobe Change-Id: Id767ef9f63e7f41263a9ef962fe1ddf0e2baef7d --- cnss2/pci_platform_google.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/cnss2/pci_platform_google.c b/cnss2/pci_platform_google.c index 869eac0..6266f58 100644 --- a/cnss2/pci_platform_google.c +++ b/cnss2/pci_platform_google.c @@ -206,6 +206,13 @@ static struct platform_device sscd_dev = { void cnss_register_sscd(void) { + memset(&sscd_pdata, 0, sizeof(struct sscd_platform_data)); + memset(&sscd_dev, 0, sizeof(struct platform_device)); + sscd_dev.name = DEVICE_NAME; + sscd_dev.driver_override = SSCD_NAME; + sscd_dev.id = -1; + sscd_dev.dev.platform_data = &sscd_pdata; + sscd_dev.dev.release = sscd_release; platform_device_register(&sscd_dev); } -- cgit v1.2.3