diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2006-02-23 19:46:08 +0000 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2006-02-23 19:46:08 +0000 |
commit | 0fe4da23f22cf74624a4576fb879d6dd500dfc5c (patch) | |
tree | f91c70935d746be05ccb4cec56c3785207ee7dc5 /hcid/device.c | |
parent | 612dd53c6c324bad414b67465f77a54e4da840a2 (diff) |
Add revision information for Broadcom chips
Diffstat (limited to 'hcid/device.c')
-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; |