Calling FltDeviceIoControlFile in instance setup

I want to determine if a volume bus type is usb or not.
As I found out i shoud send IOCTL_STORAGE_QUERY_PROPERTY down in my instance setup and set a context for the instance for later use.
But what is the correct way of sending IOCTL in instance setup?

can I use FltDeviceIoControlFile ? the documentation says for the second parameter (File object pointer for the file or device that is the target of this request.) what should i pass to it and how to obtain it?
or I should go with IoBuildDeviceIoControlRequest and DeviceIoControl?

From your Instance Setup callback, you can obtain a file object for the volume by calling FltOpenVolume with FltObjects->Instance from the FltObjects structure passed to the callback and subsequently invoke FltDeviceIoControlFile with FltObjects->Instance and the previously obtained volume file object.

Thanks!