pldev->dev.platform_data = NULL;
static void __init depca_platform_probe (void){	int i;	struct platform_device *pldev;	for (i = 0; depca_io_ports[i].iobase; i++) {		depca_io_ports[i].device = NULL;				/* if an address has been specified on the command		 * line, use it (if valid) */		if (io && io != depca_io_ports[i].iobase)			continue;				if (!(pldev = kmalloc (sizeof (*pldev), GFP_KERNEL)))			continue;		memset (pldev, 0, sizeof (*pldev));		pldev->name = depca_string;		pldev->id   = i;		pldev->dev.platform_data = (void *) depca_io_ports[i].iobase;		pldev->dev.release       = depca_platform_release;		depca_io_ports[i].device = pldev;		if (platform_device_register (pldev)) {			kfree (pldev);			depca_io_ports[i].device = NULL;			continue;		}		if (!pldev->dev.driver) {		/* The driver was not bound to this device, there was		 * no hardware at this address. Unregister it, as the		 * release fuction will take care of freeing the		 * allocated structure */						depca_io_ports[i].device = NULL;			platform_device_unregister (pldev);		}	}}