diff options
| author | Bdale Garbee <bdale@gag.com> | 2016-09-05 21:01:35 -0600 | 
|---|---|---|
| committer | Bdale Garbee <bdale@gag.com> | 2016-09-05 21:01:35 -0600 | 
| commit | 6af87e5cf98e644d2455faf6526a9f11880686f5 (patch) | |
| tree | d23017ea0a0fd693cbef18979c35cfca7ce1db69 /ao-tools/lib/ao-selfload.c | |
| parent | 6ec9f2a78aa8c99d48006b14c936c59edd08addf (diff) | |
| parent | 168c39a37415b1bdc09aa00bbaaafb5d879ce8bd (diff) | |
Merge branch 'branch-1.6' into debian
Diffstat (limited to 'ao-tools/lib/ao-selfload.c')
| -rw-r--r-- | ao-tools/lib/ao-selfload.c | 40 | 
1 files changed, 39 insertions, 1 deletions
| diff --git a/ao-tools/lib/ao-selfload.c b/ao-tools/lib/ao-selfload.c index 41e45adc..0a23dfda 100644 --- a/ao-tools/lib/ao-selfload.c +++ b/ao-tools/lib/ao-selfload.c @@ -3,7 +3,8 @@   *   * This program is free software; you can redistribute it and/or modify   * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version.   *   * This program is distributed in the hope that it will be useful, but   * WITHOUT ANY WARRANTY; without even the implied warranty of @@ -156,3 +157,40 @@ ao_self_get_uint32(struct cc_usb *cc, uint32_t addr)  	free(hex);  	return v;  } + +bool +ao_self_get_usb_id(struct cc_usb *cc, struct ao_usb_id *id) +{ +	struct ao_hex_image	*hex; +	bool			ret; + +	if (!AO_USB_DESCRIPTORS) +		return false; + +	hex = ao_self_read(cc, AO_USB_DESCRIPTORS, 512); +	if (!hex) +		return false; + +	ret = ao_heximage_usb_id(hex, id); +	free(hex); +	return ret; +} + +uint16_t * +ao_self_get_usb_product(struct cc_usb *cc) +{ +	struct ao_hex_image	*hex; +	uint16_t 		*ret; + +	if (!AO_USB_DESCRIPTORS) +		return NULL; + +	hex = ao_self_read(cc, AO_USB_DESCRIPTORS, 512); +	if (!hex) +		return NULL; + +	ret = ao_heximage_usb_product(hex); +	free(hex); +	return ret; +} + | 
