summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Hughes <tomhughes@chromium.org>2022-09-16 15:47:56 -0700
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-09-19 22:30:41 +0000
commite49ffc01c1b2f0e174fdd11c5ac15db9eeaf12ca (patch)
tree18911df0b57d1d67ebdeb7c9901359ac99ce7869
parent6278fe9df729c6816eafbea2169968170ac2a714 (diff)
downloadchrome-ec-e49ffc01c1b2f0e174fdd11c5ac15db9eeaf12ca.tar.gz
util: Add explicit casts
When compiling with C++, the implicit casting that is performed in C is disallowed. Add casts in preparation for C++ compatibility. BRANCH=none BUG=b:144959033 TEST=make buildall Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: Ifcd3351bb09786e37138dcb59a566e1db0e5aa9e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3902649 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
-rw-r--r--util/comm-usb.c26
-rw-r--r--util/ectool.c2
2 files changed, 19 insertions, 9 deletions
diff --git a/util/comm-usb.c b/util/comm-usb.c
index 61d13146af..3d481b5532 100644
--- a/util/comm-usb.c
+++ b/util/comm-usb.c
@@ -17,9 +17,7 @@
#include "misc_util.h"
#include "usb_descriptor.h"
-#define USB_ERROR(m, r) \
- fprintf(stderr, "%s:%d, %s returned %d (%s)\n", __FILE__, __LINE__, m, \
- r, libusb_strerror(r))
+#define USB_ERROR(m, r) print_libusb_error(__FILE__, __LINE__, m, r)
#ifdef DEBUG
#define debug(fmt, arg...) \
@@ -37,6 +35,16 @@ struct usb_endpoint {
struct usb_endpoint uep;
+static void print_libusb_error(const char *file, int line, const char *message,
+ int error_code)
+{
+ /*
+ * TODO(b/247573723): Remove cast when libusb is upgraded.
+ */
+ fprintf(stderr, "%s:%d, %s returned %d (%s)\n", file, line, message,
+ error_code, libusb_strerror((enum libusb_error)error_code));
+}
+
void comm_usb_exit(void)
{
debug("Exit libusb.\n");
@@ -65,8 +73,9 @@ static int do_xfer(struct usb_endpoint *uep, void *outbuf, int outlen,
/* Send data out */
if (outbuf && outlen) {
actual = 0;
- r = libusb_bulk_transfer(uep->devh, uep->ep_num, outbuf, outlen,
- &actual, 2000);
+ r = libusb_bulk_transfer(uep->devh, uep->ep_num,
+ (uint8_t *)outbuf, outlen, &actual,
+ 2000);
if (r != 0) {
USB_ERROR("libusb_bulk_transfer", r);
return r;
@@ -87,7 +96,8 @@ static int do_xfer(struct usb_endpoint *uep, void *outbuf, int outlen,
* actual is a multiple of ep->wMaxPacketSize.
*/
r = libusb_bulk_transfer(uep->devh, uep->ep_num | USB_DIR_IN,
- inbuf, inlen, &actual, 5000);
+ (uint8_t *)inbuf, inlen, &actual,
+ 5000);
if (r != 0) {
USB_ERROR("libusb_bulk_transfer", r);
return r;
@@ -297,9 +307,9 @@ static int ec_command_usb(int command, int version, const void *outdata,
assert(insize == 0 || indata != NULL);
req_len = sizeof(*req) + outsize;
- req = malloc(req_len);
+ req = (struct ec_host_request *)malloc(req_len);
res_len = sizeof(*res) + insize;
- res = malloc(res_len);
+ res = (struct ec_host_response *)malloc(res_len);
if (req == NULL || res == NULL)
goto out;
diff --git a/util/ectool.c b/util/ectool.c
index d46a44f6a3..b05e75d14e 100644
--- a/util/ectool.c
+++ b/util/ectool.c
@@ -1379,7 +1379,7 @@ static int cmd_rgbkbd_set_color(int argc, char *argv[])
int rv = -1;
outlen = sizeof(*p) + sizeof(struct rgb_s) * EC_RGBKBD_MAX_KEY_COUNT;
- p = malloc(outlen);
+ p = (struct ec_params_rgbkbd_set_color *)malloc(outlen);
if (p == NULL)
return -1;
memset(p, 0, outlen);