usb: device: Fix ZLP write race condition
ZLP packet has to be read and acknowledged by host just like any other DATA packet. Do not end transfer until the host actually acknowledged the trailing ZLP. This fixes the race condition between host and Zephyr application where the next transfer could be lost if host did not issue IN token (that would read read ZLP) before the application tried to start new transfer.
Signed-off-by: Tomasz Moń tomasz.mon@nordicsemi.no