mirror of
https://github.com/NixOS/nixos-hardware.git
synced 2025-11-05 01:37:24 +08:00
Merge branch 'master' into patch-1
This commit is contained in:
@@ -2,16 +2,13 @@
|
||||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop12.RPL.BIOS.firmware)
|
||||
|
||||
@@ -4,4 +4,10 @@
|
||||
../common
|
||||
../../../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" ];
|
||||
}
|
||||
|
||||
@@ -16,4 +16,7 @@
|
||||
|
||||
# Needed for desktop environments to detect display orientation
|
||||
hardware.sensor.iio.enable = lib.mkDefault true;
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
}
|
||||
|
||||
@@ -2,16 +2,13 @@
|
||||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.Ryzen7040.BIOS.firmware)
|
||||
|
||||
@@ -14,7 +14,6 @@ in
|
||||
../common/amd.nix
|
||||
../../../common/cpu/amd/raphael/igpu.nix
|
||||
];
|
||||
|
||||
options = {
|
||||
hardware.framework.amd-7040.preventWakeOnAC = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
@@ -30,6 +29,8 @@ in
|
||||
};
|
||||
|
||||
config = {
|
||||
services.fwupd.enable = true;
|
||||
|
||||
# Workaround applied upstream in Linux >=6.7 (on BIOS 03.03)
|
||||
# https://github.com/torvalds/linux/commit/a55bdad5dfd1efd4ed9ffe518897a21ca8e4e193
|
||||
services.udev.extraRules =
|
||||
|
||||
@@ -2,14 +2,13 @@
|
||||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.RyzenAI300.BIOS.firmware)
|
||||
|
||||
@@ -10,7 +10,11 @@
|
||||
../common
|
||||
../common/amd.nix
|
||||
];
|
||||
|
||||
config = {
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
|
||||
hardware.framework.laptop13.audioEnhancement.rawDeviceName =
|
||||
lib.mkDefault "alsa_output.pci-0000_c1_00.6.analog-stereo";
|
||||
|
||||
|
||||
@@ -2,14 +2,13 @@
|
||||
|
||||
## Updating Firmware
|
||||
|
||||
First put enable `fwupd`
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
```nix
|
||||
services.fwupd.enable = true;
|
||||
```
|
||||
|
||||
Then run
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr update
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop.MTL.BIOS.firmware)
|
||||
|
||||
@@ -11,6 +11,9 @@
|
||||
../common/intel.nix
|
||||
];
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
|
||||
# Need at least 6.9 to make suspend properly
|
||||
# Specifically this patch: https://github.com/torvalds/linux/commit/073237281a508ac80ec025872ad7de50cfb5a28a
|
||||
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.9") (
|
||||
|
||||
@@ -1,4 +1,14 @@
|
||||
# [Framework Laptop 16](https://frame.work/)
|
||||
|
||||
## Updating Firmware
|
||||
The Framework Laptop 16 uses LVFS, so it can be updated via fwupd; see https://wiki.nixos.org/wiki/Fwupd for details
|
||||
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop16.Ryzen7040.BIOS.firmware)
|
||||
|
||||
@@ -12,4 +12,6 @@
|
||||
../../../common/cpu/amd/raphael/igpu.nix
|
||||
];
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
}
|
||||
|
||||
25
framework/16-inch/amd-ai-300-series/README.md
Normal file
25
framework/16-inch/amd-ai-300-series/README.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# [Framework Laptop 16 AMD AI 300 Series](https://frame.work/)
|
||||
|
||||
## nvidia
|
||||
|
||||
If you have an nvidia dGPU module, you can enable it via the nvidia open drivers:
|
||||
|
||||
```
|
||||
services.xserver.videoDrivers = [ "nvidia" ];
|
||||
hardware.nvidia.open = true; # see the note above
|
||||
```
|
||||
|
||||
See also [NVIDIA](https://wiki.nixos.org/wiki/NVIDIA) on the NixOS Wiki.
|
||||
|
||||
## Updating Firmware
|
||||
|
||||
Everything is updateable through fwupd, so it's enabled by default.
|
||||
|
||||
To get the latest firmware, run:
|
||||
|
||||
```sh
|
||||
$ fwupdmgr refresh
|
||||
$ fwupdmgr update
|
||||
```
|
||||
|
||||
- [Latest Update](https://fwupd.org/lvfs/devices/work.frame.Laptop16.RyzenAI300.BIOS.firmware)
|
||||
21
framework/16-inch/amd-ai-300-series/default.nix
Normal file
21
framework/16-inch/amd-ai-300-series/default.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../common
|
||||
../common/amd.nix
|
||||
];
|
||||
|
||||
# 6.14 is the minimum recommended kernel, 6.15 has many useful changes, too
|
||||
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.15") (
|
||||
lib.mkDefault pkgs.linuxPackages_latest
|
||||
);
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
}
|
||||
@@ -8,12 +8,6 @@
|
||||
../../framework-tool.nix
|
||||
];
|
||||
|
||||
# Fix TRRS headphones missing a mic
|
||||
# https://community.frame.work/t/headset-microphone-on-linux/12387/3
|
||||
boot.extraModprobeConfig = lib.mkIf (lib.versionOlder config.boot.kernelPackages.kernel.version "6.6.8") ''
|
||||
options snd-hda-intel model=dell-headset-multi
|
||||
'';
|
||||
|
||||
# For fingerprint support
|
||||
services.fprintd.enable = lib.mkDefault true;
|
||||
|
||||
@@ -50,4 +44,7 @@
|
||||
MatchDMIModalias=dmi:*svnFramework:pnLaptop16*
|
||||
AttrKeyboardIntegration=internal
|
||||
'';
|
||||
|
||||
# Everything is updateable through fwupd
|
||||
services.fwupd.enable = true;
|
||||
}
|
||||
|
||||
23
framework/desktop/amd-ai-max-300-series/README.md
Normal file
23
framework/desktop/amd-ai-max-300-series/README.md
Normal 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)
|
||||
20
framework/desktop/amd-ai-max-300-series/default.nix
Normal file
20
framework/desktop/amd-ai-max-300-series/default.nix
Normal 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
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user