-
Notifications
You must be signed in to change notification settings - Fork 123
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(mei): add extension to provide Intel Management Engine drivers
Adds an extension to enable the Intel Management Engine drivers required for Intel Arc discrete GPU support. Signed-off-by: Nick Meyer <[email protected]> Signed-off-by: Noel Georgi <[email protected]>
- Loading branch information
Showing
11 changed files
with
106 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# mei extension | ||
|
||
## Installation | ||
|
||
See [Installing Extensions](https://github.com/siderolabs/extensions#installing-extensions). | ||
|
||
## Usage | ||
|
||
Provides: | ||
|
||
* `mei_wdt` | ||
* `mei_txe` | ||
* `mei_gsc` | ||
* `mei_pxp` | ||
* `mei_hdcp` | ||
* `mei_me` | ||
* `mei` | ||
|
||
Modules are automatically loaded. | ||
|
||
## Verifiying | ||
|
||
You can verify the modules are enabled by reading the `/proc/modules` where it _should_ show the modules are live. | ||
|
||
For example: | ||
|
||
``` | ||
❯ talosctl -n 192.168.227.5 read /proc/modules | ||
mei_wdt 12288 - - Live 0xffffffffc030b000 | ||
mei_txe 28672 - - Live 0xffffffffc02d0000 | ||
mei_gsc 12288 - - Live 0xffffffffc0247000 | ||
mei_pxp 12288 - - Live 0xffffffffc02d4000 | ||
mei_hdcp 16384 - - Live 0xffffffffc02bd000 | ||
mei_me 45056 - - Live 0xffffffffc0267000 | ||
mei 131072 - - Live 0xffffffffc0286000 | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
modules.order | ||
modules.builtin | ||
modules.builtin.modinfo | ||
kernel/drivers/misc/mei/hdcp/mei_hdcp.ko | ||
kernel/drivers/misc/mei/pxp/mei_pxp.ko | ||
kernel/drivers/misc/mei/mei-gsc.ko | ||
kernel/drivers/misc/mei/mei-me.ko | ||
kernel/drivers/misc/mei/mei-txe.ko | ||
kernel/drivers/misc/mei/mei.ko | ||
kernel/drivers/watchdog/mei_wdt.ko |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
version: v1alpha1 | ||
metadata: | ||
name: mei | ||
version: "$VERSION" | ||
author: Nick Meyer | ||
description: | | ||
This system extension provides Intel Management Engine drivers kernel modules built against a specific Talos version. | ||
This driver enables the Intel Management Engine, a prerequisite for Intel Arc discrete GPUs. | ||
compatibility: | ||
talos: | ||
version: ">= v1.8.0" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
name: mei | ||
variant: scratch | ||
shell: /toolchain/bin/bash | ||
dependencies: | ||
- stage: base | ||
# The pkgs version for a particular release of Talos as defined in | ||
# https://github.com/siderolabs/talos/blob/<talos version>/pkg/machinery/gendata/data/pkgs | ||
- image: "{{ .BUILD_ARG_PKGS_PREFIX }}/kernel:{{ .BUILD_ARG_PKGS }}" | ||
steps: | ||
- prepare: | ||
- | | ||
sed -i 's#$VERSION#{{ .VERSION }}#' /pkg/manifest.yaml | ||
mkdir -p /rootfs | ||
# {{ if eq .ARCH "x86_64" }} This in fact is YAML comment, but Go templating instruction is evaluated by bldr | ||
- install: | ||
- | | ||
export KERNELRELEASE=$(find /lib/modules -type d -name "*-talos" -exec basename {} \+) | ||
xargs -a /pkg/files/modules.txt -I {} install -D /lib/modules/${KERNELRELEASE}/{} /rootfs/lib/modules/${KERNELRELEASE}/{} | ||
depmod -b /rootfs ${KERNELRELEASE} | ||
- test: | ||
- | | ||
# https://www.kernel.org/doc/html/v4.15/admin-guide/module-signing.html#signed-modules-and-stripping | ||
find /rootfs/lib/modules -name '*.ko' -exec grep -FL '~Module signature appended~' {} \+ | ||
- | | ||
mkdir -p /extensions-validator-rootfs | ||
cp -r /rootfs/ /extensions-validator-rootfs/rootfs | ||
cp /pkg/manifest.yaml /extensions-validator-rootfs/manifest.yaml | ||
/extensions-validator validate --rootfs=/extensions-validator-rootfs --pkg-name="${PKG_NAME}" | ||
# {{ end }} This in fact is YAML comment, but Go templating instruction is evaluated by bldr | ||
finalize: | ||
- from: /rootfs | ||
to: /rootfs | ||
- from: /pkg/manifest.yaml | ||
to: / |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
VERSION: "{{ .BUILD_ARG_TAG }}" |