From e35af4a46dc8891e5e32c6dd59ca12c165df5b17 Mon Sep 17 00:00:00 2001 From: Brad Stein Date: Tue, 6 Jan 2026 05:01:52 -0300 Subject: [PATCH] uvc: log setup/data events --- server/src/bin/lesavka-uvc.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/server/src/bin/lesavka-uvc.rs b/server/src/bin/lesavka-uvc.rs index e1627b7..bdeda4e 100644 --- a/server/src/bin/lesavka-uvc.rs +++ b/server/src/bin/lesavka-uvc.rs @@ -105,6 +105,10 @@ fn main() -> Result<()> { let (dev, cfg) = parse_args()?; eprintln!("[lesavka-uvc] starting (dev={dev})"); + let debug = env::var("LESAVKA_UVC_DEBUG").is_ok(); + let mut setup_seen: u64 = 0; + let mut data_seen: u64 = 0; + loop { let file = open_with_retry(&dev)?; let fd = file.as_raw_fd(); @@ -154,6 +158,17 @@ fn main() -> Result<()> { UVC_EVENT_STREAMOFF => eprintln!("[lesavka-uvc] stream off"), UVC_EVENT_SETUP => { let req = parse_ctrl_request(event_bytes(&ev)); + setup_seen += 1; + if debug || setup_seen <= 10 { + eprintln!( + "[lesavka-uvc] setup #{setup_seen} rt=0x{:02x} rq=0x{:02x} val=0x{:04x} idx=0x{:04x} len={}", + req.b_request_type, + req.b_request, + req.w_value, + req.w_index, + req.w_length + ); + } handle_setup( fd, uvc_send_response, @@ -164,6 +179,13 @@ fn main() -> Result<()> { } UVC_EVENT_DATA => { let data = parse_request_data(event_bytes(&ev)); + data_seen += 1; + if debug || data_seen <= 10 { + eprintln!( + "[lesavka-uvc] data #{data_seen} len={}", + data.length + ); + } handle_data(fd, uvc_send_response, &mut state, &mut pending, data); } _ => {}