From owner-freebsd-firewire@FreeBSD.ORG Fri Jul 23 18:16:25 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 07FC016A55F for ; Fri, 23 Jul 2004 18:16:25 +0000 (GMT) Received: from gaia.arc.nasa.gov (gaia.arc.nasa.gov [143.232.155.74]) by mx1.FreeBSD.org (Postfix) with ESMTP id EEB3043D54 for ; Fri, 23 Jul 2004 18:16:24 +0000 (GMT) (envelope-from buzz@gaia.arc.nasa.gov) Received: from tioga.arc.nasa.gov (tioga.arc.nasa.gov [143.232.155.66]) by gaia.arc.nasa.gov (8.11.7/8.11.6) with ESMTP id i6NIGGZ07082; Fri, 23 Jul 2004 11:16:16 -0700 (PDT) Date: Fri, 23 Jul 2004 11:15:06 -0700 (PDT) From: Buzz Slye X-X-Sender: buzz@tioga.arc.nasa.gov To: simokawa@sat.t.u-tokyo.ac.jp Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed cc: freebsd-firewire@freebsd.org Subject: More digital cameras 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, 23 Jul 2004 18:16:25 -0000 Camera registers are set with asynchronous commands to set onboard registers (i.e., setting the gain, shutter, and image size. etc.). Camera operation is started by setting a bit in the iso_enable register to start iso transmission. Camera operation is described in the "1394-based Digital Camera Specification". Some cameras support continuous iso transmission or may be run in one shot mode. After the fix to uiomove in fw_read, (fwdev.c line 334): err = uiomove((caddr_t)fp, sizeof(struct fw_isohdr), uio); err = uiomove((caddr_t)xfer->recv.payload, xfer->recv.pay_len, uio); I get: fwohci0: IR DMA overrun (0x40008051) --- but not always after every frame. Is this really an error on should I just delete the message ? The call from fw_read with the fix is for (xfer != NULL). I thought this was for non bulkxfer, so how do we get to the message "overrun" by a call to fwohci_irx_enable which is from (ir->stproc != NULL) ? Should there be a call to fwohci_irx_enable from (xfer != NULL) ? Just what is an overrun anyway ? We have been lately trying to use 5.2 (June) but that worked badly for us. But have fallen back to 5.2 (May) but still have problems. We are using a buffer of 1 chunk and a packet size of 4k, since we have a new camera of spec 1.30 with a packet size up to 4k. We can also run the new camera on the old system of one year ago if we set the camera packet size to 2k. Is poll broken, it just times out ? Buzz Slye NASA/Ames