MLK-12302 caam: Secure Memory platform device creation crashes
authorDan Douglass <dan.douglass@freescale.com>
Wed, 20 Jan 2016 19:31:56 +0000 (13:31 -0600)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 19:49:56 +0000 (14:49 -0500)
There is new flag that is checked in of_platform_device_create().
The flag is cleared prior to the call now so the device creates
successfully.

Signed-off-by: Dan Douglass <dan.douglass@nxp.com>
drivers/crypto/caam/sm_store.c

index 21d4d82..2af1e5c 100644 (file)
@@ -36,6 +36,7 @@
 #include "intern.h"
 #include "error.h"
 #include "sm.h"
+#include <linux/of_address.h>
 
 #define SECMEM_KEYMOD_LEN 8
 #define GENMEM_KEYMOD_LEN 16
@@ -1013,6 +1014,8 @@ int caam_sm_startup(struct platform_device *pdev)
        /* Create the dev */
 #ifdef CONFIG_OF
        np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-caam-sm");
+       if (np)
+               of_node_clear_flag(np, OF_POPULATED);
        sm_pdev = of_platform_device_create(np, "caam_sm", ctrldev);
 #else
        sm_pdev = platform_device_register_data(ctrldev, "caam_sm", 0,