CHERRY-PICK: usb_pd: Retry sending VDMs on transmit failure.
CHERRY-PICK: usb_pd: Retry sending VDMs on transmit failure.

When VDM messages are queued up to be sent and encounter a transmit
failure, there are no retry mechanisms in place. This leads to cases
where we think we had sent a reply but it wasn't actually sent and
violates the PD 2.0+ spec.

This commit simply attempts to retry sending the VDM when it encounters
an error.

BUG=b:117902978
BRANCH=firmware-nocturne-10984.B
TEST=Flash nocturne; Plug in Apple 87W USB-C charger, verify that
retries are attempted when a reply to DiscIdent fails to be transmitted.

Signed-off-by: Aseda Aboagye <12c9b286316a940fd31c24070da5ab64cdd4d0e7@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/1288036
Commit-Queue: Aseda Aboagye <12c9b286316a940fd31c24070da5ab64cdd4d0e7@chromium.org>
Tested-by: Aseda Aboagye <12c9b286316a940fd31c24070da5ab64cdd4d0e7@chromium.org>
Reviewed-by: Jett Rink <9d4aef0593e6843318d99df31597fb6153b89787@chromium.org>
Change-Id: I9c0ed392e27482e4e0b87cfa52b82941e3679eb5
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2160869
Reviewed-by: Aseda Aboagye <12c9b286316a940fd31c24070da5ab64cdd4d0e7@chromium.org>
Tested-by: Patryk Duda <6aed17a362577cf10cb5675888c1635d522769c1@semihalf.com>
Commit-Queue: Patryk Duda <6aed17a362577cf10cb5675888c1635d522769c1@semihalf.com>

coreboot/chrome-ec,coreboot/chrome-ec,coreboot/chrome-ec,coreboot/chrome-ec,coreboot/chrome-ec,coreboot/chrome-ec