This shows you the differences between two versions of the page.
Next revision | Previous revision Next revision Both sides next revision | ||
en:users:drivers:ath10k:firmware [2015/01/26 09:49] 127.0.0.1 external edit |
en:users:drivers:ath10k:firmware [2015/11/10 12:26] Kalle Valo Cleanup, add new links |
||
---|---|---|---|
Line 7: | Line 7: | ||
===== ath10k firmware ===== | ===== ath10k firmware ===== | ||
- | Firmware is temporalily available at [[https://github.com/kvalo/ath10k-firmware|https://github.com/kvalo/ath10k-firmware]] until it will be available from linux-firmware.git. | + | The ath10k firmware images are available from [[https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/|linux-firmware.git]] which all common Linux distributions should install by default. Latest firmware images can be downloaded from [[https://github.com/kvalo/ath10k-firmware|ath10k-firmware.git]] from which they get eventually pushed to [[https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/|linux-firmware.git]]. |
- | The firmware is searched from directory ath10k/QCA988X/hw2.0 under the system firmware directory, usually /lib/firmware. For example, here's a listing from an Ubuntu system where it's under /lib/firmware: | + | ==== Firmware branches ===== |
- | <code>$ ls -l /lib/firmware/ath10k/QCA988X/hw2.0/ | + | ^ Hardware ^ Firmware major version/branch ^ Latest firmware revision ^ Intended use ^ Kernel version required* ^ Git commit ^ |
- | total 508 | + | | QCA988X | main | [[https://github.com/kvalo/ath10k-firmware/tree/master/QCA988X/main|link]] | STA | 3.11 | 5e3dd157d7e7 | |
- | -rwxr-xr-x 1 root root 2116 Oct 22 11:01 board.bin* | + | | QCA988X | 10.1 | [[https://github.com/kvalo/ath10k-firmware/tree/master/QCA988X/10.1|link]] | AP | 3.13 | 8acd3c97ff9e | |
- | -rw-r--r-- 1 root root 254564 Oct 22 11:01 firmware-2.bin | + | | QCA988X | 10.2 | [[https://github.com/kvalo/ath10k-firmware/tree/master/QCA988X/10.2|link]] | AP | 3.18 | 24c88f7807fb | |
- | -rwxr-xr-x 1 root root 249093 Oct 22 11:01 firmware.bin* | + | | QCA988X | 10.2.4 | [[https://github.com/kvalo/ath10k-firmware/tree/master/QCA988X/10.2.4|link]] | AP | 4.0 | 4a16fbec1cd0 | |
- | -rwxr-xr-x 1 root root 5402 Oct 22 11:01 otp.bin* | + | | QCA6164/QCA6174 | wmi-tlv | [[https://github.com/kvalo/ath10k-firmware/tree/master/QCA6174|link]] | AP/STA | 4.0 | d63955b33b3b, ca996ec56608 | |
- | $</code> | + | | QCA9980 | 10.4 | [[https://github.com/kvalo/ath10k-firmware/tree/master/QCA99X0|link]] | AP | 4.2 | 8a055a8adc87 | |
- | Description of the files: | + | |
- | ; board.bin : board file for the firmware | ||
- | ; firmware-2.bin : embedded firmware file (includes both firmware and otp) for ath10k versions supporting FW API 2 | ||
- | ; firmware.bin : firmware file for older ath10k versions supporting only FW API 1 | ||
- | ; otp.bin : otp file for older ath10k versions supporting only FW API 1 | ||
- | ===== Update firmware ===== | ||
- | First download the firmware image from ath10k-firmware.git: | ||
- | [[https://github.com/kvalo/ath10k-firmware/tree/master/|https://github.com/kvalo/ath10k-firmware/tree/master/]] | + | * Note: It is possible to use newer ath10k driver on an older kernel with [[en/users/Drivers/ath10k/backports|backports project]]. |
- | In this example we use firmware-2.bin_10.1.467.2-1 from 10.1 directory. Then just copy that file as firmware-2.bin to the ath10k firmware directory: | + | ===== Update firmware ===== |
+ | First download the firmware image from the links above. In this example we use firmware-2.bin_10.1.467.2-1 from QCA988X 10.1 directory. Then just copy that file as firmware-2.bin to the ath10k firmware directory: | ||
<code>cp firmware-2.bin_10.1.467.2-1 /lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin</code> | <code>cp firmware-2.bin_10.1.467.2-1 /lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin</code> | ||
- | Then reload ath10k (or restart the system) and the new firmware is in use. | + | Then reload ath10k (or restart the system) and you can [[en/users/Drivers/ath10k/debug#firmware_version|check if the new firmware is in use]]. |
Note: In some distributions the firmware location can be different than /lib/firmware. | Note: In some distributions the firmware location can be different than /lib/firmware. | ||
- | |||
- | |||
- | ===== Firmware branches ===== | ||
- | |||
- | ath10k firmware has different branches, they are described below. | ||
- | |||
- | |||
- | ==== main branch ==== | ||
- | |||
- | Firmware versions 999.999.0.x. | ||
- | |||
- | Supports AP mode, STA mode, Ad-Hoc and P2P. But AP mode is not that well tested, especially problems with DFS. | ||
- | |||
- | |||
- | ==== 10.1 branch ==== | ||
- | |||
- | Firmware versions 10.1.x. | ||
- | |||
- | Branch focusing on AP mode. Supports DFS. STA mode works but not well tested. No Ad-Hoc or P2P support. | ||
- | |||
===== Firmware API versions ===== | ===== Firmware API versions ===== | ||
Line 73: | Line 47: | ||
Embedding both firmware and otp images into same file firmware-2.bin. Firmware meta data provided through FW IE. Added in commit 1a222435a dated Sep 27 2013, for Linux 3.13. | Embedding both firmware and otp images into same file firmware-2.bin. Firmware meta data provided through FW IE. Added in commit 1a222435a dated Sep 27 2013, for Linux 3.13. | ||
- |