Hello Amer Naseem,
Some USB devices like storage devices may be recognized as the USB driver on the image has built in support, while other devices may require additional drivers which are usually provided by the manufacturer.
The sources are fetched by Yocto in order to build the image. You can find them on the directories inside your build directory. The path may differ between BSP releases buy it’s usually:
/<BSP_DIR>/<BUILD_DIR>/tmp/work/>MACHINE>-poky-linux-gnueabi/<RECIPE>
There is not an ADK per se for Linux. The BSP should serve you as starting point on your application. However, it is based in Yocto, which is focused on distribution rather than development, so it’s recommended that you extract the toolchain for the processor and develop outside of Yocto. You can find more details on how to extract the toolchain from the i.MX Yocto User’s Guide.
I hope this helps!
Regards,