From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-yx2-f1.google.com (mail-yx2-f1.google.com [74.125.224.129]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 302DF3446AF for ; Mon, 13 Jul 2026 21:09:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.224.129 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783976942; cv=none; b=TrBiWRrET1dfA5f0oU1d7qveg2NQ4XRYCLCJ9tsWZnV2HK0qNL9cPaE4c3q5SQ14isXmD0uTQEvVkfI3xHlkItswqrlAZfh55MfFxyUKT/5NgY5J37CfVWM04fZR9OXFtRR4c3IVPDUAF4/NZbx8frDHeMtuiKh+oEklqJaD7HI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783976942; c=relaxed/simple; bh=3jQ1hH8GlZgiDKSnvflUdEkxhV2abBPDIrnY3Pptvs4=; h=From:Date:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=jedjuVVVPteIVy2ZsJBSU0VytAPdKwUhuxj0bmj/EfCxqczzuNMKDvQLIX5+dwE7jVcp3tqK2dHga+GTByGBTZtOzBcsogXLmtls92/n1IYqer5NBiRszUHmwarMDyqKgiNCRuH1/pOZVYWWId50a0UD6oUikl+qjwjcPztSC/k= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=DDu2ZxQI; arc=none smtp.client-ip=74.125.224.129 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="DDu2ZxQI" Received: by mail-yx2-f1.google.com with SMTP id 00721157ae682-81c6e4ce922so24115017b3.0 for ; Mon, 13 Jul 2026 14:09:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783976940; x=1784581740; darn=vger.kernel.org; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:date:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=3z11abkydzZ2iKlx8ecIFGRlioo2QGUfIr1WJRM/Diw=; b=DDu2ZxQIwHAT+1WUHK+lGcra70p9GFk+7T2LBlyTerpEuC2q1C/ByWyyVwtVPaFrfV RgcgDXBMmifKT1gFuRnWONEitVx9R3MwIC9sdRrDsy1nXJFjNYATaapiT72LCJJPHPW0 nQzYMo/qGKX2LPQVq81+xG8gTPEO1ptDcq7atl0znq8jh+9nRWHHpj/loF79upJY6zC4 Hp2dQXTV7LQUO6d5MvKqfClQ7WON3H/c/eL8E9O6txblqVrCCwPKcJDiCAowbAqj9Hw0 05zTftNpF7+wdU92OEq6WaLMdkwdzS+u6fhYpWdX5kJ9gAl6mpmOqNop4yUecJzJOgIT czWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783976940; x=1784581740; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=3z11abkydzZ2iKlx8ecIFGRlioo2QGUfIr1WJRM/Diw=; b=A3RTOO4tT9eHLN95ICSvaxHF7J/QyJY5KzdaTgY7Rvs/+RhiIB8j7+TGjqZliInFnS AKu+lLczRPgy8rhlUwwGzfEU2s3TDVGcgNieqdPRGNpbAY/rI1+tD+au6IXC3lT8FnwC BfFlHtaDix3gYeS2PQ3CBkgfFXDVZXQx9ZyotcHDwNSpbmJ/lE+Pl8w8sJpdDJGEL2Si FbivlEaGWL9AIU39oX9XIBC/bCWwglyCbF5MBZZK7R9s1otCHpZVgESBN0S+iRBpRBpL j0edWQ6BdYeWCtx4m2ZrwTwKvGx1ZV8xtSqDlLQ+WXseqFIH2e7ZQy6zVwbEJdAm/0P1 zOuQ== X-Forwarded-Encrypted: i=1; AHgh+RoAybPndzAmCbMi2r/UM1yl+tsr80X+NM7RE5LX86gcezmJh42kzTCFfZzOAcKwIyXTFKMuauXkmMRNR04=@vger.kernel.org X-Gm-Message-State: AOJu0Yx6UK+MNlrW930oT71lXLqJVFf2BDhFhGYpA5tYYhAD/6aJJKhJ L3nAkOY2dLJtEHZ4cFoEvXSMPg/6p5EAEv6NeqcKeAlfyZApyUItrm3Q X-Gm-Gg: AfdE7cl0P/UdHIJQOFbHggr3uOvqXuwKItxnCPx+6pzM/DR/h61uIKSdWg4asoxcdTk YYk7bRGt9Fgk5b53YJ1ykiGqvaf4h+7qJAQNdA00FBs1YSvLmIom0O+FLpNzQ3mvFnUrY8lfonU KcqNo/hLngffRVzkaVodM7DXUvzsMj5w1edc1bjAk45iAhqE9lMbZEGlyjAn21up8Zf1ScpH3Ak fGnl2LzBC69rb9xZC1Oi4e1CZmzEnIiFYLnuFMD23wed17lD2OgkWhxm8i/I0AgrfyYZD6JVYxm AGQu24DmgSCxH7FcZyHp+hGOTKI3X+v70Y4uOJ3Q+tLrGxQr0yd7my0+bEMcvPvXdxgr6/smRnZ CMpmeO5xAVG3qsGqSmZ3yezvJHr/tXynCWDPRMuTafd8yamx5A+9VzfcTBn+JPTSpw9RBIArtcv iFsNBjX+z7PJZvu+I1Nfz3nGEoeYP7QINjOw1oQMIvlLAPmiHGJv8sJ3aBz9tRUA0D18g= X-Received: by 2002:a05:690c:61c6:b0:81e:b801:34ec with SMTP id 00721157ae682-81ebb2c92b2mr9367897b3.60.1783976940225; Mon, 13 Jul 2026 14:09:00 -0700 (PDT) Received: from pendragon (76-234-45-214.lightspeed.cicril.sbcglobal.net. [76.234.45.214]) by smtp.gmail.com with ESMTPSA id 00721157ae682-81e6be98dfbsm126045887b3.2.2026.07.13.14.08.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Jul 2026 14:08:59 -0700 (PDT) From: Colin Braun X-Google-Original-From: Colin Braun Date: Mon, 13 Jul 2026 16:08:58 -0500 To: Danilo Krummrich Cc: Colin Braun , Miguel Ojeda , Greg Kroah-Hartman , Boqun Feng , Gary Guo , =?utf-8?B?QmrDtnJu?= Roy Baron , Benno Lossin , Andreas Hindborg , Alice Ryhl , Trevor Gross , Daniel Almeida , Tamir Duberstein , Alexandre Courbot , Onur =?utf-8?B?w5Z6a2Fu?= , Mauro Carvalho Chehab , Alan Stern , Mathias Nyman , linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org, linux-usb@vger.kernel.org, linux-media@vger.kernel.org, Colin Braun Subject: Re: [RFC PATCH 4/4] media: add gv-usb2 audio capture driver Message-ID: References: <20260712-urb-abstraction-v1-v1-0-9fa011634ead@gmail.com> <20260712-urb-abstraction-v1-v1-4-9fa011634ead@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: On Mon, Jul 13, 2026 at 04:44:24PM +0200, Danilo Krummrich wrote: > On Sun Jul 12, 2026 at 11:08 PM CEST, Colin Braun wrote: > > +/// Write a vendor-specific control register on the GV-USB2 device. > > +/// > > +/// Uses a vendor-type control request (`REQ_WRITE_REG`) to write the > > +/// given `value` to the given `reg` address. > > +fn write_reg(intf: &usb::Interface, reg: u16, value: u8) -> Result { > > In addition to raw control messages, this can leverage the generic I/O backend > infrastructure, so you don't have to roll your own write_reg() function and use > the register!() infrastructure instead. See also [1] and [2]. > > [1] https://lore.kernel.org/driver-core/20260706-io_projection-v6-0-72cd5d055d54@garyguo.net/ > [2] https://lore.kernel.org/lkml/DJVQ852J7SOH.26YBIJTQ9B66G@kernel.org/ > Interesting, I had briefly glanced at this macro and was disappointed that it didn't seem to apply well to my situation, but I see that the Io and IoCapable traits are generic in a way that does support this. I'll include this in my next revision, thank you!