static int zynqmp_firmware_probe(struct platform_device *pdev)
 {
        struct device *dev = &pdev->dev;
-       struct device_node *np;
        struct zynqmp_devinfo *devinfo;
        int ret;
 
 
        zynqmp_pm_api_debugfs_init();
 
-       np = of_find_compatible_node(NULL, NULL, "xlnx,versal");
-       if (np) {
+       if (pm_family_code == VERSAL_FAMILY_CODE) {
                em_dev = platform_device_register_data(&pdev->dev, "xlnx_event_manager",
                                                       -1, NULL, 0);
                if (IS_ERR(em_dev))
                        dev_err_probe(&pdev->dev, PTR_ERR(em_dev), "EM register fail with error\n");
        }
-       of_node_put(np);
 
        return of_platform_populate(dev->of_node, NULL, NULL, dev);
 }