static int __init camera_setup(void) { if (camera_probe() > 0) platform_device_register(&camera_device); return 0; }
static int ap325rxa_camera_add(struct soc_camera_link *icl, struct device *dev) { if (icl != &camera_link || camera_probe() <= 0) return -ENODEV; camera_info.dev = dev; return platform_device_register(&camera_device); }
static int ap325rxa_camera_add(struct soc_camera_device *icd) { int ret = soc_camera_platform_add(icd, &camera_device, &camera_link, ap325rxa_camera_release, 0); if (ret < 0) return ret; ret = camera_probe(); if (ret < 0) soc_camera_platform_del(icd, camera_device, &camera_link); return ret; }