From owner-freebsd-usb@FreeBSD.ORG Fri Nov 12 15:25:34 2010 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A8D83106564A for ; Fri, 12 Nov 2010 15:25:34 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe01.swip.net [212.247.154.1]) by mx1.freebsd.org (Postfix) with ESMTP id 349E68FC14 for ; Fri, 12 Nov 2010 15:25:33 +0000 (UTC) X-Cloudmark-Score: 0.000000 [] X-Cloudmark-Analysis: v=1.1 cv=omSrwDgyMf70S47Fr5SNr0rQzcmIOo0IafWlB/wSLLo= c=1 sm=1 a=Dyoqhi_TatcA:10 a=N6kE9rk6zqsA:10 a=Cfj4BQAnxiAA:10 a=CL8lFSKtTFcA:10 a=i9M/sDlu2rpZ9XS819oYzg==:17 a=OxYo1ybWKXWZ0xcy-yAA:9 a=LdFuLNC-Nr2ZjfW0pDXQylEfq5EA:4 a=Ft8UYL4EG9YA:10 a=i9M/sDlu2rpZ9XS819oYzg==:117 Received: from [188.126.198.129] (account mc467741@c2i.net HELO laptop002.hselasky.homeunix.org) by mailfe01.swip.net (CommuniGate Pro SMTP 5.2.19) with ESMTPA id 49022311; Fri, 12 Nov 2010 16:25:32 +0100 From: Hans Petter Selasky To: freebsd-usb@freebsd.org Date: Fri, 12 Nov 2010 16:26:35 +0100 User-Agent: KMail/1.13.5 (FreeBSD/8.1-STABLE; KDE/4.4.5; amd64; ; ) References: <1431122664.20101112180144@serebryakov.spb.ru> In-Reply-To: <1431122664.20101112180144@serebryakov.spb.ru> X-Face: +~\`s("[*|O,="7?X@L.elg*F"OA\I/3%^p8g?ab%RN'(; _IjlA: hGE..Ew, XAQ*o#\/M~SC=S1-f9{EzRfT'|Hhll5Q]ha5Bt-s|oTlKMusi:1e[wJl}kd}GR Z0adGx-x_0zGbZj'e(Y[(UNle~)8CQWXW@:DX+9)_YlB[tIccCPN$7/L' MIME-Version: 1.0 Content-Type: Text/Plain; charset="windows-1251" Content-Transfer-Encoding: 7bit Message-Id: <201011121626.35741.hselasky@c2i.net> Cc: Lev Serebryakov Subject: Re: struct usb_config: pass custom parameter to callback? X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Nov 2010 15:25:34 -0000 On Friday 12 November 2010 16:01:44 Lev Serebryakov wrote: > Hello, Freebsd-usb. > > Is it possible to pass custom parameter to xfer callback, configured > via "struct usb_config"? > > I'm writing driver for device, which have multiple equivalent ports, > each whith its own paor of pipes (for IN and OUT), and I want to use > only two callbacks. Is it possible? Or should I make N pairs > of almost-the-same thunk functions? Hi, There is usbd_xfer_get/set_priv() and usbd_xfer_softc() which you can use to get and set private and softc alike structure pointers after that the USB transfers are setup. Any more custom parameters you need wrap using callback wrappers. --HPS