From 0994847b4ec9cd8d7bd77747ec4d5ad3070ba1f9 Mon Sep 17 00:00:00 2001 From: Aleksandr Lebedev Date: Sat, 9 Aug 2025 22:44:28 +0200 Subject: [PATCH] snowfall migration wip framework12 config --- flake.lock | 108 +- flake.nix | 4 +- homes/x86_64-linux/kylekrein/niri/niri.nix | 5 +- .../nixos/hardware/framework12/default.nix | 8 +- .../nixos/hardware/hibernation/default.nix | 42 + .../disko/impermanenceBtrfs/default.nix | 4 + .../disko/impermanenceBtrfsLuks/default.nix | 96 + overlays/ollama/default.nix | 3 + .../kylekrein-framework12/default.nix | 68 + .../kylekrein-framework12/facter.json | 3582 +++++++++++++++++ 10 files changed, 3860 insertions(+), 60 deletions(-) create mode 100644 modules/nixos/hardware/hibernation/default.nix create mode 100644 modules/nixos/presets/disko/impermanenceBtrfsLuks/default.nix create mode 100644 overlays/ollama/default.nix create mode 100644 systems/x86_64-linux/kylekrein-framework12/default.nix create mode 100755 systems/x86_64-linux/kylekrein-framework12/facter.json diff --git a/flake.lock b/flake.lock index 10c30f2..cd98bd4 100644 --- a/flake.lock +++ b/flake.lock @@ -196,11 +196,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1754215849, - "narHash": "sha256-GHTc3TlGSJ1DsPujJHRlNQOgBeotW+RPY9fcc6d4bRs=", + "lastModified": 1754712381, + "narHash": "sha256-LbTalQDguSZ5xpfFihCEHMjm7xYF+QLQlHFfFTHpkj8=", "owner": "chaotic-cx", "repo": "nyx", - "rev": "8456c9ee811787540b33890120476a7ea8de0ec0", + "rev": "9c8c4ed6fab07590095105cb5bea98587955b3c4", "type": "github" }, "original": { @@ -1037,11 +1037,11 @@ ] }, "locked": { - "lastModified": 1754174776, - "narHash": "sha256-Sp3FRM6xNwNtGzYH/HByjzJYHSQvwsW+lDMMZNF43PQ=", + "lastModified": 1754613544, + "narHash": "sha256-ueR1mGX4I4DWfDRRxxMphbKDNisDeMPMusN72VV1+cc=", "owner": "nix-community", "repo": "home-manager", - "rev": "e6e2f43a62b7dbc8aa8b1adb7101b0d8b9395445", + "rev": "cc2fa2331aebf9661d22bb507d362b39852ac73f", "type": "github" }, "original": { @@ -1095,11 +1095,11 @@ ] }, "locked": { - "lastModified": 1754110197, - "narHash": "sha256-N7GWK2084EsNdwzwg6FCIgMrSau1WwzxGSNdPHx5Tak=", + "lastModified": 1754639028, + "narHash": "sha256-w1+XzPBAZPbeGLMAgAlOjIquswo6Q42PMep9KSrRzOA=", "owner": "Jovian-Experiments", "repo": "Jovian-NixOS", - "rev": "04ce5c103eb621220d69102bc0ee27c3abd89204", + "rev": "d49809278138d17be77ab0ef5506b26dc477fa62", "type": "github" }, "original": { @@ -1166,11 +1166,11 @@ }, "master": { "locked": { - "lastModified": 1754742265, - "narHash": "sha256-fK5QWs+Z0MaORZKHITj0xHjQrxDp4+z1w5W5gw5TmkY=", + "lastModified": 1754762869, + "narHash": "sha256-HMadV2f7wphTYk3CM5+g4Gkyfsiv76X4VJbAdQM6mg0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9114a7402bc71dd710b3b62ae7e6e915e658a08a", + "rev": "e3d9d8410cfcdf8f34cff4e0c46b4831b0145780", "type": "github" }, "original": { @@ -1254,11 +1254,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1754300604, - "narHash": "sha256-aefCE3h7XYwl5DexqR3wJIBSuZ4ikNiw9KbyLpm3qUE=", + "lastModified": 1754744872, + "narHash": "sha256-rcMHMs+dFWaDXev092gfxTfxHEWcUY/6SRV+cseNevQ=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "02834fa6f0f2a2164205923b2dca75299eae2ca5", + "rev": "346fc31bcc4d2dbcc3e8ce8dbb622e4255ff54b7", "type": "github" }, "original": { @@ -1287,11 +1287,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1753983552, - "narHash": "sha256-xnPPjASWt4/u+GmRdrHADBKKSCtIhTFY53CSKM+Xtfk=", + "lastModified": 1754742008, + "narHash": "sha256-Tp0FG7VpLudVEC622d91z2hbdfPLCXxw0Nv43iNN4O0=", "owner": "YaLTeR", "repo": "niri", - "rev": "91b6a111cf228fadaabba706d8f4d155efc63b3a", + "rev": "67361f88fd01974ebee4cf80f0e29c87d805cc39", "type": "github" }, "original": { @@ -1425,11 +1425,11 @@ "nixpkgs": "nixpkgs_12" }, "locked": { - "lastModified": 1754187571, - "narHash": "sha256-1VvRI2zswUtVijM5iKJRdhtwLH8ASscZuVzhos/zMfs=", + "lastModified": 1754619139, + "narHash": "sha256-NHLKP08ErgbyxKSmmZUC1WxbrH54pA65yxcif8FhRxY=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "40b28f289429ff02f469052224560802472955f0", + "rev": "b965a1aea2e22812a012f1a0fe7308912c6fcde0", "type": "github" }, "original": { @@ -1568,11 +1568,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1754229794, - "narHash": "sha256-yOl7REX6O/1mh+tpscJPKgjK6nmXSMOB1xhmDNAMUZM=", + "lastModified": 1754564048, + "narHash": "sha256-dz303vGuzWjzOPOaYkS9xSW+B93PSAJxvBd6CambXVA=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "a872d985392ee5b19d8409bfcc3f106de2070070", + "rev": "26ed7a0d4b8741fe1ef1ee6fa64453ca056ce113", "type": "github" }, "original": { @@ -1588,11 +1588,11 @@ "nixpkgs": "nixpkgs_13" }, "locked": { - "lastModified": 1754260137, - "narHash": "sha256-IViMH6Fwj8nwO1nuYCqOTpjm9OK9rQ0w8nmoOwPlo98=", + "lastModified": 1754326498, + "narHash": "sha256-3ynDaygIzQYlBZFHGDeQzXmPkX2ILeZ0wWJ84FR4g7E=", "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "57ba096649fa4e12dc564e8e3c529255baf89b35", + "rev": "ca55236cd9ef3cdea29b51a0b52a9402c60e9a27", "type": "github" }, "original": { @@ -1727,11 +1727,11 @@ }, "nixpkgs-stable_2": { "locked": { - "lastModified": 1754028485, - "narHash": "sha256-IiiXB3BDTi6UqzAZcf2S797hWEPCRZOwyNThJIYhUfk=", + "lastModified": 1754689972, + "narHash": "sha256-eogqv6FqZXHgqrbZzHnq43GalnRbLTkbBbFtEfm1RSc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "59e69648d345d6e8fef86158c555730fa12af9de", + "rev": "fc756aa6f5d3e2e5666efcf865d190701fef150a", "type": "github" }, "original": { @@ -1759,11 +1759,11 @@ }, "nixpkgs_11": { "locked": { - "lastModified": 1754095672, - "narHash": "sha256-JQAsGhHwM7K33pQV3WR1m1lk7VadHQGBmz6v3sSFSmg=", + "lastModified": 1754498491, + "narHash": "sha256-erbiH2agUTD0Z30xcVSFcDHzkRvkRXOQ3lb887bcVrs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e07c1ba3ce542747dd0941a459b90259e228478d", + "rev": "c2ae88e026f9525daf89587f3cbee584b92b6134", "type": "github" }, "original": { @@ -1791,11 +1791,11 @@ }, "nixpkgs_13": { "locked": { - "lastModified": 1753429684, - "narHash": "sha256-9h7+4/53cSfQ/uA3pSvCaBepmZaz/dLlLVJnbQ+SJjk=", + "lastModified": 1754214453, + "narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7fd36ee82c0275fb545775cc5e4d30542899511d", + "rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376", "type": "github" }, "original": { @@ -1807,11 +1807,11 @@ }, "nixpkgs_14": { "locked": { - "lastModified": 1754028485, - "narHash": "sha256-IiiXB3BDTi6UqzAZcf2S797hWEPCRZOwyNThJIYhUfk=", + "lastModified": 1754689972, + "narHash": "sha256-eogqv6FqZXHgqrbZzHnq43GalnRbLTkbBbFtEfm1RSc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "59e69648d345d6e8fef86158c555730fa12af9de", + "rev": "fc756aa6f5d3e2e5666efcf865d190701fef150a", "type": "github" }, "original": { @@ -1871,11 +1871,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1753939845, - "narHash": "sha256-K2ViRJfdVGE8tpJejs8Qpvvejks1+A4GQej/lBk5y7I=", + "lastModified": 1754498491, + "narHash": "sha256-erbiH2agUTD0Z30xcVSFcDHzkRvkRXOQ3lb887bcVrs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "94def634a20494ee057c76998843c015909d6311", + "rev": "c2ae88e026f9525daf89587f3cbee584b92b6134", "type": "github" }, "original": { @@ -4260,11 +4260,11 @@ ] }, "locked": { - "lastModified": 1754189623, - "narHash": "sha256-fstu5eb30UYwsxow0aQqkzxNxGn80UZjyehQVNVHuBk=", + "lastModified": 1754621349, + "narHash": "sha256-JkXUS/nBHyUqVTuL4EDCvUWauTHV78EYfk+WqiTAMQ4=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "c582ff7f0d8a7ea689ae836dfb1773f1814f472a", + "rev": "c448ab42002ac39d3337da10420c414fccfb1088", "type": "github" }, "original": { @@ -4406,11 +4406,11 @@ "nixpkgs": "nixpkgs_15" }, "locked": { - "lastModified": 1752544651, - "narHash": "sha256-GllP7cmQu7zLZTs9z0J2gIL42IZHa9CBEXwBY9szT0U=", + "lastModified": 1754328224, + "narHash": "sha256-glPK8DF329/dXtosV7YSzRlF4n35WDjaVwdOMEoEXHA=", "owner": "Mic92", "repo": "sops-nix", - "rev": "2c8def626f54708a9c38a5861866660395bb3461", + "rev": "49021900e69812ba7ddb9e40f9170218a7eca9f4", "type": "github" }, "original": { @@ -4438,11 +4438,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1753979771, - "narHash": "sha256-MdMdQymbivEWWkC5HqeLYtP8FYu0SqiSpiRlyw9Fm3Y=", + "lastModified": 1754599117, + "narHash": "sha256-AzAYdZlat002vCjCKWdFpGi2xUaiOU4DtIPnv1nomD8=", "owner": "danth", "repo": "stylix", - "rev": "5b81b0c4fbab3517b39d63f493760d33287150ad", + "rev": "312dec38b2231b21f36903d1bdce96daa11548ff", "type": "github" }, "original": { @@ -4687,11 +4687,11 @@ "xwayland-satellite-unstable": { "flake": false, "locked": { - "lastModified": 1752338000, - "narHash": "sha256-Fxlp/yKtynug0jyuauAmvZU2SzHCfwlwWf85j+IvQ0U=", + "lastModified": 1754533920, + "narHash": "sha256-fCZ68Yud1sUCq6UNXj0SDyiBgVA8gJUE+14ZFGsFJG8=", "owner": "Supreeeme", "repo": "xwayland-satellite", - "rev": "ba78881a68182ce338041846164cbfed0d70935c", + "rev": "e0d1dad25a158551ab58547b2ece4b7d5a19929c", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 7ea665a..d3d14ae 100644 --- a/flake.nix +++ b/flake.nix @@ -117,8 +117,8 @@ impermanence.nixosModules.impermanence ]; - systems.modules.home = with inputs; [ - inputs.impermanence.nixosModules.home-manager.impermanence + systems.hosts.kylekrein-framework12.modules = with inputs; [ + nixos-hardware.nixosModules.framework-12-13th-gen-intel ]; home.modules = with inputs; [ diff --git a/homes/x86_64-linux/kylekrein/niri/niri.nix b/homes/x86_64-linux/kylekrein/niri/niri.nix index fdd2b40..e771f51 100644 --- a/homes/x86_64-linux/kylekrein/niri/niri.nix +++ b/homes/x86_64-linux/kylekrein/niri/niri.nix @@ -87,12 +87,11 @@ in binds = with config.lib.niri.actions; let sh = spawn "sh" "-c"; emacs = action: sh "emacsclient -c --eval \"${action}\""; - homedir = "/home/${username}/"; screenshot-annotate = sh ''${lib.getExe pkgs.grim} -g "$(${lib.getExe pkgs.slurp} -w 0)" -t ppm - | ${lib.getExe pkgs.satty} --early-exit --copy-command 'wl-copy' --filename '-' --initial-tool brush''; in { "Mod+E".action = sh "emacsclient -c"; "Mod+Shift+C".action = sh "dolphin"; - "Mod+C".action = emacs ''(dirvish \"${homedir}\")''; + "Mod+C".action = emacs ''(dirvish \"${home}\")''; "Mod+T".action = spawn "kitty"; "Mod+D".action = spawn "fuzzel"; "Mod+B".action = spawn "librewolf"; @@ -147,7 +146,7 @@ in "Mod+Tab".action = toggle-overview; }; input = { - power-key-handling.enable = true; + power-key-handling.enable = !osConfig.custom.hardware.hibernation.enable; focus-follows-mouse = { #enable = true; }; diff --git a/modules/nixos/hardware/framework12/default.nix b/modules/nixos/hardware/framework12/default.nix index ef576b8..136e9ff 100644 --- a/modules/nixos/hardware/framework12/default.nix +++ b/modules/nixos/hardware/framework12/default.nix @@ -17,9 +17,15 @@ with lib.${namespace}; let in { options.${namespace}.hardware.framework12 = with types; { enable = mkBoolOpt false "Enable hardware support for framework 12. P.s. you still need to import inputs.nixos-hardware.nixosModules.framework-12-13th-gen-intel yourself"; - imports = [inputs.nixos-hardware.nixosModules.framework-12-13th-gen-intel]; }; config = mkIf cfg.enable { + ${namespace}.hardware.battery = { + enable = true; + batteryName = "BAT1"; + remainingEnergy = "charge_now"; + powerUsage = "current_now"; + }; + services.fwupd.enable = true; #fwupdmgr update # Ensure that the `pinctrl_tigerlake` kernel module is loaded before `soc_button_array`. # This is required for correcly switching to tablet mode when the display is folded back. boot.extraModprobeConfig = '' diff --git a/modules/nixos/hardware/hibernation/default.nix b/modules/nixos/hardware/hibernation/default.nix new file mode 100644 index 0000000..1869c80 --- /dev/null +++ b/modules/nixos/hardware/hibernation/default.nix @@ -0,0 +1,42 @@ +{ + lib, + pkgs, + inputs, + namespace, + system, + target, + format, + virtual, + systems, + config, + ... +}: +with lib; +with lib.${namespace}; let + cfg = config.${namespace}.hardware.hibernation; +in { + options.${namespace}.hardware.hibernation = with types; { + enable = mkBoolOpt false "Enable hibernation"; + swapFileOffset = mkOpt (nullOr int) null "Offset of swapfile. Calculate offset using https://wiki.archlinux.org/title/Power_management/Suspend_and_hibernate#Acquire_swap_file_offset"; + resumeDevice = mkOpt' path "/dev/disk/by-label/nixos"; + }; + + config = mkIf cfg.enable { + boot = { + kernelParams = [ + "resume_offset=${builtins.toString cfg.resumeDevice}" + "mem_sleep_default=deep" + ]; + inherit (cfg) resumeDevice; + }; + services.logind = { + lidSwitch = mkDefault "suspend-then-hibernate"; + powerKey = mkDefault "suspend-then-hibernate"; + powerKeyLongPress = mkDefault "poweroff"; + }; + systemd.sleep.extraConfig = '' + HibernateDelaySec=30m + SuspendState=mem + ''; + }; +} diff --git a/modules/nixos/presets/disko/impermanenceBtrfs/default.nix b/modules/nixos/presets/disko/impermanenceBtrfs/default.nix index 55bd161..bfafed1 100644 --- a/modules/nixos/presets/disko/impermanenceBtrfs/default.nix +++ b/modules/nixos/presets/disko/impermanenceBtrfs/default.nix @@ -22,6 +22,10 @@ in { }; config = mkIf cfg.enable { + ${namespace}.impermanence = { + enable = true; + persistentStorage = "/persist"; + }; disko.devices = { disk.main = { inherit (cfg) device; diff --git a/modules/nixos/presets/disko/impermanenceBtrfsLuks/default.nix b/modules/nixos/presets/disko/impermanenceBtrfsLuks/default.nix new file mode 100644 index 0000000..e9b42db --- /dev/null +++ b/modules/nixos/presets/disko/impermanenceBtrfsLuks/default.nix @@ -0,0 +1,96 @@ +{ + lib, + pkgs, + inputs, + namespace, + system, + target, + format, + virtual, + systems, + config, + ... +}: +with lib; +with lib.${namespace}; let + cfg = config.${namespace}.presets.disko.impermanenceBtrfsLuks; +in { + options.${namespace}.presets.disko.impermanenceBtrfsLuks = with types; { + enable = mkBoolOpt false "Enable preset"; + device = mkOpt' str "/dev/nvme0n1"; + swapSize = mkOpt' int 32; + }; + + config = mkIf cfg.enable { + ${namespace}.impermanence = { + enable = true; + persistentStorage = "/persist"; + }; + disko.devices = { + disk = { + main = { + type = "disk"; + inherit device; + content = { + type = "gpt"; + partitions = { + ESP = { + label = "boot"; + name = "ESP"; + size = "512M"; + type = "EF00"; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + mountOptions = [ + "defaults" + ]; + }; + }; + luks = { + size = "100%"; + label = "luks"; + content = { + type = "luks"; + name = "root_vg"; + extraOpenArgs = [ + "--allow-discards" + "--perf-no_read_workqueue" + "--perf-no_write_workqueue" + ]; + # https://0pointer.net/blog/unlocking-luks2-volumes-with-tpm2-fido2-pkcs11-security-hardware-on-systemd-248.html + settings = {crypttabExtraOpts = ["fido2-device=auto" "token-timeout=10"];}; + content = { + type = "btrfs"; + extraArgs = ["-L" "nixos" "-f"]; + subvolumes = { + "/root" = { + mountpoint = "/"; + mountOptions = ["subvol=root" "compress=zstd" "noatime"]; + }; + "/nix" = { + mountpoint = "/nix"; + mountOptions = ["subvol=nix" "compress=zstd" "noatime"]; + }; + "/persist" = { + mountpoint = "/persist"; + mountOptions = ["subvol=persist" "compress=zstd" "noatime"]; + }; + "/swap" = { + mountpoint = "/swap"; + swap.swapfile.size = "${builtins.toString cfg.swapSize}G"; + }; + }; + }; + }; + }; + }; + }; + }; + }; + }; + + fileSystems."/persist".neededForBoot = true; + }; +} diff --git a/overlays/ollama/default.nix b/overlays/ollama/default.nix new file mode 100644 index 0000000..0c7a993 --- /dev/null +++ b/overlays/ollama/default.nix @@ -0,0 +1,3 @@ +{channels, ...}: final: prev: { + inherit (channels.unstable) ollama; +} diff --git a/systems/x86_64-linux/kylekrein-framework12/default.nix b/systems/x86_64-linux/kylekrein-framework12/default.nix new file mode 100644 index 0000000..da76fee --- /dev/null +++ b/systems/x86_64-linux/kylekrein-framework12/default.nix @@ -0,0 +1,68 @@ +{ + lib, + pkgs, + inputs, + namespace, + system, + target, + format, + virtual, + systems, + config, + ... +}: let + niri-config = { + programs.niri = { + settings = { + #input.power-key-handling.enable = true; + spawn-at-startup = [ + { + command = [ + "${lib.getExe pkgs.brightnessctl}" + "-s 20%" + ]; + } + ]; + }; + }; + }; +in + with lib; + with lib.custom; { + facter.reportPath = ./facter.json; + systemd.network.wait-online.enable = lib.mkForce false; #facter + + custom.hardware.hibernation = { + enable = true; + swapFileOffset = 533760; + }; + custom.presets.disko.impermanenceBtrfsLuks = { + enable = true; + swapSize = 64; + }; + custom.hardware.framework12 = enabled; + custom.hardware.secureBoot = enabled; + custom.impermanence = enabled; + custom.presets.workstation = enabled; + custom.presets.gaming = enabled; + custom.windowManagers.niri = enabled; + custom.loginManagers.sddm = enabled; + custom.services.ai = { + enable = true; + models = ["qwq" "llama3.1" "qwen2.5-coder:7b" "gpt-oss:20b"]; + }; + custom.users.kylekrein = { + enable = true; + config = niri-config; + }; + environment.systemPackages = with pkgs; [ + blender + nix-schemas + ]; + #Chat host + networking.firewall.allowedTCPPorts = [80 443 22 8448 9993 8081]; + + # ======================== DO NOT CHANGE THIS ======================== + system.stateVersion = "25.05"; + # ======================== DO NOT CHANGE THIS ======================== + } diff --git a/systems/x86_64-linux/kylekrein-framework12/facter.json b/systems/x86_64-linux/kylekrein-framework12/facter.json new file mode 100755 index 0000000..047c316 --- /dev/null +++ b/systems/x86_64-linux/kylekrein-framework12/facter.json @@ -0,0 +1,3582 @@ +{ + "version": 1, + "system": "x86_64-linux", + "virtualisation": "none", + "hardware": { + "bios": { + "apm_info": { + "supported": false, + "enabled": false, + "version": 0, + "sub_version": 0, + "bios_flags": 0 + }, + "vbe_info": { + "version": 0, + "video_memory": 0 + }, + "pnp": false, + "pnp_id": 0, + "lba_support": false, + "low_memory_size": 0, + "smbios_version": 772 + }, + "bluetooth": [ + { + "index": 42, + "attached_to": 40, + "class_list": [ + "usb", + "bluetooth" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0115", + "name": "Bluetooth Device", + "value": 277 + }, + "vendor": { + "hex": "8087", + "value": 32903 + }, + "device": { + "hex": "0033", + "value": 51 + }, + "model": "Bluetooth Device", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-10/3-10:1.0", + "sysfs_bus_id": "3-10:1.0", + "resources": [ + { + "type": "baud", + "speed": 12000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00e0", + "name": "wireless", + "value": 224 + }, + "device_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "device_protocol": 1, + "interface_class": { + "hex": "00e0", + "name": "wireless", + "value": 224 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, + "interface_number": 0, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "driver": "btusb", + "driver_module": "btusb", + "drivers": [ + "btusb" + ], + "driver_modules": [ + "btusb" + ], + "module_alias": "usb:v8087p0033d0000dcE0dsc01dp01icE0isc01ip01in00" + }, + { + "index": 47, + "attached_to": 40, + "class_list": [ + "usb", + "bluetooth" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0115", + "name": "Bluetooth Device", + "value": 277 + }, + "vendor": { + "hex": "8087", + "value": 32903 + }, + "device": { + "hex": "0033", + "value": 51 + }, + "model": "Bluetooth Device", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-10/3-10:1.1", + "sysfs_bus_id": "3-10:1.1", + "resources": [ + { + "type": "baud", + "speed": 12000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00e0", + "name": "wireless", + "value": 224 + }, + "device_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "device_protocol": 1, + "interface_class": { + "hex": "00e0", + "name": "wireless", + "value": 224 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, + "interface_number": 1, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "driver": "btusb", + "driver_module": "btusb", + "drivers": [ + "btusb" + ], + "driver_modules": [ + "btusb" + ], + "module_alias": "usb:v8087p0033d0000dcE0dsc01dp01icE0isc01ip01in01" + } + ], + "bridge": [ + { + "index": 19, + "attached_to": 0, + "class_list": [ + "pci", + "bridge" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 31 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0001", + "name": "ISA bridge", + "value": 1 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "519d", + "value": 20893 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel ISA bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.0", + "sysfs_bus_id": "0000:00:1f.0", + "detail": { + "function": 0, + "command": 1031, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "module_alias": "pci:v00008086d0000519Dsv0000F111sd0000000Cbc06sc01i00" + }, + { + "index": 27, + "attached_to": 0, + "class_list": [ + "pci", + "bridge" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0000", + "name": "Host bridge", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "a708", + "value": 42760 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Host bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:00.0", + "sysfs_bus_id": "0000:00:00.0", + "detail": { + "function": 0, + "command": 6, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "module_alias": "pci:v00008086d0000A708sv0000F111sd0000000Cbc06sc00i00" + }, + { + "index": 29, + "attached_to": 0, + "class_list": [ + "pci", + "bridge" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 6 + }, + "base_class": { + "hex": "0006", + "name": "Bridge", + "value": 6 + }, + "sub_class": { + "hex": "0004", + "name": "PCI bridge", + "value": 4 + }, + "pci_interface": { + "hex": "0000", + "name": "Normal decode", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "a74d", + "value": 42829 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel PCI bridge", + "sysfs_id": "/devices/pci0000:00/0000:00:06.0", + "sysfs_bus_id": "0000:00:06.0", + "detail": { + "function": 0, + "command": 1287, + "header_type": 1, + "secondary_bus": 1, + "prog_if": 0 + }, + "driver": "pcieport", + "drivers": [ + "pcieport" + ], + "module_alias": "pci:v00008086d0000A74Dsv0000F111sd0000000Cbc06sc04i00" + } + ], + "camera": [ + { + "index": 39, + "attached_to": 40, + "class_list": [ + "camera", + "usb" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010f", + "name": "Camera", + "value": 271 + }, + "vendor": { + "hex": "32ac", + "name": "Framework", + "value": 12972 + }, + "device": { + "hex": "001d", + "name": "Framework Laptop 12 Webcam Module", + "value": 29 + }, + "revision": { + "hex": "0000", + "name": "0.16", + "value": 0 + }, + "serial": "FRAPABCHA1521301YH", + "model": "Framework Laptop 12 Webcam Module", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-7/3-7:1.0", + "sysfs_bus_id": "3-7:1.0", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, + "interface_number": 0, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "function_subclass": { + "hex": "0003", + "name": "hid", + "value": 3 + }, + "function_protocol": 0, + "interface_count": 2, + "first_interface": 0 + } + }, + "hotplug": "usb", + "driver": "uvcvideo", + "driver_module": "uvcvideo", + "drivers": [ + "uvcvideo" + ], + "driver_modules": [ + "uvcvideo" + ], + "module_alias": "usb:v32ACp001Dd0016dcEFdsc02dp01ic0Eisc01ip01in00" + }, + { + "index": 44, + "attached_to": 40, + "class_list": [ + "camera", + "usb" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010f", + "name": "Camera", + "value": 271 + }, + "vendor": { + "hex": "32ac", + "name": "Framework", + "value": 12972 + }, + "device": { + "hex": "001d", + "name": "Framework Laptop 12 Webcam Module", + "value": 29 + }, + "revision": { + "hex": "0000", + "name": "0.16", + "value": 0 + }, + "serial": "FRAPABCHA1521301YH", + "model": "Framework Laptop 12 Webcam Module", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-7/3-7:1.1", + "sysfs_bus_id": "3-7:1.1", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "interface_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "interface_protocol": 1, + "interface_number": 1, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "000e", + "name": "video", + "value": 14 + }, + "function_subclass": { + "hex": "0003", + "name": "hid", + "value": 3 + }, + "function_protocol": 0, + "interface_count": 2, + "first_interface": 0 + } + }, + "hotplug": "usb", + "driver": "uvcvideo", + "driver_module": "uvcvideo", + "drivers": [ + "uvcvideo" + ], + "driver_modules": [ + "uvcvideo" + ], + "module_alias": "usb:v32ACp001Dd0016dcEFdsc02dp01ic0Eisc02ip01in01" + } + ], + "cpu": [ + { + "architecture": "x86_64", + "vendor_name": "GenuineIntel", + "model_name": "13th Gen Intel(R) Core(TM) i5-1334U", + "family": 6, + "model": 186, + "stepping": 3, + "features": [ + "fpu", + "vme", + "de", + "pse", + "tsc", + "msr", + "pae", + "mce", + "cx8", + "apic", + "sep", + "mtrr", + "pge", + "mca", + "cmov", + "pat", + "pse36", + "clflush", + "dts", + "acpi", + "mmx", + "fxsr", + "sse", + "sse2", + "ss", + "ht", + "tm", + "pbe", + "syscall", + "nx", + "pdpe1gb", + "rdtscp", + "lm", + "constant_tsc", + "art", + "arch_perfmon", + "pebs", + "bts", + "rep_good", + "nopl", + "xtopology", + "nonstop_tsc", + "cpuid", + "aperfmperf", + "tsc_known_freq", + "pni", + "pclmulqdq", + "dtes64", + "monitor", + "ds_cpl", + "vmx", + "smx", + "est", + "tm2", + "ssse3", + "sdbg", + "fma", + "cx16", + "xtpr", + "pdcm", + "sse4_1", + "sse4_2", + "x2apic", + "movbe", + "popcnt", + "tsc_deadline_timer", + "aes", + "xsave", + "avx", + "f16c", + "rdrand", + "lahf_lm", + "abm", + "3dnowprefetch", + "cpuid_fault", + "epb", + "ssbd", + "ibrs", + "ibpb", + "stibp", + "ibrs_enhanced", + "tpr_shadow", + "flexpriority", + "ept", + "vpid", + "ept_ad", + "fsgsbase", + "tsc_adjust", + "bmi1", + "avx2", + "smep", + "bmi2", + "erms", + "invpcid", + "rdseed", + "adx", + "smap", + "clflushopt", + "clwb", + "intel_pt", + "sha_ni", + "xsaveopt", + "xsavec", + "xgetbv1", + "xsaves", + "split_lock_detect", + "user_shstk", + "avx_vnni", + "dtherm", + "ida", + "arat", + "pln", + "pts", + "hwp", + "hwp_notify", + "hwp_act_window", + "hwp_epp", + "hwp_pkg_req", + "hfi", + "vnmi", + "umip", + "pku", + "ospke", + "waitpkg", + "gfni", + "vaes", + "vpclmulqdq", + "rdpid", + "movdiri", + "movdir64b", + "fsrm", + "md_clear", + "serialize", + "arch_lbr", + "ibt", + "flush_l1d", + "arch_capabilities" + ], + "bugs": [ + "spectre_v1", + "spectre_v2", + "spec_store_bypass", + "swapgs", + "eibrs_pbrsb", + "rfds", + "bhi" + ], + "power_management": [ + "" + ], + "bogo": 4992, + "cache": 12288, + "units": 64, + "physical_id": 0, + "siblings": 12, + "cores": 10, + "fpu": false, + "fpu_exception": false, + "cpuid_level": 32, + "write_protect": false, + "clflush_size": 64, + "cache_alignment": 64, + "address_sizes": { + "physical": "0x27", + "virtual": "0x30" + } + } + ], + "disk": [ + { + "index": 36, + "attached_to": 23, + "class_list": [ + "disk", + "block_device", + "nvme" + ], + "bus_type": { + "hex": "0096", + "name": "NVME", + "value": 150 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0106", + "name": "Mass Storage Device", + "value": 262 + }, + "sub_class": { + "hex": "0000", + "name": "Disk", + "value": 0 + }, + "vendor": { + "hex": "15b7", + "value": 5559 + }, + "sub_vendor": { + "hex": "15b7", + "value": 5559 + }, + "device": { + "hex": "5042", + "name": "WD_BLACK SN770M 1TB", + "value": 20546 + }, + "sub_device": { + "hex": "5042", + "value": 20546 + }, + "serial": "25172L801313", + "model": "WD_BLACK SN770M 1TB", + "sysfs_id": "/class/block/nvme0n1", + "sysfs_bus_id": "nvme0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:06.0/0000:01:00.0/nvme/nvme0", + "unix_device_names": [ + "/dev/disk/by-id/nvme-WD_BLACK_SN770M_1TB_25172L801313", + "/dev/disk/by-id/nvme-WD_BLACK_SN770M_1TB_25172L801313_1", + "/dev/disk/by-id/nvme-eui.e8238fa6bf530001001b448b4d346a81", + "/dev/disk/by-path/pci-0000:01:00.0-nvme-1", + "/dev/nvme0n1" + ], + "resources": [ + { + "type": "disk_geo", + "cylinders": 953869, + "heads": 64, + "sectors": 32, + "size": "0x0", + "geo_type": "logical" + }, + { + "type": "size", + "unit": "sectors", + "value_1": 1953525168, + "value_2": 512 + } + ], + "driver": "nvme", + "driver_module": "nvme", + "drivers": [ + "nvme" + ], + "driver_modules": [ + "nvme" + ] + }, + { + "index": 37, + "attached_to": 32, + "class_list": [ + "disk", + "usb", + "scsi", + "block_device" + ], + "bus_type": { + "hex": "0084", + "name": "SCSI", + "value": 132 + }, + "slot": { + "bus": 1, + "number": 0 + }, + "base_class": { + "hex": "0106", + "name": "Mass Storage Device", + "value": 262 + }, + "sub_class": { + "hex": "0000", + "name": "Disk", + "value": 0 + }, + "vendor": { + "hex": "0781", + "name": "SanDisk", + "value": 1921 + }, + "device": { + "hex": "5567", + "name": "Cruzer Blade", + "value": 21863 + }, + "revision": { + "hex": "0000", + "name": "1.26", + "value": 0 + }, + "serial": "4C532000020817105100", + "model": "SanDisk Cruzer Blade", + "sysfs_id": "/class/block/sdb", + "sysfs_bus_id": "1:0:0:0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0/host1/target1:0:0/1:0:0:0", + "unix_device_names": [ + "/dev/disk/by-id/usb-SanDisk_Cruzer_Blade_4C532000020817105100-0:0", + "/dev/disk/by-path/pci-0000:00:14.0-usb-0:4:1.0-scsi-0:0:0:0", + "/dev/disk/by-path/pci-0000:00:14.0-usbv2-0:4:1.0-scsi-0:0:0:0", + "/dev/sdb" + ], + "unix_device_name2": "/dev/sg1", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + }, + { + "type": "disk_geo", + "cylinders": 1017, + "heads": 124, + "sectors": 62, + "size": "0x0", + "geo_type": "logical" + }, + { + "type": "size", + "unit": "sectors", + "value_1": 7821312, + "value_2": 512 + } + ], + "driver": "usb-storage", + "driver_module": "usb_storage", + "drivers": [ + "sd", + "usb-storage" + ], + "driver_modules": [ + "sd_mod", + "usb_storage" + ], + "module_alias": "usb:v0781p5567d0126dc00dsc00dp00ic08isc06ip50in00" + }, + { + "index": 38, + "attached_to": 17, + "class_list": [ + "disk", + "usb", + "scsi", + "block_device" + ], + "bus_type": { + "hex": "0084", + "name": "SCSI", + "value": 132 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0106", + "name": "Mass Storage Device", + "value": 262 + }, + "sub_class": { + "hex": "0000", + "name": "Disk", + "value": 0 + }, + "vendor": { + "hex": "0781", + "name": "USB", + "value": 1921 + }, + "device": { + "hex": "55ab", + "name": "SanDisk 3.2Gen1", + "value": 21931 + }, + "revision": { + "hex": "0000", + "name": "1.00", + "value": 0 + }, + "serial": "0401570c9b2d0d0e2606", + "model": "USB SanDisk 3.2Gen1", + "sysfs_id": "/class/block/sda", + "sysfs_bus_id": "0:0:0:0", + "sysfs_device_link": "/devices/pci0000:00/0000:00:0d.0/usb2/2-2/2-2:1.0/host0/target0:0:0/0:0:0:0", + "unix_device_names": [ + "/dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_0401570c9b2d0d0e2606c0209a79d144b8ba0d37318074eb2d6b8ddc150b5ee378c60000000000000000000068de47f9ff931b18ab5581075caa5978-0:0", + "/dev/disk/by-path/pci-0000:00:0d.0-usb-0:2:1.0-scsi-0:0:0:0", + "/dev/disk/by-path/pci-0000:00:0d.0-usbv3-0:2:1.0-scsi-0:0:0:0", + "/dev/sda" + ], + "unix_device_name2": "/dev/sg0", + "resources": [ + { + "type": "disk_geo", + "cylinders": 58680, + "heads": 64, + "sectors": 32, + "size": "0x0", + "geo_type": "logical" + }, + { + "type": "size", + "unit": "sectors", + "value_1": 120176640, + "value_2": 512 + } + ], + "driver": "usb-storage", + "driver_module": "usb_storage", + "drivers": [ + "sd", + "usb-storage" + ], + "driver_modules": [ + "sd_mod", + "usb_storage" + ], + "module_alias": "usb:v0781p55ABd0100dc00dsc00dp00ic08isc06ip50in00" + } + ], + "graphics_card": [ + { + "index": 31, + "attached_to": 0, + "class_list": [ + "graphics_card", + "pci" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 2 + }, + "base_class": { + "hex": "0003", + "name": "Display controller", + "value": 3 + }, + "sub_class": { + "hex": "0000", + "name": "VGA compatible controller", + "value": 0 + }, + "pci_interface": { + "hex": "0000", + "name": "VGA", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "a721", + "value": 42785 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0004", + "value": 4 + }, + "model": "Intel VGA compatible controller", + "sysfs_id": "/devices/pci0000:00/0000:00:02.0", + "sysfs_bus_id": "0000:00:02.0", + "resources": [ + { + "type": "io", + "base": 12288, + "range": 64, + "enabled": true, + "access": "read_write" + } + ], + "detail": { + "function": 0, + "command": 1031, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "i915", + "driver_module": "i915", + "drivers": [ + "i915" + ], + "driver_modules": [ + "i915" + ], + "module_alias": "pci:v00008086d0000A721sv0000F111sd0000000Cbc03sc00i00" + } + ], + "hub": [ + { + "index": 40, + "attached_to": 32, + "class_list": [ + "usb", + "hub" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010a", + "name": "Hub", + "value": 266 + }, + "vendor": { + "hex": "1d6b", + "name": "Linux 6.6.63 xhci-hcd", + "value": 7531 + }, + "device": { + "hex": "0002", + "name": "xHCI Host Controller", + "value": 2 + }, + "revision": { + "hex": "0000", + "name": "6.06", + "value": 0 + }, + "serial": "0000:00:14.0", + "model": "Linux 6.6.63 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-0:1.0", + "sysfs_bus_id": "3-0:1.0", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "0009", + "name": "hub", + "value": 9 + }, + "device_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "device_protocol": 1, + "interface_class": { + "hex": "0009", + "name": "hub", + "value": 9 + }, + "interface_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "interface_protocol": 0, + "interface_number": 0, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "driver": "hub", + "drivers": [ + "hub" + ], + "module_alias": "usb:v1D6Bp0002d0606dc09dsc00dp01ic09isc00ip00in00" + }, + { + "index": 45, + "attached_to": 32, + "class_list": [ + "usb", + "hub" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010a", + "name": "Hub", + "value": 266 + }, + "vendor": { + "hex": "1d6b", + "name": "Linux 6.6.63 xhci-hcd", + "value": 7531 + }, + "device": { + "hex": "0003", + "name": "xHCI Host Controller", + "value": 3 + }, + "revision": { + "hex": "0000", + "name": "6.06", + "value": 0 + }, + "serial": "0000:00:14.0", + "model": "Linux 6.6.63 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb4/4-0:1.0", + "sysfs_bus_id": "4-0:1.0", + "detail": { + "device_class": { + "hex": "0009", + "name": "hub", + "value": 9 + }, + "device_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "device_protocol": 3, + "interface_class": { + "hex": "0009", + "name": "hub", + "value": 9 + }, + "interface_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "interface_protocol": 0, + "interface_number": 0, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "driver": "hub", + "drivers": [ + "hub" + ], + "module_alias": "usb:v1D6Bp0003d0606dc09dsc00dp03ic09isc00ip00in00" + }, + { + "index": 46, + "attached_to": 17, + "class_list": [ + "usb", + "hub" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010a", + "name": "Hub", + "value": 266 + }, + "vendor": { + "hex": "1d6b", + "name": "Linux 6.6.63 xhci-hcd", + "value": 7531 + }, + "device": { + "hex": "0002", + "name": "xHCI Host Controller", + "value": 2 + }, + "revision": { + "hex": "0000", + "name": "6.06", + "value": 0 + }, + "serial": "0000:00:0d.0", + "model": "Linux 6.6.63 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb1/1-0:1.0", + "sysfs_bus_id": "1-0:1.0", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "0009", + "name": "hub", + "value": 9 + }, + "device_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "device_protocol": 1, + "interface_class": { + "hex": "0009", + "name": "hub", + "value": 9 + }, + "interface_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "interface_protocol": 0, + "interface_number": 0, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "driver": "hub", + "drivers": [ + "hub" + ], + "module_alias": "usb:v1D6Bp0002d0606dc09dsc00dp01ic09isc00ip00in00" + }, + { + "index": 49, + "attached_to": 17, + "class_list": [ + "usb", + "hub" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "010a", + "name": "Hub", + "value": 266 + }, + "vendor": { + "hex": "1d6b", + "name": "Linux 6.6.63 xhci-hcd", + "value": 7531 + }, + "device": { + "hex": "0003", + "name": "xHCI Host Controller", + "value": 3 + }, + "revision": { + "hex": "0000", + "name": "6.06", + "value": 0 + }, + "serial": "0000:00:0d.0", + "model": "Linux 6.6.63 xhci-hcd xHCI Host Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.0/usb2/2-0:1.0", + "sysfs_bus_id": "2-0:1.0", + "detail": { + "device_class": { + "hex": "0009", + "name": "hub", + "value": 9 + }, + "device_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "device_protocol": 3, + "interface_class": { + "hex": "0009", + "name": "hub", + "value": 9 + }, + "interface_subclass": { + "hex": "0000", + "name": "per_interface", + "value": 0 + }, + "interface_protocol": 0, + "interface_number": 0, + "interface_alternate_setting": 0 + }, + "hotplug": "usb", + "driver": "hub", + "drivers": [ + "hub" + ], + "module_alias": "usb:v1D6Bp0003d0606dc09dsc00dp03ic09isc00ip00in00" + } + ], + "memory": [ + { + "index": 15, + "attached_to": 0, + "class_list": [ + "memory" + ], + "base_class": { + "hex": "0101", + "name": "Internally Used Class", + "value": 257 + }, + "sub_class": { + "hex": "0002", + "name": "Main Memory", + "value": 2 + }, + "model": "Main Memory", + "resources": [ + { + "type": "phys_mem", + "range": 51539607552 + } + ] + } + ], + "monitor": [ + { + "index": 35, + "attached_to": 31, + "class_list": [ + "monitor" + ], + "base_class": { + "hex": "0100", + "name": "Monitor", + "value": 256 + }, + "sub_class": { + "hex": "0002", + "name": "LCD Monitor", + "value": 2 + }, + "vendor": { + "hex": "09e5", + "name": "BOE CQ", + "value": 2533 + }, + "device": { + "hex": "0d56", + "name": "NV122WUM-N42", + "value": 3414 + }, + "serial": "0", + "model": "BOE CQ NV122WUM-N42", + "resources": [ + { + "type": "monitor", + "width": 1920, + "height": 1200, + "vertical_frequency": 60, + "interlaced": false + }, + { + "type": "size", + "unit": "mm", + "value_1": 263, + "value_2": 164 + } + ], + "detail": { + "manufacture_year": 2024, + "manufacture_week": 39, + "vertical_sync": { + "min": 40, + "max": 60 + }, + "horizontal_sync": { + "min": 76, + "max": 76 + }, + "horizontal_sync_timings": { + "disp": 1920, + "sync_start": 1968, + "sync_end": 2000, + "total": 2140 + }, + "vertical_sync_timings": { + "disp": 1200, + "sync_start": 1203, + "sync_end": 1209, + "total": 1260 + }, + "clock": 161790, + "width": 1920, + "height": 1200, + "width_millimetres": 263, + "height_millimetres": 164, + "horizontal_flag": 45, + "vertical_flag": 43, + "vendor": "BOE CQ", + "name": "NV122WUM-N42" + }, + "driver_info": { + "type": "display", + "width": 1920, + "height": 1200, + "vertical_sync": { + "min": 40, + "max": 60 + }, + "horizontal_sync": { + "min": 76, + "max": 76 + }, + "bandwidth": 0, + "horizontal_sync_timings": { + "disp": 1920, + "sync_start": 1968, + "sync_end": 2000, + "total": 2140 + }, + "vertical_sync_timings": { + "disp": 1200, + "sync_start": 1203, + "sync_end": 1209, + "total": 1260 + }, + "horizontal_flag": 45, + "vertical_flag": 43 + } + } + ], + "mouse": [ + { + "index": 52, + "attached_to": 0, + "bus_type": { + "hex": "0081", + "name": "serial", + "value": 129 + }, + "base_class": { + "hex": "0118", + "name": "touchpad", + "value": 280 + }, + "sub_class": { + "hex": "0001", + "name": "bus", + "value": 1 + }, + "vendor": { + "hex": "093a", + "value": 2362 + }, + "device": { + "hex": "0239", + "value": 569 + }, + "sysfs_id": "/devices/pci0000:00/0000:00:19.0/i2c_designware.2/i2c-3/i2c-PIXA3854:00/0018:093A:0239.0003/input/input19", + "unix_device_names": [ + "/dev/input/event9", + "/dev/input/ + handler" + ] + } + ], + "network_controller": [ + { + "index": 21, + "attached_to": 0, + "class_list": [ + "network_controller", + "pci", + "wlan_card" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 20 + }, + "base_class": { + "hex": "0002", + "name": "Network controller", + "value": 2 + }, + "sub_class": { + "hex": "0082", + "name": "WLAN controller", + "value": 130 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "device": { + "hex": "51f1", + "value": 20977 + }, + "sub_device": { + "hex": "0094", + "value": 148 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel WLAN controller", + "sysfs_id": "/devices/pci0000:00/0000:00:14.3", + "sysfs_bus_id": "0000:00:14.3", + "unix_device_names": [ + "wlp0s20f3" + ], + "resources": [ + { + "type": "hwaddr", + "address": 52 + }, + { + "type": "phwaddr", + "address": 52 + }, + { + "type": "wlan", + "channels": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11", + "12", + "13", + "36", + "40", + "44", + "48", + "52", + "56", + "60", + "64", + "100", + "104", + "108", + "112", + "116", + "120", + "124", + "128", + "132", + "136", + "140" + ], + "frequencies": [ + "2.412", + "2.417", + "2.422", + "2.427", + "2.432", + "2.437", + "2.442", + "2.447", + "2.452", + "2.457", + "2.462", + "2.467", + "2.472", + "5.18", + "5.2", + "5.22", + "5.24", + "5.26", + "5.28", + "5.3", + "5.32", + "5.5", + "5.52", + "5.54", + "5.56", + "5.58", + "5.6", + "5.62", + "5.64", + "5.66", + "5.68", + "5.7" + ], + "auth_modes": [ + "open", + "sharedkey", + "wpa-psk", + "wpa-eap" + ], + "enc_modes": [ + "WEP40", + "WEP104", + "TKIP", + "CCMP" + ] + } + ], + "detail": { + "function": 3, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "iwlwifi", + "driver_module": "iwlwifi", + "drivers": [ + "iwlwifi" + ], + "driver_modules": [ + "iwlwifi" + ], + "module_alias": "pci:v00008086d000051F1sv00008086sd00000094bc02sc80i00" + } + ], + "network_interface": [ + { + "index": 50, + "attached_to": 0, + "class_list": [ + "network_interface" + ], + "base_class": { + "hex": "0107", + "name": "Network Interface", + "value": 263 + }, + "sub_class": { + "hex": "0000", + "name": "Loopback", + "value": 0 + }, + "model": "Loopback network interface", + "sysfs_id": "/class/net/lo", + "unix_device_names": [ + "lo" + ] + }, + { + "index": 51, + "attached_to": 21, + "class_list": [ + "network_interface" + ], + "base_class": { + "hex": "0107", + "name": "Network Interface", + "value": 263 + }, + "sub_class": { + "hex": "0001", + "name": "Ethernet", + "value": 1 + }, + "model": "Ethernet network interface", + "sysfs_id": "/class/net/wlp0s20f3", + "sysfs_device_link": "/devices/pci0000:00/0000:00:14.3", + "unix_device_names": [ + "wlp0s20f3" + ], + "resources": [ + { + "type": "hwaddr", + "address": 52 + }, + { + "type": "phwaddr", + "address": 52 + } + ], + "driver": "iwlwifi", + "driver_module": "iwlwifi", + "drivers": [ + "iwlwifi" + ], + "driver_modules": [ + "iwlwifi" + ] + } + ], + "pci": [ + { + "index": 16, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 8 + }, + "base_class": { + "hex": "0008", + "name": "Generic system peripheral", + "value": 8 + }, + "sub_class": { + "hex": "0080", + "name": "System peripheral", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "a74f", + "value": 42831 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel System peripheral", + "sysfs_id": "/devices/pci0000:00/0000:00:08.0", + "sysfs_bus_id": "0000:00:08.0", + "detail": { + "function": 0, + "command": 6, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "module_alias": "pci:v00008086d0000A74Fsv0000F111sd0000000Cbc08sc80i00" + }, + { + "index": 18, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 21 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0080", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51e9", + "value": 20969 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Serial bus controller", + "sysfs_id": "/devices/pci0000:00/0000:00:15.1", + "sysfs_bus_id": "0000:00:15.1", + "detail": { + "function": 1, + "command": 6, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "intel-lpss", + "driver_module": "intel_lpss_pci", + "drivers": [ + "intel-lpss" + ], + "driver_modules": [ + "intel_lpss_pci" + ], + "module_alias": "pci:v00008086d000051E9sv0000F111sd0000000Cbc0Csc80i00" + }, + { + "index": 20, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 4 + }, + "base_class": { + "hex": "0011", + "name": "Signal processing controller", + "value": 17 + }, + "sub_class": { + "hex": "0080", + "name": "Signal processing controller", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "a71d", + "value": 42781 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Signal processing controller", + "sysfs_id": "/devices/pci0000:00/0000:00:04.0", + "sysfs_bus_id": "0000:00:04.0", + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "proc_thermal_pci", + "driver_module": "processor_thermal_device_pci", + "drivers": [ + "proc_thermal_pci" + ], + "driver_modules": [ + "processor_thermal_device_pci" + ], + "module_alias": "pci:v00008086d0000A71Dsv0000F111sd0000000Cbc11sc80i00" + }, + { + "index": 22, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 22 + }, + "base_class": { + "hex": "0007", + "name": "Communication controller", + "value": 7 + }, + "sub_class": { + "hex": "0080", + "name": "Communication controller", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51e0", + "value": 20960 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Communication controller", + "sysfs_id": "/devices/pci0000:00/0000:00:16.0", + "sysfs_bus_id": "0000:00:16.0", + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "mei_me", + "driver_module": "mei_me", + "drivers": [ + "mei_me" + ], + "driver_modules": [ + "mei_me" + ], + "module_alias": "pci:v00008086d000051E0sv0000F111sd0000000Cbc07sc80i00" + }, + { + "index": 24, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 31 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0080", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51a4", + "value": 20900 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Serial bus controller", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.5", + "sysfs_bus_id": "0000:00:1f.5", + "detail": { + "function": 5, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "intel-spi", + "driver_module": "spi_intel_pci", + "drivers": [ + "intel-spi" + ], + "driver_modules": [ + "spi_intel_pci" + ], + "module_alias": "pci:v00008086d000051A4sv0000F111sd0000000Cbc0Csc80i00" + }, + { + "index": 25, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 25 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0080", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51c5", + "value": 20933 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Serial bus controller", + "sysfs_id": "/devices/pci0000:00/0000:00:19.0", + "sysfs_bus_id": "0000:00:19.0", + "detail": { + "function": 0, + "command": 6, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "intel-lpss", + "driver_module": "intel_lpss_pci", + "drivers": [ + "intel-lpss" + ], + "driver_modules": [ + "intel_lpss_pci" + ], + "module_alias": "pci:v00008086d000051C5sv0000F111sd0000000Cbc0Csc80i00" + }, + { + "index": 28, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 21 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0080", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51e8", + "value": 20968 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Serial bus controller", + "sysfs_id": "/devices/pci0000:00/0000:00:15.0", + "sysfs_bus_id": "0000:00:15.0", + "detail": { + "function": 0, + "command": 6, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "intel-lpss", + "driver_module": "intel_lpss_pci", + "drivers": [ + "intel-lpss" + ], + "driver_modules": [ + "intel_lpss_pci" + ], + "module_alias": "pci:v00008086d000051E8sv0000F111sd0000000Cbc0Csc80i00" + }, + { + "index": 30, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 20 + }, + "base_class": { + "hex": "0005", + "name": "Memory controller", + "value": 5 + }, + "sub_class": { + "hex": "0000", + "name": "RAM memory", + "value": 0 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51ef", + "value": 20975 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel RAM memory", + "sysfs_id": "/devices/pci0000:00/0000:00:14.2", + "sysfs_bus_id": "0000:00:14.2", + "detail": { + "function": 2, + "command": 6, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "module_alias": "pci:v00008086d000051EFsv0000F111sd0000000Cbc05sc00i00" + }, + { + "index": 33, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 31 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0005", + "name": "SMBus", + "value": 5 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51a3", + "value": 20899 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel SMBus", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.4", + "sysfs_bus_id": "0000:00:1f.4", + "resources": [ + { + "type": "io", + "base": 61344, + "range": 32, + "enabled": true, + "access": "read_write" + } + ], + "detail": { + "function": 4, + "command": 3, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "i801_smbus", + "driver_module": "i2c_i801", + "drivers": [ + "i801_smbus" + ], + "driver_modules": [ + "i2c_i801" + ], + "module_alias": "pci:v00008086d000051A3sv0000F111sd0000000Cbc0Csc05i00" + }, + { + "index": 34, + "attached_to": 0, + "class_list": [ + "pci", + "unknown" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 10 + }, + "base_class": { + "hex": "0011", + "name": "Signal processing controller", + "value": 17 + }, + "sub_class": { + "hex": "0080", + "name": "Signal processing controller", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "a77d", + "value": 42877 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Signal processing controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0a.0", + "sysfs_bus_id": "0000:00:0a.0", + "detail": { + "function": 0, + "command": 2, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 0 + }, + "driver": "intel_vsec", + "driver_module": "intel_vsec", + "drivers": [ + "intel_vsec" + ], + "driver_modules": [ + "intel_vsec" + ], + "module_alias": "pci:v00008086d0000A77Dsv0000F111sd0000000Cbc11sc80i00" + } + ], + "sound": [ + { + "index": 26, + "attached_to": 0, + "class_list": [ + "sound", + "pci" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 31 + }, + "base_class": { + "hex": "0004", + "name": "Multimedia controller", + "value": 4 + }, + "sub_class": { + "hex": "0003", + "value": 3 + }, + "pci_interface": { + "hex": "0080", + "value": 128 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51ca", + "value": 20938 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel Multimedia controller", + "sysfs_id": "/devices/pci0000:00/0000:00:1f.3", + "sysfs_bus_id": "0000:00:1f.3", + "detail": { + "function": 3, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 128 + }, + "driver": "snd_hda_intel", + "driver_module": "snd_hda_intel", + "drivers": [ + "snd_hda_intel" + ], + "driver_modules": [ + "snd_hda_intel" + ], + "module_alias": "pci:v00008086d000051CAsv0000F111sd0000000Cbc04sc03i80" + } + ], + "storage_controller": [ + { + "index": 23, + "attached_to": 29, + "class_list": [ + "storage_controller", + "pci" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 1, + "number": 0 + }, + "base_class": { + "hex": "0001", + "name": "Mass storage controller", + "value": 1 + }, + "sub_class": { + "hex": "0008", + "value": 8 + }, + "pci_interface": { + "hex": "0002", + "value": 2 + }, + "vendor": { + "hex": "15b7", + "value": 5559 + }, + "sub_vendor": { + "hex": "15b7", + "value": 5559 + }, + "device": { + "hex": "5042", + "value": 20546 + }, + "sub_device": { + "hex": "5042", + "value": 20546 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Mass storage controller", + "sysfs_id": "/devices/pci0000:00/0000:00:06.0/0000:01:00.0", + "sysfs_bus_id": "0000:01:00.0", + "detail": { + "function": 0, + "command": 1031, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 2 + }, + "driver": "nvme", + "driver_module": "nvme", + "drivers": [ + "nvme" + ], + "driver_modules": [ + "nvme" + ], + "module_alias": "pci:v000015B7d00005042sv000015B7sd00005042bc01sc08i02" + } + ], + "system": { + "form_factor": "laptop" + }, + "usb": [ + { + "index": 48, + "attached_to": 40, + "class_list": [ + "usb", + "unknown" + ], + "bus_type": { + "hex": "0086", + "name": "USB", + "value": 134 + }, + "slot": { + "bus": 0, + "number": 0 + }, + "base_class": { + "hex": "0000", + "name": "Unclassified device", + "value": 0 + }, + "sub_class": { + "hex": "0000", + "name": "Unclassified device", + "value": 0 + }, + "vendor": { + "hex": "32ac", + "name": "Framework", + "value": 12972 + }, + "device": { + "hex": "001d", + "name": "Framework Laptop 12 Webcam Module", + "value": 29 + }, + "revision": { + "hex": "0000", + "name": "0.16", + "value": 0 + }, + "serial": "FRAPABCHA1521301YH", + "model": "Framework Laptop 12 Webcam Module", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0/usb3/3-7/3-7:1.2", + "sysfs_bus_id": "3-7:1.2", + "resources": [ + { + "type": "baud", + "speed": 480000000, + "bits": 0, + "stop_bits": 0, + "parity": 0, + "handshake": 0 + } + ], + "detail": { + "device_class": { + "hex": "00ef", + "name": "miscellaneous", + "value": 239 + }, + "device_subclass": { + "hex": "0002", + "name": "comm", + "value": 2 + }, + "device_protocol": 1, + "interface_class": { + "hex": "00fe", + "name": "application", + "value": 254 + }, + "interface_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "interface_protocol": 1, + "interface_number": 2, + "interface_alternate_setting": 0, + "interface_association": { + "function_class": { + "hex": "00fe", + "name": "application", + "value": 254 + }, + "function_subclass": { + "hex": "0001", + "name": "audio", + "value": 1 + }, + "function_protocol": 0, + "interface_count": 1, + "first_interface": 2 + } + }, + "hotplug": "usb", + "module_alias": "usb:v32ACp001Dd0016dcEFdsc02dp01icFEisc01ip01in02" + } + ], + "usb_controller": [ + { + "index": 17, + "attached_to": 0, + "class_list": [ + "usb_controller", + "pci" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 13 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0003", + "name": "USB Controller", + "value": 3 + }, + "pci_interface": { + "hex": "0030", + "value": 48 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "a71e", + "value": 42782 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel USB Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:0d.0", + "sysfs_bus_id": "0000:00:0d.0", + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 48 + }, + "driver": "xhci_hcd", + "driver_module": "xhci_pci", + "drivers": [ + "xhci_hcd" + ], + "driver_modules": [ + "xhci_pci" + ], + "module_alias": "pci:v00008086d0000A71Esv0000F111sd0000000Cbc0Csc03i30" + }, + { + "index": 32, + "attached_to": 0, + "class_list": [ + "usb_controller", + "pci" + ], + "bus_type": { + "hex": "0004", + "name": "PCI", + "value": 4 + }, + "slot": { + "bus": 0, + "number": 20 + }, + "base_class": { + "hex": "000c", + "name": "Serial bus controller", + "value": 12 + }, + "sub_class": { + "hex": "0003", + "name": "USB Controller", + "value": 3 + }, + "pci_interface": { + "hex": "0030", + "value": 48 + }, + "vendor": { + "hex": "8086", + "name": "Intel Corporation", + "value": 32902 + }, + "sub_vendor": { + "hex": "f111", + "value": 61713 + }, + "device": { + "hex": "51ed", + "value": 20973 + }, + "sub_device": { + "hex": "000c", + "value": 12 + }, + "revision": { + "hex": "0001", + "value": 1 + }, + "model": "Intel USB Controller", + "sysfs_id": "/devices/pci0000:00/0000:00:14.0", + "sysfs_bus_id": "0000:00:14.0", + "detail": { + "function": 0, + "command": 1030, + "header_type": 0, + "secondary_bus": 0, + "prog_if": 48 + }, + "driver": "xhci_hcd", + "driver_module": "xhci_pci", + "drivers": [ + "xhci_hcd" + ], + "driver_modules": [ + "xhci_pci" + ], + "module_alias": "pci:v00008086d000051EDsv0000F111sd0000000Cbc0Csc03i30" + } + ] + }, + "smbios": { + "bios": { + "handle": 0, + "vendor": "INSYDE Corp.", + "version": "03.04", + "date": "06/23/2025", + "features": [ + "PCI supported", + "BIOS flashable", + "BIOS shadowing allowed", + "CD boot supported", + "Selectable boot supported", + "8042 Keyboard Services supported", + "CGA/Mono Video supported", + "ACPI supported", + "USB Legacy supported", + "BIOS Boot Spec supported" + ], + "start_address": "0xe0000", + "rom_size": 16777216 + }, + "board": { + "handle": 2, + "manufacturer": "Framework", + "product": "FRAPMACP05", + "version": "A5", + "board_type": { + "hex": "000a", + "name": "Motherboard", + "value": 10 + }, + "features": [ + "Hosting Board", + "Replaceable" + ], + "location": "*", + "chassis": 3 + }, + "cache": [ + { + "handle": 5, + "socket": "L1 Cache", + "size_max": 96, + "size_current": 96, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 0, + "ecc": { + "hex": "0004", + "name": "Parity", + "value": 4 + }, + "cache_type": { + "hex": "0004", + "name": "Data", + "value": 4 + }, + "associativity": { + "hex": "0009", + "name": "Other", + "value": 9 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 6, + "socket": "L1 Cache", + "size_max": 64, + "size_current": 64, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 0, + "ecc": { + "hex": "0004", + "name": "Parity", + "value": 4 + }, + "cache_type": { + "hex": "0003", + "name": "Instruction", + "value": 3 + }, + "associativity": { + "hex": "0007", + "name": "8-way Set-Associative", + "value": 7 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 7, + "socket": "L2 Cache", + "size_max": 2560, + "size_current": 2560, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 1, + "ecc": { + "hex": "0005", + "name": "Single-bit", + "value": 5 + }, + "cache_type": { + "hex": "0005", + "name": "Unified", + "value": 5 + }, + "associativity": { + "hex": "0001", + "name": "Other", + "value": 1 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 8, + "socket": "L3 Cache", + "size_max": 12288, + "size_current": 12288, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 2, + "ecc": { + "hex": "0006", + "name": "Multi-bit", + "value": 6 + }, + "cache_type": { + "hex": "0005", + "name": "Unified", + "value": 5 + }, + "associativity": { + "hex": "0009", + "name": "Other", + "value": 9 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 9, + "socket": "L1 Cache", + "size_max": 256, + "size_current": 256, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 0, + "ecc": { + "hex": "0004", + "name": "Parity", + "value": 4 + }, + "cache_type": { + "hex": "0004", + "name": "Data", + "value": 4 + }, + "associativity": { + "hex": "0007", + "name": "8-way Set-Associative", + "value": 7 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 10, + "socket": "L1 Cache", + "size_max": 512, + "size_current": 512, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 0, + "ecc": { + "hex": "0004", + "name": "Parity", + "value": 4 + }, + "cache_type": { + "hex": "0003", + "name": "Instruction", + "value": 3 + }, + "associativity": { + "hex": "0007", + "name": "8-way Set-Associative", + "value": 7 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 11, + "socket": "L2 Cache", + "size_max": 4096, + "size_current": 4096, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 1, + "ecc": { + "hex": "0005", + "name": "Single-bit", + "value": 5 + }, + "cache_type": { + "hex": "0005", + "name": "Unified", + "value": 5 + }, + "associativity": { + "hex": "0008", + "name": "16-way Set-Associative", + "value": 8 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + }, + { + "handle": 12, + "socket": "L3 Cache", + "size_max": 12288, + "size_current": 12288, + "speed": 0, + "mode": { + "hex": "0001", + "name": "Write Back", + "value": 1 + }, + "enabled": true, + "location": { + "hex": "0000", + "name": "Internal", + "value": 0 + }, + "socketed": false, + "level": 2, + "ecc": { + "hex": "0006", + "name": "Multi-bit", + "value": 6 + }, + "cache_type": { + "hex": "0005", + "name": "Unified", + "value": 5 + }, + "associativity": { + "hex": "0009", + "name": "Other", + "value": 9 + }, + "sram_type_current": [ + "Synchronous" + ], + "sram_type_supported": [ + "Synchronous" + ] + } + ], + "chassis": [ + { + "handle": 3, + "manufacturer": "Framework", + "version": "A5", + "chassis_type": { + "hex": "001f", + "name": "Other", + "value": 31 + }, + "lock_present": false, + "bootup_state": { + "hex": "0003", + "name": "Safe", + "value": 3 + }, + "power_state": { + "hex": "0003", + "name": "Safe", + "value": 3 + }, + "thermal_state": { + "hex": "0003", + "name": "Safe", + "value": 3 + }, + "security_state": { + "hex": "0003", + "name": "None", + "value": 3 + }, + "oem": "0x0" + } + ], + "config": { + "handle": 20, + "options": [ + "ConfigOptions1", + "ConfigOptions2", + "ConfigOptions3" + ] + }, + "group_associations": [ + { + "handle": 22, + "name": "$MEI", + "handles": [ + 43 + ] + }, + { + "handle": 50, + "name": "Firmware Version Info", + "handles": [ + 193273528364, + 197568495661, + 201863462958, + 206158430255, + 210453397552, + 141733920817 + ] + }, + { + "handle": 30, + "power": { + "hex": "0000", + "name": "Disabled", + "value": 0 + }, + "keyboard": { + "hex": "0002", + "name": "Not Implemented", + "value": 2 + }, + "admin": { + "hex": "0000", + "name": "Disabled", + "value": 0 + }, + "reset": { + "hex": "0002", + "name": "Not Implemented", + "value": 2 + } + } + ], + "language": [ + { + "handle": 21, + "languages": [ + "en|US|iso8859-1,0", + "fr|FR|iso8859-1,0", + "zh|TW|unicode,0", + "ja|JP|unicode,0" + ] + } + ], + "memory_array": [ + { + "handle": 24, + "location": { + "hex": "0003", + "name": "Motherboard", + "value": 3 + }, + "usage": { + "hex": "0003", + "name": "System memory", + "value": 3 + }, + "ecc": { + "hex": "0003", + "name": "None", + "value": 3 + }, + "max_size": "0x3000000", + "error_handle": 65534, + "slots": 1 + } + ], + "memory_array_mapped_address": [ + { + "handle": 26, + "array_handle": 24, + "start_address": "0x0", + "end_address": "0xc00000000", + "part_width": 1 + } + ], + "memory_device": [ + { + "handle": 25, + "location": "Controller0-ChannelA-DIMM0", + "bank_location": "BANK 0", + "manufacturer": "Micron Technology", + "part_number": "CT48G56C46S5.M16B1", + "array_handle": 24, + "error_handle": 65534, + "width": 64, + "ecc_bits": 0, + "size": 50331648, + "form_factor": { + "hex": "000d", + "name": "SODIMM", + "value": 13 + }, + "set": 0, + "memory_type": { + "hex": "0022", + "name": "Other", + "value": 34 + }, + "memory_type_details": [ + "Synchronous" + ], + "speed": 5600 + } + ], + "memory_device_mapped_address": [ + { + "handle": 27, + "memory_device_handle": 25, + "array_map_handle": 26, + "start_address": "0x0", + "end_address": "0xc00000000", + "row_position": 255, + "interleave_position": 1, + "interleave_depth": 1 + } + ], + "pointing_device": [ + { + "handle": 28, + "mouse_type": { + "hex": "0007", + "name": "Touch Pad", + "value": 7 + }, + "interface": { + "hex": "0004", + "name": "PS/2", + "value": 4 + }, + "buttons": 4 + } + ], + "port_connector": [ + { + "handle": 13, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "JTYPEC0", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB" + }, + { + "handle": 14, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "JTYPEC1", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB" + }, + { + "handle": 15, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "JTYPEC2", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB" + }, + { + "handle": 16, + "port_type": { + "hex": "0010", + "name": "USB", + "value": 16 + }, + "internal_reference_designator": "JTYPEC3", + "external_connector_type": { + "hex": "0012", + "name": "Access Bus [USB]", + "value": 18 + }, + "external_reference_designator": "USB" + } + ], + "processor": [ + { + "handle": 4, + "socket": "U3E1", + "socket_type": { + "hex": "0041", + "name": "Other", + "value": 65 + }, + "socket_populated": true, + "manufacturer": "Intel(R) Corporation", + "version": "13th Gen Intel(R) Core(TM) i5-1334U", + "part": "To Be Filled By O.E.M.", + "processor_type": { + "hex": "0003", + "name": "CPU", + "value": 3 + }, + "processor_family": { + "hex": "00cd", + "name": "Other", + "value": 205 + }, + "processor_status": { + "hex": "0001", + "name": "Enabled", + "value": 1 + }, + "clock_ext": 100, + "clock_max": 4600, + "cache_handle_l1": 10, + "cache_handle_l2": 11, + "cache_handle_l3": 12 + } + ], + "slot": [ + { + "handle": 17, + "designation": "JWLAN", + "slot_type": { + "hex": "0015", + "name": "Other", + "value": 21 + }, + "bus_width": { + "hex": "0008", + "name": "Other", + "value": 8 + }, + "usage": { + "hex": "0003", + "name": "Available", + "value": 3 + }, + "length": { + "hex": "0001", + "name": "Other", + "value": 1 + }, + "id": 1, + "features": [ + "PME#" + ] + }, + { + "handle": 18, + "designation": "JSSD", + "slot_type": { + "hex": "0016", + "name": "Other", + "value": 22 + }, + "bus_width": { + "hex": "000a", + "name": "Other", + "value": 10 + }, + "usage": { + "hex": "0004", + "name": "In Use", + "value": 4 + }, + "length": { + "hex": "0001", + "name": "Other", + "value": 1 + }, + "id": 2, + "features": [ + "PME#" + ] + } + ], + "system": { + "handle": 1, + "manufacturer": "Framework", + "product": "Laptop 12 (13th Gen Intel Core)", + "version": "A5", + "wake_up": { + "hex": "0006", + "name": "Power Switch", + "value": 6 + } + } + } +} \ No newline at end of file