uvc: log setup/data events

This commit is contained in:
Brad Stein 2026-01-06 05:01:52 -03:00
parent 2570ea69db
commit e35af4a46d

View File

@ -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);
}
_ => {}