userland fix
Hidetoshi Shimokawa
simokawa at sat.t.u-tokyo.ac.jp
Wed Jun 30 06:49:08 PDT 2004
Sorry for my late response.
At Thu, 24 Jun 2004 10:09:09 -0700 (PDT),
Buzz Slye wrote:
>
> 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.
Do you mean not Digital Video but Digital Camera protocol?
> #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
I cannot remember in which case these code are executed.
What kind of userland program do you use?
I think that bulkxfer is used for DV receive.
Are you going to implement Digital Camera specification?
> Changing the receive channel, however, results in the message:
>
> fwohci0: IR DMA no free chunk
This indicates that there is no receive buffer available.
> Is changing channels not supported? After the above message, the code
> returns 0. So maybe this message is not really an error.
I think it's not supported and you may need to close/reopen the
device.
/\ Hidetoshi Shimokawa
\/ simokawa at sat.t.u-tokyo.ac.jp
PGP public key: http://www.sat.t.u-tokyo.ac.jp/~simokawa/pgp.html
More information about the freebsd-firewire
mailing list