This project provide tools to manipulate firmware for Built-in iSight found on Apple machine since iMac G5 iSight (November 2005). Those tools are based on the work from Ronald S. Bultje and are licensed under the term of the GPLv2 or later. There are currently (2010) maintained by Étienne Bersac. See https://launchpad.net/isight-firmware-tools/ for bugs, code and more informations. ift-extract : ————————————— ift-extract extracts isight.fw from any AppleUSBVideoSupport driver from Darwin. This driver is located in /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBVideoSupport.kext/Contents/MacOS/AppleUSBVideoSupport on your Mac OS X root partition. ift-load : —————————— ift-load load a firmware extracted by ift-extract right into the iSight. This tool is meant to be called by udev. (see isight.rules udev rules file provided). ift-export : —————————— Exports a firmware extracted by ift-extract as Intel HEX format for load with fxload. Note that the RAM size of the Built-in iSight seems larger than 8KB, therefore fxload refuse to load the end of the firmware into the chip.
The following steps allow you to have a clean support for Apple Built-in iSight on both PPC and intel Macintoshes. No kernelspace Apple driver loading ! * Install latest isight-firmware-tools. /!\ Configure --sysconfdir=/etc (autotools bug?) in order to have the udev rules properly installed. ./configure --sysconfdir=/etc && make && sudo make install * Get any AppleUSBVideoSupport from your Mac OS X partition and extract the firmware using ift-extract. ift-extract default output to /lib/firmware/isight.fw, so run as root : sudo ift-extract --apple-driver AppleUSBVideoSupport * Load the firmware manually or reboot sudo ift-load --firmware /lib/firmware/isight.fw Tested with gstreamer-properties, ekiga, cheese 0.2.3 (cheese 0.2.4 fails, 0.3 not tested).
Version 1.5.91 : ———————————————— * Handle new firmware version from Apple * Added more fixes to comply UVC specs Version 1.5.91 : ———————————————— * Don't use SHA1 sum anymore Version 1.5.90 : ———————————————— * Dropped HAL callout * Added SHA1 for Mac OS X.5.7, X.5.8 and X.6 driver on various hardware. * Updated japanese translation (Thanks to Nobuhiro Iwamatsu) Version 1.4.1 : ——————————————— * Added three SHA1 sum for Mac OS X.6. * Order SHA1 sums to optimize lookup. Version 1.4 : ————————————— * Search vendor/product id rather than bus/dev id in udev loader. * Switch back to udev loader by default. This is less portable, but HAL and DeviceKit people prefer this policy. * Added two SHA1 sum from debian package and for Mac OS X.5.5 Version 1.2 : ————————————— * Provide HAL callout, udev support is obsolete. Use --enable-udev and --disable-hal to have previous behaviour. * Updated driver table. Version 1.0 : ————————————— * Use DEVICE env var for finding USB bus id and device id. * Added Leopard driver support. Version 0.5 : ————————————— * new tool : ift-export. Exports firmware in Intel HEX format. * Uses syslog facility in ift-load. * Info and man pages for ift-extract and ift-export. Version 0.4 : ————————————— * Added i18n and fr_FR translation. * Use GOption parsing. * ift-extract: added option for output directory and output filename. Default to /lib/firmware and isight.fw. * ift-load: drop vendor_id:product_id probe and use udev USB_BUS and USB_DEV environment variables or from command line option. Version 0.3 : ————————————— * added udev rules for automatic firmware loading. * install ift-load in sbin dir. * ift-extract now patch the firmware. Version 0.2 : ————————————— * Splitted extract into ift-extract and ift-load. * Use autotools. * Added Mac OS X.4 PPC driver offset.
Last update : 25-Mar-2008 11:16