IDENTIFY_DEVICE_DATA - Question?

Simple question:-

I need to report something different (manipulate the IDENTIFY_DEVICE_DATA
structure) to the OS when it queries the drives for it:-

Which is the best place to do this?
Or to put in a different way, when does the OS query for the
IDENTIFY_DEVICE_DATA for each drive that is connected to the system.

Does it do this by sending this IOCTL_SCSI_MINIPORT_IDENTIFY control code in
the SRB?

Can someone please clarify?

I can do the change in the structure when i issue the identify device
command to the drive in the driver, but i need to report this modifed status
only to the OS (WinxP or Vista)
So only for the OS, the drive appears a bit-different.

Thanks!