usb: serial: Fix handling of urbs during suspend and resume

This fix handles two race conditions:-
1) Unlinking rx URBs during interface suspend races with completion
of a rx urb, which may cause successful completion of an urb with
actual data with a status of -ECONNRESET. Avoid this race by
anchoring the urb while submission and unlink only anchored urbs
during suspend.

2) Race between write and resume with the possibility of data write
submitting urb immediately before the delayed urbs are played back
during resume. This results in data written by tty driver getting
submitted out of order to HSIC controller.

CRs-Fixed: 371929
Change-Id: I4e9c7e994d643978b9889316b899f0251be807b6
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2 files changed