| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
nxgdb/circbuf: add command to dump circbuf data Dump the basic information of a circle buffer, optionally dump the history data it contains. Print with easy to read data type. --unread is to dump all data that hasn't been read. E.g. (gdb) circbuf 0x61c90340 --type "struct touch_sample_s" --history (struct circbuf_s *)0x61c90340 base: 0x61c902f0 size: 64 head: 5312 tail: 5248 Dumping history data with type struct touch_sample_s 0: struct touch_sample_s {npoints = 1, point = {{id = 0 '\000', flags = 26 '\032', x = 277, y = 311, h = 0, w = 0, gesture = 255, pressure = 0, timestamp = 157856200}}} 1: struct touch_sample_s {npoints = 1, point = {{id = 0 '\000', flags = 28 '\034', x = 277, y = 311, h = 0, w = 0, gesture = 255, pressure = 0, timestamp = 157872000}}} (gdb) Note the way I find 0x61c90340 is a circle buffer is through below steps. 1. Use fdinfo to dump all the fd and notice the filep associated with /dev/inputN device. 2. print the content of filep: p *(struct file *)0x61c8c0c0 3. Check nuttx/drivers/input/touchscreen_upper.c we can see the type of filep->f_priv is struct touch_openpriv_s *, print it 4. p *(struct touch_openpriv_s *)0x61c90340 5. circbuf is at offset 0 of touch_openpriv_s struct. Use p &((struct touch_openpriv_s *)0x61c90340)->circbuf also works. Signed-off-by: xuxingliang <xuxingliang@xiaomi.com> | 2 个月前 | |
pynuttx/fs: update py base on new structure fd and file Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com> | 2 个月前 | |
nxgdb/irq: add irqinfo command (gdb) irqinfo IRQ COUNT TIME RATE HANDLER ARGUMENT 0 0 0 N/A mps_reserved 0x0 <sensor_unregister> 2 0 0 N/A mps_nmi 0x0 <sensor_unregister> 3 0 0 N/A arm_hardfault 0x0 <sensor_unregister> 4 0 0 N/A arm_memfault 0x0 <sensor_unregister> 5 0 0 N/A arm_busfault 0x0 <sensor_unregister> 6 0 0 N/A arm_usagefault 0x0 <sensor_unregister> 11 1 0 N/A arm_svcall 0x0 <sensor_unregister> 12 0 0 N/A arm_dbgmonitor 0x0 <up_debugpoint_remove> 14 0 0 N/A mps_pendsv 0x0 <up_debugpoint_remove> 15 6581421 0 N/A systick_interrupt 0x100010c <g_systick_lower> 49 2 0 N/A uart_cmsdk_tx_interrupt 0x1000010 <g_uart0port> 50 0 0 N/A uart_cmsdk_rx_interrupt 0x1000010 <g_uart0port> 59 2 0 N/A uart_cmsdk_ov_interrupt 0x1000010 <g_uart0port> (gdb) Signed-off-by: xuxingliang <xuxingliang@xiaomi.com> | 2 个月前 | |
pynuttx: update MM_BACKTRACE in gdb script Signed-off-by: yinshengkai <yinshengkai@xiaomi.com> | 2 个月前 | |
remove unused irqcount Signed-off-by: hujun5 <hujun5@xiaomi.com> | 2 个月前 | |
nxgdb/uorb: add basic uorb topic dump (gdb) uorb Address Topic Subs Ads esize nbuf latency interval Circbuf 0x41a475c0 bt_stack_state 1 1 16 1 0 4294967295 0x41a475f8 0x42d831a0 screen_onoff 1 0 16 1 0 4294967295 0x42d831d8 0x419a5510 sensor_light 0 1 16 1 0 4294967295 0x419a5548 (gdb) With the circbuf address, we can dump the data further. E.g. (struct circbuf_s *)0x41a475f8 base: 0x44687ba0 size: 16 head: 672 tail: 656 Dumping data with type struct bt_stack_state 0: {timestamp = 56504175, state = BT_STACK_STATE_OFF} (gdb) Signed-off-by: xuxingliang <xuxingliang@xiaomi.com> | 2 个月前 | |
nxgdb: fix typo reviewd from upstream Signed-off-by: xuxingliang <xuxingliang@xiaomi.com> | 2 个月前 | |
tools: rename tools/gdb/nuttxgdb to tools/pynuttx/nxgdb Signed-off-by: yinshengkai <yinshengkai@xiaomi.com> | 2 个月前 | |
fix: wqueue tool miscalculates the kworker array address via kwork_wqueue_s Signed-off-by: ganjing <ganjing@xiaomi.com> | 2 个月前 |