Skip to content

Instantly share code, notes, and snippets.

@jverweijL
Last active March 11, 2022 10:00
Show Gist options
  • Save jverweijL/dc6eeab9f5c83bbe7292c3279d72bcce to your computer and use it in GitHub Desktop.
Save jverweijL/dc6eeab9f5c83bbe7292c3279d72bcce to your computer and use it in GitHub Desktop.

Revisions

  1. jverweijL revised this gist Jan 3, 2021. 1 changed file with 8 additions and 0 deletions.
    8 changes: 8 additions & 0 deletions README.md
    Original file line number Diff line number Diff line change
    @@ -74,3 +74,11 @@ Step 6 —Reboot
    ```
    sudo reboot now
    ```

    Make sure you are starting with the right kernel.
    Once rebooted you can check it with:

    ```
    uname -r
    ```
    Should show something like **5.10.0-wt-ath+**
  2. jverweijL revised this gist Jan 3, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion README.md
    Original file line number Diff line number Diff line change
    @@ -43,7 +43,7 @@ Step 1 - the make menu
    First , move into the ~/ath directory
    ```
    cd ~/ath
    ``
    ```
    Then, Once inside the ~/ath/ directory run:
    ```
    make menuconfig
  3. jverweijL revised this gist Jan 3, 2021. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions README.md
    Original file line number Diff line number Diff line change
    @@ -13,6 +13,7 @@ Step 2.A — Source Code
    Clone kernel source code with the latest changes for the driver
    ```
    git clone -b master https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
    ```

    Step 2.B — Clone firmware
    ```
  4. jverweijL revised this gist Jan 3, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion README.md
    Original file line number Diff line number Diff line change
    @@ -4,7 +4,7 @@ Step 1 — Pre-Requisites
    The line of code below will update, then upgrade all of the packages and their dependencies as necessary. Then it will install git if it’s not already installed, as well as the other tools needed to build the kernels.
    *Note I use the -y flag to indicate that I am okay with the installs. feel free to change that if you want to be asked.

    ``
    ```
    sudo apt update && sudo apt -y full-upgrade && sudo apt install -y git && sudo apt-get install -y build-essential libncurses-dev bison flex libssl-dev libelf-dev dwarves
    ```
    I had to install a dwarf 1.17
  5. jverweijL created this gist Jan 3, 2021.
    75 changes: 75 additions & 0 deletions README.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,75 @@
    Based upon https://mukaiguy.medium.com/adding-wifi-drivers-to-ubuntu-linux-for-dells-xps-15-9500-with-ax500-f535fb42db70

    Step 1 — Pre-Requisites
    The line of code below will update, then upgrade all of the packages and their dependencies as necessary. Then it will install git if it’s not already installed, as well as the other tools needed to build the kernels.
    *Note I use the -y flag to indicate that I am okay with the installs. feel free to change that if you want to be asked.

    ``
    sudo apt update && sudo apt -y full-upgrade && sudo apt install -y git && sudo apt-get install -y build-essential libncurses-dev bison flex libssl-dev libelf-dev dwarves
    ```
    I had to install a dwarf 1.17
    Step 2.A — Source Code
    Clone kernel source code with the latest changes for the driver
    ```
    git clone -b master https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git

    Step 2.B — Clone firmware
    ```
    git clone https://github.com/kvalo/ath11k-firmware.git
    ```

    Part 2 — Copy and Organize
    Step 1 — Make a home for the new firmware
    To do so we are going to make a directory for the new firmware inside the root `/lib/` directory
    ```
    sudo mkdir -p /lib/firmware/ath11k/QCA6390/hw2.0/
    ```

    Step 2 — Copy
    Here we are copying any file with a .bin extension into the directory we just added.
    ```
    sudo cp ~/ath11k-firmware/QCA6390/hw2.0/1.0.1/WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1/*.bin /lib/firmware/ath11k/QCA6390/hw2.0/
    ```

    Here we are copying the board-2.bin
    ```
    sudo cp ~/ath11k-firmware/QCA6390/hw2.0/board-2.bin /lib/firmware/ath11k/QCA6390/hw2.0/board-2.bin
    ```

    PART 3 — The makefile
    Step 1 - the make menu
    First , move into the ~/ath directory
    ```
    cd ~/ath
    ``
    Then, Once inside the ~/ath/ directory run:
    ```
    make menuconfig
    ```
    Step 2- configure the make file.
    Using the arrow keys to navigate, and the return/enter key to toggle into the sub-menus and toggle the activation. Navigate to:
    Device Drivers →
    Network device support →
    Wireless LAN →
    Qualcomm Technologies 802.11ax chipset support →
    Toggle on anything with the `ath11k` in it. Now with all those activated, look at the bottom of the screen, look for save. You should be able to tab to it. then hit enter, then exit until your back in the terminal. Next we can make the file and the modules, then install them.
    Step 4- `sudo make -j$(nproc)`
    will use all available CPU cores when making the file. if you want you can run `echo $(nproc)` and see how many core that will be.
    ```
    sudo make -j$(nproc)
    ```
    # Install kernel modules
    ```
    sudo make INSTALL_MOD_STRIP=1 modules_install -j$(nproc)
    ```
    Step 5— Install
    Here use my 16 available cores. Be sure not to add a space between the -j and the $(nproc).
    ```
    sudo make install -j$(nproc)
    ```
    Step 6 —Reboot
    ```
    sudo reboot now
    ```