fastboot: Extract fastboot_okay/fail to fb_common.c

Add drivers/fastboot/fb_common.c, where fastboot_okay/fail are implemented
so we can call them from a non-USB implementation.

Introduce fastboot_response which takes varargs parameters so we can
use it to generate formatted response strings. Refactor fastboot_okay/fail
to use it.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
This commit is contained in:
Alex Kiernan
2018-05-29 15:30:41 +00:00
committed by Marek Vasut
parent c4ded03ef6
commit d2df2abbcd
5 changed files with 88 additions and 16 deletions

View File

@@ -15,7 +15,31 @@
/* The 64 defined bytes plus \0 */
#define FASTBOOT_RESPONSE_LEN (64 + 1)
/**
* fastboot_response() - Writes a response of the form "$tag$reason".
*
* @tag: The first part of the response
* @response: Pointer to fastboot response buffer
* @format: printf style format string
*/
void fastboot_response(const char *tag, char *response,
const char *format, ...)
__attribute__ ((format (__printf__, 3, 4)));
/**
* fastboot_fail() - Write a FAIL response of the form "FAIL$reason".
*
* @reason: Pointer to returned reason string
* @response: Pointer to fastboot response buffer
*/
void fastboot_fail(const char *reason, char *response);
/**
* fastboot_okay() - Write an OKAY response of the form "OKAY$reason".
*
* @reason: Pointer to returned reason string, or NULL to send a bare "OKAY"
* @response: Pointer to fastboot response buffer
*/
void fastboot_okay(const char *reason, char *response);
#endif /* _FASTBOOT_H_ */