Framework Laptop

From Gentoo Wiki
Jump to:navigation Jump to:search
Resources

The Framework laptop, released in 2021, focuses on extreme repairability. The DIY edition in particular, comes without an OS and the devs and community are currently focused on supporting Arch Linux as an alternative to Windows.

Hardware

Standard

Device Make/model Status Vendor ID / Product ID Kernel driver(s) Kernel version Notes
Chipset Intel Tiger Lake Works [multiple] i801_smbus

intel_ish_ipc

intel_lpss_pci

intel_pmt

5.14.15
Video card Intel Tiger Lake-LP GT2 Works f111:0001 i915 5.14.15 i965 and iris USE flags
Sound card Intel Tiger Lake-LP Smart Sound Works 8086:a0c8:f111:0001 snd_hda_intel, snd_soc_sof_tigerlake 5.14.15 Also requires either Realtek or IDT HD codec, depending on date of manufacture[1]
Wireless network card Intel AX210 Works 8086:2725:8086:0024 iwlwifi 5.14.15 Needs firmware from sys-kernel/linux-firmware
Bluetooth Intel AX210 Works bluetooth 5.14.15
Touchpad PixArt PIXA3854 Works 093A:0274 hid_multitouch 5.14.15 Also depends on i2c_designware_core, intel_ishtp_hid
Fingerprint Reader Goodix USB2.0 MISC Works 27c6:609c Requires sys-auth/fprintd-1.94.0
Webcam Realtek Laptop Camera Works uvc 5.15.8 (as tested)

Expansion cards

The Framework Laptop features four modular expansion card slots allowing for custom port configurations. Each connects to an underlying USB-C interface. See https://frame.work/marketplace/expansion-cards

Device Make/model Status Vendor ID / Product ID Kernel driver(s) Kernel version Notes
DisplayPort Framework Untested
Ethernet Framework Untested
HDMI Framework Works 32ac:0002
SSD Framework Untested
MicroSD Framework Works usb_storage, uas
USB-A Framework Works xhci_hcd
USB-C Framework Works xhci_hcd 5.14.15 Required for charging

Installation

Because of some boot menu and device selection issues, it may be necessary to update to BIOS version 3.06 before installing. See: https://community.frame.work/t/public-beta-test-bios-v3-06-driver-bundle-2021-10-29/10167 This update is also necessary to support the Tempo audio codec in the post-Oct 2021 Framework laptops.

There is not yet a linux-based BIOS update mechanism, but the update can be run in a Windows PE environment such as Windows 10 setup media or Hiren's BootCD PE

Firmware

Firmware from sys-kernel/linux-firmware is needed for the GPU, wireless, and bluetooth interfaces. The TigerLake GPU firmware in particular needs to be loaded immediately at boot, so it must be included as a kernel blob or on an init ramdisk. See: Intel#Firmware

Kernel

There have been significant stability issues with Wifi and Bluetooth in kernels prior to 5.14.15, so we're starting there, although it's not yet stable in portage at this time.

KERNEL Power Management
Processor type and features  --->
   [*] Intel Low Power Subsystem support
Power management and ACPI options  --->
   [*] ACPI (Advanced Configuration and Power Interface) Support  --->
   ~~ Your choice of AC, Battery, Fan, Thermal, etc ~~
      [*] Intel DPTF (Dynamic Platform and Thermal Framework) Support
   [*] Cpuidle Driver for Intel Processors
Firmware Drivers  --->
   [*] Load custom ACPI SSDT overlay from an EFI variable
Device Drivers   --->
   <*> Thermal Drivers  --->
      Intel thermal drivers  --->
         <*> X86 package temperature thermal driver
         <*> Intel SoCs DTS thermal driver
         ACPI INT340X thermal drivers  --->
            <*> ACPI INT340X thermal driver
         <*> Intel TCC offset cooling Driver
   Multifunction device drivers  --->
      <*> Intel Low Power Subsystem support in PCI mode 
      <*> Intel PMC Driver for Broxton
      <*> Intel Platform Monitoring Technology (PMT) support
   [*] X86 Platform Specific Device Drivers
      <*> Intel PMC Core driver
KERNEL I2C Bus (needed for Touchpad, Camera, and probably other stuff)
Device Drivers  --->
   <*> I2C Support  --->
      <*>   I2C device interface
      I2C Hardware Bus Support  --->
         <*> Intel 82801 (ICH/PCH)
         <*> Synopsys Designware Platform
KERNEL Touchpad
Device Drivers  --->
  Input device support  --->
  HID support  ---> 
     <*> Generic HID driver
     Special HID driver  --->
        <*> HID Multitouch panels
        <*> HID Sensors framework support
     Intel ISH HID support  --->
<*> Intel Integrated Sensor Hub
KERNEL Wireless LAN
[*] Networking support  --->
  [*] Wireless  --->
     <*> cfg80211 - wireless configuration API
     <*> Generic IEEE 802.11 Networking Stack (mac80211)

Device Drivers --->

  [*] Network device support  --->
     [*] Wireless LAN  --->
        [*] Intel devices
        <*>   Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi)
<*> Intel Wireless WiFi MVM Firmware support
KERNEL Graphics card
Device Drivers  --->
   <*> /dev/agpgart (AGP Support)  --->
   <*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)  --->
   <*> Intel 8xx/9xx/G3x/G4x/HD Graphics
KERNEL Sound
Device Drivers  --->
   <*> Sound card support  --->
      <*> Advanced Linux Sound Architecture  --->
         HD Audio  --->
            <*> HD Audio PCI
            <*> Build Realtek HD-audio codec support
            <*> Build IDT/Sigmatel HD-audio codec support
            <*> Build HDMI/DisplayPort HD-audio codec support
         ALSA for SoC audio support  --->
            [*] Sound Open Firmware Support
            <*>   SOF PCI enumeration support
            [*]   SOF support for Intel audio DSPs
            <*>      SOF support for Tigerlake
KERNEL Storage (NVMe)
Device Drivers  --->
   NVME Support  ---> 
       <*> NVM Express block device
            [*] NVMe multipath support
Note
Post-October '21 Frameworks use a Tempo (also known as IDT/Sigmatel) audio codec instead of Realtek

References