git: 4e0fc4d44dc1 - main - fwcam: set ISO speed from device link speed

From: Adrian Chadd <adrian_at_FreeBSD.org>
Date: Wed, 08 Jul 2026 05:42:05 UTC
The branch main has been updated by adrian:

URL: https://cgit.FreeBSD.org/src/commit/?id=4e0fc4d44dc18d0d3fd3d79f9074b068f2ee6eeb

commit 4e0fc4d44dc18d0d3fd3d79f9074b068f2ee6eeb
Author:     Abdelkader Boudih <freebsd@seuros.com>
AuthorDate: 2026-07-08 05:31:22 +0000
Commit:     Adrian Chadd <adrian@FreeBSD.org>
CommitDate: 2026-07-08 05:32:44 +0000

    fwcam: set ISO speed from device link speed
    
    iso_speed was never initialized, defaulting to S100 regardless of the
    camera's actual link speed. Some cameras firmwares reject ISO_EN
    when the speed field in the ISO_CHANNEL register
    does not match their capabilities.
    
    Reviewed by:    adrian
    Differential Revision:  https://reviews.freebsd.org/D58091
---
 sys/dev/firewire/fwcam.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/dev/firewire/fwcam.c b/sys/dev/firewire/fwcam.c
index 752558a1ecea..251451bc289e 100644
--- a/sys/dev/firewire/fwcam.c
+++ b/sys/dev/firewire/fwcam.c
@@ -962,6 +962,7 @@ fwcam_post_explore(void *arg)
 			sc->fwdev = fwdev;
 			sc->cmd_hi = 0xffff;
 			sc->cmd_lo = 0xf0000000 | (cmd_base << 2);
+			sc->iso_speed = min(fwdev->speed, FWSPD_S400);
 
 			FWCAM_UNLOCK(sc);
 			err = taskqueue_enqueue(taskqueue_thread,