First QCA6174 firmware release

Austin Hendrix legotown at
Thu Feb 12 23:25:11 PST 2015

On 02/11/2015 10:31 PM, Michal Kazior wrote:
> On 12 February 2015 at 07:04, Austin Hendrix <namniart at> wrote:
>> I consider myself a fairly skilled programmer; if the format is documented
>> somewhere, I have no doubt that I can write a tool to put the firmware into
>> the proper format. Does anyone know where the firmware format is documented,
>> or do I have to go read the source for the driver to figure out the firmware
>> format?
> Take a look at ath10k_core_fetch_firmware_api_n(). You can derive an
> encoder logic from this easily.
>> The bigger question is, how can I confirm that I'm wrapping the correct
>> firmware?
> If ath10k parses it later and boots then it's correct? :-)
>> I found a qca61x420.bin file (probably firmware; definitely compiled code)
>> in /Windows/System32/drivers/qca61x420.bin , but the ath10k driver doesn't
>> recognize it as firmware.
> The blob you found is the raw binary that is pushed to the device.
> ath10k expects to find it in a wrapped "FW API" which also contains an
> OTP program. You also need to make sure to setup correct
> fw_features/op_version (you can disassemble the hw3.0 wrapper blob).
> Michał
> _______________________________________________
> ath10k mailing list
> ath10k at

Thanks! I can work with that.

The FW API data structure is pretty simple - I can reproduce it.

Looking at the firmware blob that I have, and comparing it to the 
existing firmware-4 image suggests that it contains several different 
firmware images. I'm going to spend some time trying to chop it up and 
figure out how it's laid out, and then try to re-pack it appropriately 
for linux.


More information about the ath10k mailing list