Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge queue: embarking master (a8dd1b2) and [#1188 + #1187] together #1189

Closed
wants to merge 7 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions hp/laptop/14s-dq2024nf/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,8 @@
../../../common/pc/laptop
../../../common/pc/laptop/ssd
];

config = {
services.thermald.enable = lib.mkDefault true;
};
}
2 changes: 1 addition & 1 deletion microsoft/surface/OLD-BEHAVIOUR-DEPRECATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,5 +45,5 @@ Most "common" modules now have an `enable` option, which is `false` by default.
This hasn't been finalised, partly as I now only have access to a Surface Go 1, these days, so I'm
maybe not the best custodian of this code any longer.

However, hopefully the (imminent) `surface-go/` module is a reasonable exmample, and we should be
However, hopefully the `surface-go/` module is a reasonable exmample, and we should be
able to gather more examples for more model specialisations over time.
22 changes: 10 additions & 12 deletions microsoft/surface/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,11 +91,17 @@ See: https://github.com/linux-surface/linux-surface/blob/master/README.md

## Wifi Firmware for Surface Go

On the Surface Go, the standard firmware from the official Linux Firmware repo has issues with the
`ath10k` QCA6174 Wifi device.
You will see messages like "Can't ping firmware".
On the Surface Go, the standard firmware from the official Linux Firmware repo used to have issues
with the `ath10k` QCA6174 Wifi device.

The most effective fix to-date is to remove the `board-2.bin` file or replace it with a copy of the
This was fixed in Nov 2021:
- https://github.com/linux-surface/linux-surface/issues/542#issuecomment-976995453

### Background:

With the older firmware, you would see messages like "Can't ping firmware".

The most effective fix was to remove the `board-2.bin` file or replace it with a copy of the
`board.bin` file.

The derivative in `surface-go/firmware/ath10k/` can configure this, with the
Expand All @@ -107,14 +113,6 @@ This is the only way (currently) to force the driver to use the new firmware.

For more details, see: https://github.com/linux-surface/linux-surface/wiki/Surface-Go#wifi-firmware

_*NOTE:*_ There's some work to patch the kernel to make it easier to override which firmware file
to use for QCA6174, which would obviate this more-destructuve approach:
- https://github.com/linux-surface/kernel/commit/22ef83836c4aa89e9eb98de9b47ed24b6c2a1d45

_*NOTE:*_ There was an attempt to get this firmware incorporated into the aggregate `board-2.bin`,
but (as of this writing) the request appears to have been ignored:
- https://github.com/linux-surface/linux-surface/issues/41

References:
- https://github.com/jakeday/linux-surface/issues/441
- https://www.reddit.com/r/SurfaceLinux/comments/e8quqg/surface_go_official_wifi_fix/
Expand Down
2 changes: 2 additions & 0 deletions microsoft/surface/TODO.org
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
- State "DONE" from "DOING" [2021-03-06 Sat 20:55]
:END:
* Firmware
** DONE Remove archived kvalo/ath10k-firmware repo
- The QCA6174 firmware appears to be in the standard Linux firmware repo, now
** DONE Remove old firmware binaries
- Looks like the ath10k files aren't needed, any more
** DONE Create derivative for `ipts` firmware
Expand Down
7 changes: 0 additions & 7 deletions microsoft/surface/common/repos.nix
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,6 @@
inherit rev sha256;
};

ath10k-firmware = fetchFromGitHub {
owner = "kvalo";
repo = "ath10k-firmware";
rev = "c987e38cbdb90dcb4e477d5dd21de66c77996435";
sha256 = "16a67baxlga8vb43zbby2s7kpp4488vczg3manmr9g3wxnhhb9n3";
};

surface-go-ath10k-firmware_backup = fetchFromGitHub {
owner = "mexisme";
repo = "linux-surface_ath10k-firmware";
Expand Down
9 changes: 9 additions & 0 deletions microsoft/surface/surface-go/firmware/ath10k/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,15 @@ in {
};

config = mkIf cfg.replace {
warnings = [''A working version of the ath10k QCA6174 firmware has been added to the kernel.org linux-firmware
repo, making this fix obsolete.
See:
- https://github.com/linux-surface/linux-surface/issues/542#issuecomment-976995453
- https://github.com/linux-surface/linux-surface/wiki/Surface-Go#wi-fi-firmware

NOTE: This module option will probably be removed in the near future.
''];

hardware.enableAllFirmware = true;
hardware.firmware = [
(pkgs.callPackage ./ath10k-replace.nix {})
Expand Down