Remove driver for a device and probe for a new driver
int device_reprobe(struct device * dev);
dev
the device to reprobe
This function detaches the attached driver (if any) for the given device and restarts the driver probing process. It is intended to use if probing criteria changed during a devices lifetime and driver attachment should change accordingly.