Merge branch 'master' into dell-precision-5570

This commit is contained in:
Aaron Adams
2025-08-21 08:55:32 +08:00
committed by GitHub
7 changed files with 61 additions and 4 deletions

View File

@@ -134,6 +134,7 @@
framework-13-7040-amd = import ./framework/13-inch/7040-amd; framework-13-7040-amd = import ./framework/13-inch/7040-amd;
framework-amd-ai-300-series = import ./framework/13-inch/amd-ai-300-series; framework-amd-ai-300-series = import ./framework/13-inch/amd-ai-300-series;
framework-16-7040-amd = import ./framework/16-inch/7040-amd; framework-16-7040-amd = import ./framework/16-inch/7040-amd;
framework-desktop-amd-ai-max-300-series = import ./framework/desktop/amd-ai-max-300-series;
friendlyarm-nanopc-t4 = import ./friendlyarm/nanopc-t4; friendlyarm-nanopc-t4 = import ./friendlyarm/nanopc-t4;
friendlyarm-nanopi-r5s = import ./friendlyarm/nanopi-r5s; friendlyarm-nanopi-r5s = import ./friendlyarm/nanopi-r5s;
focus-m2-gen1 = import ./focus/m2/gen1; focus-m2-gen1 = import ./focus/m2/gen1;

View File

@@ -4,4 +4,10 @@
../common ../common
../../../common/cpu/intel ../../../common/cpu/intel
]; ];
# If this module isn't built into the kernel, we need to make sure it loads
# before soc_button_array. Otherwise the tablet mode gpio doesn't work.
# If correctly loaded, dmesg should show
# input: gpio-keys as /devices/platform/INT33D3:00
boot.initrd.kernelModules = [ "pinctrl_tigerlake" ];
} }

View File

@@ -10,6 +10,13 @@
../common ../common
../common/amd.nix ../common/amd.nix
]; ];
config.hardware.framework.laptop13.audioEnhancement.rawDeviceName = config = {
lib.mkDefault "alsa_output.pci-0000_c1_00.6.analog-stereo"; hardware.framework.laptop13.audioEnhancement.rawDeviceName =
lib.mkDefault "alsa_output.pci-0000_c1_00.6.analog-stereo";
# suspend works with 6.15
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.15") (
lib.mkDefault pkgs.linuxPackages_latest
);
};
} }

View File

@@ -0,0 +1,23 @@
# [Framework Desktop](https://frame.work/desktop)
## Kernel version
The recommended version is 6.15 or newer, it has good GPU and also EC firmware support (for sensors and ARGB).
The lowest recommended version is 6.14. It has good GPU support already.
The absolute lowest that runs okay on headless systems is 6.11, but the GPU is not fully supported yet.
## Updating Firmware
First put enable `fwupd`
```nix
services.fwupd.enable = true;
```
Then run
```sh
$ fwupdmgr update
```
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Desktop.RyzenAIMax300.BIOS.firmware)

View File

@@ -0,0 +1,20 @@
{
config,
lib,
pkgs,
...
}:
{
imports = [
../../../common/cpu/amd
../../../common/cpu/amd/pstate.nix
../../../common/gpu/amd
../../../common/pc/ssd
../../framework-tool.nix
];
# 6.14 and above have good GPU support
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.14") (
lib.mkDefault pkgs.linuxPackages_latest
);
}

View File

@@ -9,7 +9,7 @@
{ {
name = "microsoft-surface-patches-linux-${version}"; name = "microsoft-surface-patches-linux-${version}";
patch = null; patch = null;
extraStructuredConfig = with kernel; { structuredExtraConfig = with kernel; {
STAGING_MEDIA = yes; STAGING_MEDIA = yes;
## ##

View File

@@ -9,7 +9,7 @@
{ {
name = "microsoft-surface-patches-linux-${version}"; name = "microsoft-surface-patches-linux-${version}";
patch = null; patch = null;
extraStructuredConfig = with kernel; { structuredExtraConfig = with kernel; {
STAGING_MEDIA = yes; STAGING_MEDIA = yes;
## ##
## Surface Aggregator Module ## Surface Aggregator Module