================================================================================
bladeRF FX3 firmware  Change Log Summary

For more detailed information, please see the git change log and issue tracker
hosted on GitHub: https://github.com/nuand/bladeRF
================================================================================

v2.6.0 (2025-05-06)
--------------------------------
 * Increase GPIF buffer size for increase performance
 * Fixed missing break in BLADE_USB_CMD_QUERY_FPGA_SOURCE command handling
 * Improved FX3 SDK setup instructions in README

v2.5.0 (2024-07-30)
--------------------------------
 * Bumped GPIF DMA buffer size to 8192 bytes
 * Reduced the number of GPIF DMA buffers to 11 per channel

v2.4.0 (2020-08-01)
--------------------------------
 * Add ability to send short packets to FX3 from FPGA

v2.3.2 (2018-12-26)
--------------------------------
 * Speed up flash operations across platforms

v2.3.1 (2018-09-26)
--------------------------------
 * Fix USB device reset (e.g. during bladerf_open()) interrupting SPI flash
   autoloading of FPGA images (#661)
 * Add BLADE_USB_CMD_QUERY_FPGA_SOURCE command, which identifies the source
   of the currently-running FPGA image (SPI flash vs USB host). (#646)

v2.3.0 (2018-08-29)
--------------------------------
 * Add BLADE_USB_CMD_QUERY_FLASH_ID command, which returns the SPI flash
   manufacturer and device ID information. (#571)
 * Update README to reflect unified firmware introduced in v2.2.0

v2.2.0 (2018-06-18)
--------------------------------
 * Unify bladeRF builds
 * Quickly determine product by reading SPI flash manufacturer

v2.1.1 (2018-04-26)
--------------------------------
 * Fix loading FPGA bitstreams from flash when there is nothing connected to
   the USB connector.

v2.1.0 (2017-07-25)
--------------------------------
 * Add support for the bladeRF 2.0 (2cf0:5250).
 * Create a static lib (libbladeRF_fx3.a) with code common across all products.
 * Rename bladeRF_fw_*.img to bladeRF1_fw_*.img to avoid ambiguity.
 * Move USB descriptor consts to .usbdscr section so the linker glomps them.

v2.0.0 (2016-04-06)
--------------------------------
 * bladeRF Firmware VID/PID updated to Nuand's assigned VID.
   Nuand VID:   2cf0
   bladeRF PID: 5246

v1.9.1 (2016-04-06)
--------------------------------
 * Migrated build to CMake. See README.md for updated build instructions.

v1.9.0 (2015-12-13)
--------------------------------
 * Added simple logging mechanism

v1.8.1 (2015-09-08)
--------------------------------
 * Updated build for FX3 SDK v1.3.3
 * Addressed a few minor build warnings

v1.8.0 (2014-11-6)
--------------------------------
 * Added "device ready" query to denote when operations such as flash-based
   FPGA loading have completed.

v1.7.1 (2014-07-19)
--------------------------------
 * DMA buffers are now cleared when disabling a module. This fixes an issue
   where stale samples were left in DMA buffers.
 * Added missing support for reading back the state of the firmware loopback


v1.7.0 (2014-07-04)
--------------------------------
 * Added firmware-based loopback mode


v1.6.1 (2014-01-14)
--------------------------------
 * Fixed FPGA becoming reset duing flash operations
 * Fixed defect that caused every other FPGA load to fail


v1.6.0 (2013-10-20)
--------------------------------
 * Increased FPGA UART bridge speed (requires FPGA >= v0.0.1)
 * Fixed issues with switching between RF_LINK and FPGA_CONFIG modes


v1.5.3 (2013-10-15)
--------------------------------
 * Added FPGA autoloading support
 * Fixed incorrect string descriptor index


v1.5.2 (2013-10-04)
--------------------------------
 * Fixed build issue introduced by v1.5.1


v1.5.1 (2013-10-04)
--------------------------------
 * Packed version structure to avoid potential struct padding issues
 * Moved serial number initialization to avoid a race condition


v1.5.0 (2013-09-28)
--------------------------------
 * Switched to major.minor.patch version numbering, with git string
 * Fixed issues with U1/U2 transitions and endpoint halt
 * Addred requests for reading/refreshing cached calibration data


v1.4 (2013-09-22)
--------------------------------
 * Overhaul of firmware code and organization
 * Moved FPGA config to altsetting 3
    - altsetting 0 is now a NULL interface.
 * Added bitflip LUT to speed up FPGA load
 * Fixes for issues identified by USB30CV and USB20CV tests
 * Handle "Select Exit Latency" Standard request


v1.3 (2013-09-22)
--------------------------------
 * Fixed issue with RESET vendor request
 * Added ability to jump to bootloader


v1.2 (2013-09-03)
--------------------------------
 * Added support for serial number string request
 * Fixed issues with HS descriptors


v1.1 (2013-08-25)
--------------------------------
 * Cache calibration and OTP data in RAM
 * Added device reset functionality
 * Changed from 3 interfaces to 1 interface with 3 separate altsettings
 * Added support for programming the SPI flash OTP region
 * Disabled RX DMA multi-channel


v1.0/v0.3 (2013-08-25)
--------------------------------
 * Disabled TX DMA multi-channel
 * Added command-line build support
 * Fixes for DMA channel and UART deinitialization
 * Fixed USB 2.0 enumeration
 * Added GPIO_ID and GPIO_LED I/Os


v0.2 (2013-05-19)
--------------------------------
 * Enabled 32-bit GPIF
 * Change USB VID/PID to 0x1d50/0x6066, courtesy of the OpenMoko project
 * Slowed down UART speed


v0.1 (2013-02-18)
--------------------------------
 * Initial firmware for FSK bridge test
