Changeset 019cff6 in mainline
- Timestamp:
- 2011-03-04T20:11:22Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- ff4185e6
- Parents:
- 3faf416c
- Location:
- uspace
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/usbmouse/main.c
r3faf416c r019cff6 74 74 int main(int argc, char *argv[]) 75 75 { 76 usb_log_enable(USB_LOG_LEVEL_DEBUG , NAME);76 usb_log_enable(USB_LOG_LEVEL_DEBUG2, NAME); 77 77 78 78 return ddf_driver_main(&mouse_driver); -
uspace/drv/usbmouse/mouse.c
r3faf416c r019cff6 94 94 } 95 95 96 usb_log_debug2("got buffer: %s.\n", 97 usb_debug_str_buffer(buffer, buffer_size, 0)); 98 96 99 uint8_t butt = buffer[0]; 97 100 char str_buttons[4] = { -
uspace/lib/usb/include/usb/debug.h
r3faf416c r019cff6 79 79 usb_log_printf(USB_LOG_LEVEL_DEBUG2, format, ##__VA_ARGS__) 80 80 81 const char *usb_debug_str_buffer(uint8_t *, size_t, size_t); 81 82 82 83 -
uspace/lib/usb/src/debug.c
r3faf416c r019cff6 252 252 } 253 253 254 255 #define BUFFER_DUMP_LEN 512 256 static fibril_local char buffer_dump[BUFFER_DUMP_LEN]; 257 258 /** Dump buffer into string. 259 * 260 * The function dumps given buffer into hexadecimal format and stores it 261 * in a static fibril local string. 262 * That means that you do not have to deallocate the string (actually, you 263 * can not do that) and you do not have to save it agains concurrent 264 * calls to it. 265 * The only limitation is that each call rewrites the buffer again. 266 * Thus, it is necessary to copy the buffer elsewhere (that includes printing 267 * to screen or writing to file). 268 * Since this function is expected to be used for debugging prints only, 269 * that is not a big limitation. 270 * 271 * @warning You cannot use this function twice in the same printf 272 * (see detailed explanation). 273 * 274 * @param buffer Buffer to be printed (can be NULL). 275 * @param size Size of the buffer in bytes (can be zero). 276 * @param dumped_size How many bytes to actually dump (zero means all). 277 * @return Dumped buffer as a static (but fibril local) string. 278 */ 279 const char *usb_debug_str_buffer(uint8_t *buffer, size_t size, 280 size_t dumped_size) 281 { 282 if (buffer == NULL) { 283 return "(null)"; 284 } 285 if (size == 0) { 286 return "(empty)"; 287 } 288 if ((dumped_size == 0) || (dumped_size > size)) { 289 dumped_size = size; 290 } 291 292 char *it = buffer_dump; 293 294 size_t index = 0; 295 296 while (1) { 297 /* FIXME: add range checking of the buffer size. */ 298 snprintf(it, 4, "%02X ", (int) buffer[index]); 299 it += 3; 300 index++; 301 if (index >= dumped_size) { 302 break; 303 } 304 } 305 306 /* Remove the last space */ 307 it--; 308 *it = 0; 309 310 return buffer_dump; 311 } 312 313 254 314 /** 255 315 * @}
Note:
See TracChangeset
for help on using the changeset viewer.