&db8500_prcmu_device,
 };
 
-static struct platform_device *of_platform_devs[] __initdata = {
-       &u8500_dma40_device,
-};
-
 static resource_size_t __initdata db8500_gpio_base[] = {
        U8500_GPIOBANK0_BASE,
        U8500_GPIOBANK1_BASE,
 struct device * __init u8500_of_init_devices(void)
 {
        struct device *parent;
-       int i;
 
        parent = db8500_soc_device_init();
 
        platform_device_register_data(parent,
                "cpufreq-u8500", -1, NULL, 0);
 
-       for (i = 0; i < ARRAY_SIZE(of_platform_devs); i++)
-               of_platform_devs[i]->dev.parent = parent;
+       u8500_dma40_device.dev.parent = parent;
 
        /*
         * Devices to be DT:ed:
         *   db8500_pmu_device   = done
         *   db8500_prcmu_device = done
         */
-       platform_add_devices(of_platform_devs, ARRAY_SIZE(of_platform_devs));
+       platform_device_register(&u8500_dma40_device);
 
        return parent;
 }