diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2005-09-14 03:25:19 +0000 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2005-09-14 03:25:19 +0000 |
commit | d2067652d0e22026f7571bee1b1fafff8d6f3949 (patch) | |
tree | e508a0aa29c37454648f48583f8dc4bcf5a51cec /parser/csr.c | |
parent | 03e0f4fcb213cdd8f0a3d69668f7b4af74614f9f (diff) | |
download | hcidump-d2067652d0e22026f7571bee1b1fafff8d6f3949.tar.gz |
Update bool and int16 parsing
Diffstat (limited to 'parser/csr.c')
-rw-r--r-- | parser/csr.c | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/parser/csr.c b/parser/csr.c index 9df3cd7..091d27d 100644 --- a/parser/csr.c +++ b/parser/csr.c @@ -67,6 +67,16 @@ static inline void complex_dump(int level, char *str, struct frame *frm) raw_dump(level, frm); } +static inline void bool_dump(int level, char *str, struct frame *frm) +{ + uint16_t value; + + value = CSR_U16(frm); + + p_indent(level, frm); + printf("%s: value %s (%d)\n", str, value ? "TRUE" : "FALSE", value); +} + static inline void int8_dump(int level, char *str, struct frame *frm) { int16_t value; @@ -77,6 +87,16 @@ static inline void int8_dump(int level, char *str, struct frame *frm) printf("%s: value %d (0x%2.2x)\n", str, value, value); } +static inline void int16_dump(int level, char *str, struct frame *frm) +{ + int16_t value; + + value = CSR_S16(frm); + + p_indent(level, frm); + printf("%s: value %d (0x%2.2x)\n", str, value, value); +} + static inline void uint16_dump(int level, char *str, struct frame *frm) { uint16_t value; @@ -174,8 +194,11 @@ static inline void pskey_dump(int level, struct frame *frm) case 0x010e: uint16_dump(level + 1, "LMP_REMOTE_VERSION", frm); break; + case 0x01a5: + bool_dump(level + 1, "HOSTIO_USE_HCI_EXTN", frm); + break; case 0x01ab: - uint16_dump(level + 1, "HOSTIO_MAP_SCO_PCM", frm); + bool_dump(level + 1, "HOSTIO_MAP_SCO_PCM", frm); break; case 0x01be: uint16_dump(level + 1, "UART_BAUDRATE", frm); @@ -199,7 +222,7 @@ static inline void pskey_dump(int level, struct frame *frm) uint16_dump(level + 1, "USB_DFU_PRODUCT_ID", frm); break; case 0x03cd: - uint16_dump(level + 1, "INITIAL_BOOTMODE", frm); + int16_dump(level + 1, "INITIAL_BOOTMODE", frm); break; default: raw_dump(level + 1, frm); |