mirror of
https://review.coreboot.org/flashrom.git
synced 2025-07-02 14:33:18 +02:00
dediprog: Init-shutdown test for dediprog
This patch adds mocks for libusb functions. To avoid dependency on libusb.h, libusb symbols for context and device handle are redefined. Real libusb functions are never called in tests anyway, cmocka wraps work with this without complaints. BUG=b:181803212 TEST=builds and ninja test Change-Id: I38508dfb6d7c24d42522f22fcae0c5e410c5f7ea Signed-off-by: Anastasia Klimchuk <aklm@chromium.org> Reviewed-on: https://review.coreboot.org/c/flashrom/+/55934 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nico Huber <nico.h@gmx.de> Reviewed-by: Edward O'Callaghan <quasisec@chromium.org>
This commit is contained in:

committed by
Edward O'Callaghan

parent
9420043986
commit
02bc0b2c53
@ -85,6 +85,40 @@ void mec1308_init_and_shutdown_test_success(void **state)
|
||||
#endif
|
||||
}
|
||||
|
||||
int dediprog_libusb_control_transfer(void *state,
|
||||
libusb_device_handle *devh,
|
||||
uint8_t bmRequestType,
|
||||
uint8_t bRequest,
|
||||
uint16_t wValue,
|
||||
uint16_t wIndex,
|
||||
unsigned char *data,
|
||||
uint16_t wLength,
|
||||
unsigned int timeout)
|
||||
{
|
||||
if (bRequest == 0x08 /* dediprog_cmds CMD_READ_PROG_INFO */) {
|
||||
/* Provide dediprog Device String into data buffer */
|
||||
memcpy(data, "SF600 V:7.2.2 ", wLength);
|
||||
}
|
||||
return wLength;
|
||||
}
|
||||
|
||||
void dediprog_init_and_shutdown_test_success(void **state)
|
||||
{
|
||||
#if CONFIG_DEDIPROG == 1
|
||||
const struct io_mock dediprog_io = {
|
||||
.libusb_control_transfer = dediprog_libusb_control_transfer,
|
||||
};
|
||||
|
||||
io_mock_register(&dediprog_io);
|
||||
|
||||
run_lifecycle(state, &programmer_dediprog, "voltage=3.5V");
|
||||
|
||||
io_mock_register(NULL);
|
||||
#else
|
||||
skip();
|
||||
#endif
|
||||
}
|
||||
|
||||
struct ene_lpc_io_state {
|
||||
unsigned char outb_val;
|
||||
int pause_cmd;
|
||||
|
Reference in New Issue
Block a user