userland fix

Buzz Slye buzz at gaia.arc.nasa.gov
Thu Jun 24 10:10:59 PDT 2004


The following code may be substituted for the broken code in fwdev.c, line 325
(in the routine fw_read) to allow downloading of digital camera images.

#if 1 /* XXX fixed ? */
		/* per packet mode or FWACT_CH bind?*/
		s = splfw();
		ir->queued --;
		STAILQ_REMOVE_HEAD(&ir->q, link);
		splx(s);
		fp = &xfer->recv.hdr;
		if (sc->fc->irx_post != NULL)
			sc->fc->irx_post(sc->fc, fp->mode.ld);
		err = uiomove((caddr_t)fp, sizeof(struct fw_isohdr), uio);
		err = uiomove((caddr_t)xfer->recv.payload, xfer->recv.pay_len, uio);
#endif

Changing the receive channel, however, results in the message:

fwohci0: IR DMA no free chunk

Is changing channels not supported?  After the above message, the code
returns 0.  So maybe this message is not really an error.

Buzz Slye
NASA/Ames



More information about the freebsd-firewire mailing list