diff options
Diffstat (limited to 'hcid')
| -rw-r--r-- | hcid/device.c | 7 | 
1 files changed, 7 insertions, 0 deletions
| diff --git a/hcid/device.c b/hcid/device.c index c52730b4..25089fb4 100644 --- a/hcid/device.c +++ b/hcid/device.c @@ -72,6 +72,7 @@ struct hci_conn {  struct hci_dev {  	bdaddr_t bdaddr;  	uint8_t  features[8]; +	uint8_t  hci_rev;  	uint8_t  lmp_ver;  	uint16_t lmp_subver;  	uint16_t manufacturer; @@ -174,6 +175,7 @@ int start_device(uint16_t dev_id)  		return -errno;  	} +	dev->hci_rev = ver.hci_rev;  	dev->lmp_ver = ver.lmp_ver;  	dev->lmp_subver = ver.lmp_subver;  	dev->manufacturer = ver.manufacturer; @@ -307,6 +309,11 @@ int get_device_revision(uint16_t dev_id, char *revision, size_t size)  	case 12:  		err = digi_revision(dev_id, revision, size);  		break; +	case 15: +		err = snprintf(revision, size, "%d.%d / %d", +				dev->hci_rev & 0xff, +				dev->lmp_subver >> 8, dev->lmp_subver & 0xff); +		break;  	default:  		err = snprintf(revision, size, "0x%02x", dev->lmp_subver);  		break; | 
