Message ID | 1467322340-25602-4-git-send-email-programmingkidx@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 06/30/2016 03:32 PM, John Arbuckle wrote: > Add debug macros to the code for easier debugging. > > Signed-off-by: John Arbuckle <programmingkidx@gmail.com> > --- > hw/input/hid.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/hw/input/hid.c b/hw/input/hid.c > index 3e1b46e..efe703e 100644 > --- a/hw/input/hid.c > +++ b/hw/input/hid.c > @@ -37,6 +37,13 @@ > #define RELEASED -1 > #define PUSHED -2 > > +/* #define DEBUG_HID_CODE */ > +#ifdef DEBUG_HID_CODE > + #define DEBUG_HID(fmt, ...) printf(fmt, __VA_ARGS__) > +#else > + #define DEBUG_HID(fmt, ...) (void)0 > +#endif NACK to this approach - it is too prone to bitrot. Instead, you want to do something like commit ed79f37d, so that the compiler always compiles the arguments to printf() even when debugging is disabled (any compiler too stupid to optimize out dead 'if (0)' code is not worth using for compiling qemu).
diff --git a/hw/input/hid.c b/hw/input/hid.c index 3e1b46e..efe703e 100644 --- a/hw/input/hid.c +++ b/hw/input/hid.c @@ -37,6 +37,13 @@ #define RELEASED -1 #define PUSHED -2 +/* #define DEBUG_HID_CODE */ +#ifdef DEBUG_HID_CODE + #define DEBUG_HID(fmt, ...) printf(fmt, __VA_ARGS__) +#else + #define DEBUG_HID(fmt, ...) (void)0 +#endif + /* Translates a QKeyCode to USB HID value */ static const uint8_t qcode_to_usb_hid[] = { [Q_KEY_CODE_SHIFT] = USB_HID_LEFT_SHIFT, @@ -331,6 +338,7 @@ static void hid_keyboard_event(DeviceState *dev, QemuConsole *src, return; } keycode = qcode_to_usb_hid[qcode]; + DEBUG_HID("keycode = 0x%x qcode:%d\n", keycode, qcode); count = 2; if (evt->u.key.data->down == false) { /* if key up event */ @@ -381,6 +389,9 @@ static void hid_keyboard_process_keycode(HIDState *hs) slot = hs->head & QUEUE_MASK; QUEUE_INCR(hs->head); hs->n--; keycode = hs->kbd.keycodes[slot]; + DEBUG_HID("keycode:0x%x status:%s\n", keycode, (status == PUSHED ? "Pushed" + : "Released")); + /* handle Control, Option, GUI/Windows/Command, and Shift keys */ if (keycode >= 0xe0) { process_modifier_key(status, keycode, &(hs->kbd.modifiers));
Add debug macros to the code for easier debugging. Signed-off-by: John Arbuckle <programmingkidx@gmail.com> --- hw/input/hid.c | 11 +++++++++++ 1 file changed, 11 insertions(+)