usb_dev: Do not bulk read chip before getting an IN token

Do not pre-buffer chip contents before host sends an IN token. This
solves cases where the host writes to the chip, then reads the same
region, getting back the pre-buffered data instead of the new data.

This requires a new callback to be passed to the qiprog logic.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>