From: Antonio Ospite Date: Wed, 14 Nov 2012 14:41:48 +0000 (+0100) Subject: am7xxx: reference am7xxx_usb_device_descriptor in struct _am7xxx_device X-Git-Tag: v0.1.4~37^2~2 X-Git-Url: https://git.ao2.it/libam7xxx.git/commitdiff_plain/521c3915354a7119b67969fe9824b31710d732ca?ds=sidebyside am7xxx: reference am7xxx_usb_device_descriptor in struct _am7xxx_device This makes it possible to retrieve info from the am7xxx device descriptor starting from an am7xxx_device. --- diff --git a/src/am7xxx.c b/src/am7xxx.c index c080660..e809c55 100644 --- a/src/am7xxx.c +++ b/src/am7xxx.c @@ -109,6 +109,7 @@ struct _am7xxx_device { uint8_t buffer[AM7XXX_HEADER_WIRE_SIZE]; am7xxx_device_info *device_info; am7xxx_context *ctx; + const struct am7xxx_usb_device_descriptor *desc; am7xxx_device *next; }; @@ -451,7 +452,8 @@ static void log_message(am7xxx_context *ctx, return; } -static am7xxx_device *add_new_device(am7xxx_context *ctx) +static am7xxx_device *add_new_device(am7xxx_context *ctx, + const struct am7xxx_usb_device_descriptor *desc) { am7xxx_device **devices_list; am7xxx_device *new_device; @@ -469,6 +471,7 @@ static am7xxx_device *add_new_device(am7xxx_context *ctx) memset(new_device, 0, sizeof(*new_device)); new_device->ctx = ctx; + new_device->desc = desc; devices_list = &(ctx->devices_list); @@ -565,7 +568,7 @@ static int scan_devices(am7xxx_context *ctx, scan_op op, info(ctx, "am7xxx device found, index: %d, name: %s\n", current_index, supported_devices[j].name); - new_device = add_new_device(ctx); + new_device = add_new_device(ctx, &supported_devices[j]); if (new_device == NULL) { /* XXX, the caller may want * to call am7xxx_shutdown() if