Linux 6.9 Change Allows Old Macs Using Firewire To Enjoy Virtualization Support
The PCI subsystem updates were merged this week for the Linux 6.9 kernel. Among the changes are the usual code churn around device-specific quirks and tuning of the power management code.
The PCI updates this cycle aren't particularly exciting but when it came to the PCI virtualization-related patches there was just one this cycle and caught my attention that too may be of interest to some Phoronix readers.
With Linux 6.9 there is a change to avoid secondary bus reset on the LSI FW643 Firewire controller card. By avoiding the secondary bus reset, it can be assigned to virtual machines (VMs) using VFIO. Now you may be wondering why anyone is caring about an LSI FW643 IEEE-1394b Firewire card in 2024... Well, it turns out this particular card was found in a number of Apple Mac systems for their time and at least some are still using it for professional audio purposes. Now that can be successfully done within a virtualized environment for running Linux on the VM and still being able to successfully leverage that Firewire card.
Edmund Raile who authored the workaround explained in the patch:
This patch along with other random code churn and device quirks can be found as part of the PCI updates for Linux 6.9.
The PCI updates this cycle aren't particularly exciting but when it came to the PCI virtualization-related patches there was just one this cycle and caught my attention that too may be of interest to some Phoronix readers.
With Linux 6.9 there is a change to avoid secondary bus reset on the LSI FW643 Firewire controller card. By avoiding the secondary bus reset, it can be assigned to virtual machines (VMs) using VFIO. Now you may be wondering why anyone is caring about an LSI FW643 IEEE-1394b Firewire card in 2024... Well, it turns out this particular card was found in a number of Apple Mac systems for their time and at least some are still using it for professional audio purposes. Now that can be successfully done within a virtualized environment for running Linux on the VM and still being able to successfully leverage that Firewire card.
Edmund Raile who authored the workaround explained in the patch:
Using LSI / Agere FW643 with vfio-pci will issue an FLreset, causing a broken link only recoverable by removing power (power-off / suspend + rescan). Prevent this bus reset. With this change, the device can be assigned to VMs with VFIO.
---
Usefulness:
The LSI FW643 PCIe to FireWire 800 interface may be EOL but it is the only one that does not use a PCIe to PCI bridge. It was used in the following Apple machines:
MacBookPro10,1
MacBookPro9,2
MacBookPro6,2
MacBookPro5,1
Macmini6,1
Macmini3,1
iMac12,2
iMac9,1
iMac8,1
It is reliable and enables FireWire audio interfaces to be used on modern machines. Virtualization allows for flexible access to professional audio software.
This patch along with other random code churn and device quirks can be found as part of the PCI updates for Linux 6.9.
9 Comments