Hi,
To put it in a simple way, the capture driver is meant for platforms having/using the IPU (i.MX6Q, i.MX6QP, i.MX6DL etc...). Whereas the subdev is targeting the other platforms (i.MX6SL, i.MX6SX, i.MX7 etc...).
So depending on the platform you use, you have to pick one or the other driver.
Hope this helps.
Regards,
Gary