From owner-freebsd-firewire@FreeBSD.ORG Sun May 16 16:06:50 2004 Return-Path: Delivered-To: freebsd-firewire@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D011016A4CE; Sun, 16 May 2004 16:06:50 -0700 (PDT) Received: from harmony.village.org (rover.village.org [168.103.84.182]) by mx1.FreeBSD.org (Postfix) with ESMTP id B104E43D39; Sun, 16 May 2004 16:06:49 -0700 (PDT) (envelope-from imp@bsdimp.com) Received: from localhost (warner@rover2.village.org [10.0.0.1]) by harmony.village.org (8.12.10/8.12.9) with ESMTP id i4GN6jm6040921; Sun, 16 May 2004 17:06:45 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Sun, 16 May 2004 17:07:54 -0600 (MDT) Message-Id: <20040516.170754.107787280.imp@bsdimp.com> To: schizik@mail.ru From: "M. Warner Losh" In-Reply-To: <200405152116.04671.schizik@mail.ru> References: <200405152116.04671.schizik@mail.ru> X-Mailer: Mew version 3.3 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: freebsd-hackers@freebsd.org cc: freebsd-firewire@freebsd.org Subject: Re: Odd firewire pcmcia card behavior... X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 May 2004 23:06:50 -0000 In message: <200405152116.04671.schizik@mail.ru> Schizik writes: : cardbus0: Resource not specified in CIS: id=10, size=1000000 : cardbus0: Resource not specified in CIS: id=14, size=100 : cardbus0: Resource not specified in CIS: id=18, size=1000 : cardbus0: at device 0.0 (no driver attached) : cbb0: CardBus card activation failed This is almost certainly the bus numbering problem I recently introduced. Warner From owner-freebsd-firewire@FreeBSD.ORG Tue May 18 15:27:33 2004 Return-Path: Delivered-To: freebsd-firewire@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 27C8F16A4CE for ; Tue, 18 May 2004 15:27:33 -0700 (PDT) Received: from gaia.arc.nasa.gov (gaia.arc.nasa.gov [143.232.155.74]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0D15743DAA for ; Tue, 18 May 2004 14:53:25 -0700 (PDT) (envelope-from buzz@gaia.arc.nasa.gov) Received: from mono.arc.nasa.gov (mono.arc.nasa.gov [143.232.155.67]) by gaia.arc.nasa.gov (8.11.7/8.11.6) with ESMTP id i4ILY1x23707 for ; Tue, 18 May 2004 14:34:01 -0700 (PDT) Date: Tue, 18 May 2004 14:33:57 -0700 (PDT) From: Buzz Slye X-X-Sender: buzz@mono.arc.nasa.gov To: freebsd-firewire@freebsd.org Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Subject: async bug X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 May 2004 22:27:33 -0000 The code for the version of 2004/03/28 does not appear to work correctly for an asyncronus request of a single register. (i.e., try: fwcontrol -b 0) R. E. Slye NASA/Ames From owner-freebsd-firewire@FreeBSD.ORG Wed May 19 01:13:20 2004 Return-Path: Delivered-To: freebsd-firewire@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7E09A16A4CE for ; Wed, 19 May 2004 01:13:20 -0700 (PDT) Received: from herring.rabson.org (mailgate.nlsystems.com [80.177.232.242]) by mx1.FreeBSD.org (Postfix) with ESMTP id 897E743D31 for ; Wed, 19 May 2004 01:13:19 -0700 (PDT) (envelope-from dfr@nlsystems.com) Received: from herring.rabson.org (herring.rabson.org [10.0.0.2]) by herring.rabson.org (8.12.11/8.12.11) with ESMTP id i4J8BhsY008862; Wed, 19 May 2004 09:11:43 +0100 (BST) (envelope-from dfr@nlsystems.com) From: Doug Rabson To: freebsd-firewire@freebsd.org Date: Wed, 19 May 2004 09:11:42 +0100 User-Agent: KMail/1.6.1 References: In-Reply-To: MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200405190911.42668.dfr@nlsystems.com> X-Spam-Status: No, hits=0.0 required=5.0 tests=none autolearn=no version=2.63 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on herring.rabson.org X-Virus-Scanned: ClamAV version 'clamd / ClamAV version 0.65', clamav-milter version '0.60p' Subject: Re: async bug X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 May 2004 08:13:20 -0000 On Tuesday 18 May 2004 22:33, Buzz Slye wrote: > The code for the version of 2004/03/28 does not appear to work > correctly for an asyncronus request of a single register. > > (i.e., try: fwcontrol -b 0) > > R. E. Slye > NASA/Ames The ioctl api is very confusing to use. I had to use the kernel debugger to get my test program that reads quads over the bus to work. The code below should work: uint32_t fw_read_quad(int fd, int node, uint64_t addr) { struct fw_asyreq req; memset(&req, 0, sizeof req); req.req.type = FWASREQNODE; req.req.len = sizeof(req.pkt.mode.rreqq) + 2*sizeof(uint32_t); req.pkt.mode.rreqq.dst = FWLOCALBUS | node; req.pkt.mode.rreqq.tcode = FWTCODE_RREQQ; req.pkt.mode.rreqq.dest_hi = addr >> 32; req.pkt.mode.rreqq.dest_lo = addr; if (ioctl(fd, FW_ASYREQ, &req) < 0) { err(1, "ioctl"); return 0; } return req.pkt.mode.rresq.data; } From owner-freebsd-firewire@FreeBSD.ORG Fri May 21 08:17:04 2004 Return-Path: Delivered-To: freebsd-firewire@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 941D916A4CE for ; Fri, 21 May 2004 08:17:04 -0700 (PDT) Received: from tora.nunu.org (YahooBB219003182029.bbtec.net [219.3.182.29]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4F00243D3F for ; Fri, 21 May 2004 08:17:04 -0700 (PDT) (envelope-from simokawa@sat.t.u-tokyo.ac.jp) Received: from tora.nunu.org (unknown [192.168.1.2]) by tora.nunu.org (Postfix) with ESMTP id 103764ACB7; Sat, 22 May 2004 00:16:40 +0900 (JST) Date: Sat, 22 May 2004 00:16:39 +0900 Message-ID: <87vfiphktk.wl@tora.nunu.org> From: Hidetoshi Shimokawa To: Buzz Slye In-Reply-To: References: User-Agent: Wanderlust/2.10.1 (Watching The Wheels) SEMI/1.14.5 (Awara-Onsen) FLIM/1.14.5 (Demachiyanagi) APEL/10.6 MULE XEmacs/21.4 (patch 14) (Reasonable Discussion) (i386--freebsd) MIME-Version: 1.0 (generated by SEMI 1.14.5 - "Awara-Onsen") Content-Type: text/plain; charset=US-ASCII cc: freebsd-firewire@freebsd.org Subject: Re: async bug X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 May 2004 15:17:04 -0000 At Tue, 18 May 2004 14:33:57 -0700 (PDT), Buzz Slye wrote: > > > The code for the version of 2004/03/28 does not appear to work correctly > for an asyncronus request of a single register. > > (i.e., try: fwcontrol -b 0) > > R. E. Slye > NASA/Ames The ioctl(2) interface of /dev/fw0.0 is not well-tested and may have many bugs. If you need only quad/block read/write request (without LOCK transaction), /dev/fwmem interface should be easier to use and well-tested. The souce code of dconschat(8) is an example of using /dev/fwmem. /\ Hidetoshi Shimokawa \/ simokawa@sat.t.u-tokyo.ac.jp PGP public key: http://www.sat.t.u-tokyo.ac.jp/~simokawa/pgp.html From owner-freebsd-firewire@FreeBSD.ORG Fri May 21 09:46:48 2004 Return-Path: Delivered-To: freebsd-firewire@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 61AEC16A4CE for ; Fri, 21 May 2004 09:46:48 -0700 (PDT) Received: from mail.qubesoft.com (gate.qubesoft.com [217.169.36.34]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6D74843D3F for ; Fri, 21 May 2004 09:46:47 -0700 (PDT) (envelope-from dfr@nlsystems.com) Received: from bluebottle.qubesoft.com (bluebottle.qubesoft.com [192.168.1.2]) by mail.qubesoft.com (8.12.9/8.12.9) with ESMTP id i4LGjLkM058736; Fri, 21 May 2004 17:45:21 +0100 (BST) (envelope-from dfr@nlsystems.com) Received: from builder02.qubesoft.com (builder02.qubesoft.com [192.168.1.8]) i4LGjEON074773; Fri, 21 May 2004 17:45:16 +0100 (BST) (envelope-from dfr@nlsystems.com) From: Doug Rabson To: Hidetoshi Shimokawa In-Reply-To: <87vfiphktk.wl@tora.nunu.org> References: <87vfiphktk.wl@tora.nunu.org> Content-Type: text/plain Message-Id: <1085157914.25509.10.camel@builder02.qubesoft.com> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.6 Date: Fri, 21 May 2004 17:45:14 +0100 Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV version 'clamd / ClamAV version 0.65', clamav-milter version '0.60p' cc: freebsd-firewire@freebsd.org Subject: Re: async bug X-BeenThere: freebsd-firewire@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Firewire support in FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 May 2004 16:46:48 -0000 On Fri, 2004-05-21 at 16:16, Hidetoshi Shimokawa wrote: > At Tue, 18 May 2004 14:33:57 -0700 (PDT), > Buzz Slye wrote: > > > > > > The code for the version of 2004/03/28 does not appear to work correctly > > for an asyncronus request of a single register. > > > > (i.e., try: fwcontrol -b 0) > > > > R. E. Slye > > NASA/Ames > > The ioctl(2) interface of /dev/fw0.0 is not well-tested and may > have many bugs. If you need only quad/block read/write request > (without LOCK transaction), /dev/fwmem interface should be > easier to use and well-tested. The souce code of dconschat(8) > is an example of using /dev/fwmem. I think that it might be simpler to break out the generic FW_ASYREQ ioctl into separate ones which do various different async requests. One problem with it now is that the ioctl argument is large because of the data array. The whole thing must be copied in and out even for single quad reads/writes.