mirror of
https://review.coreboot.org/flashrom.git
synced 2025-07-01 22:21:16 +02:00
raiden_debug_spi.c: Disable retry during some error codes
Forward ports the downstream commit: https://chromium-review.googlesource.com/c/chromiumos/third_party/flashrom/+/2073077 Change-Id: I77def28040fea8d1ecf102463180378f8612b00e Signed-off-by: Edward O'Callaghan <quasisec@google.com> Reviewed-on: https://review.coreboot.org/c/flashrom/+/39311 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:

committed by
Edward O'Callaghan

parent
2141250162
commit
8b191f5ced
21
usb_device.h
21
usb_device.h
@ -27,10 +27,18 @@
|
||||
|
||||
#include <libusb.h>
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
/*
|
||||
* The LIBUSB_ERROR macro converts a libusb failure code into an error code that
|
||||
* flashrom recognizes. It does so without displaying an error code allowing us
|
||||
* to compare error codes against the library enumeration values.
|
||||
*/
|
||||
#define LIBUSB_ERROR(eror_code) (0x20000 | -eror_code)
|
||||
|
||||
/*
|
||||
* The LIBUSB macro converts a libusb failure code into an error code that
|
||||
* flashrom recognizes. It also displays additional libusb specific
|
||||
* flashrom recognizes. It also displays additional libusb specific
|
||||
* information about the failure.
|
||||
*/
|
||||
#define LIBUSB(expression) \
|
||||
@ -42,7 +50,7 @@
|
||||
__FILE__, \
|
||||
__LINE__, \
|
||||
libusb_error_name(libusb_error__)); \
|
||||
libusb_error__ = 0x20000 | -libusb_error__; \
|
||||
libusb_error__ = LIBUSB_ERROR(libusb_error__); \
|
||||
} else { \
|
||||
libusb_error__ = 0; \
|
||||
} \
|
||||
@ -50,6 +58,15 @@
|
||||
libusb_error__; \
|
||||
})
|
||||
|
||||
/*
|
||||
* Returns true if the error code falls within the range of valid libusb
|
||||
* error codes.
|
||||
*/
|
||||
static inline bool usb_device_is_libusb_error(int error_code)
|
||||
{
|
||||
return (0x20000 <= error_code && error_code < 0x20064);
|
||||
}
|
||||
|
||||
/*
|
||||
* A USB match and associated value struct are used to encode the information
|
||||
* about a device against which we wish to match. If the value of a
|
||||
|
Reference in New Issue
Block a user