Maximilian Luz
Maximilian Luz
Regarding UEFI variables: The TZ-App responsible for handling this can be found at `fs6:\TZAPPS\uefisec.mbn`.
As far as I can tell: TZ-Apps can be loaded dynamically from the OS via a SMC call (`TzOsAppLoad`/`TzOsAppLoadFromFile`/`TzOsAppUnload`) . Some apps are loaded at boot by the firmware. Those...
The UEFI service interface is defined at https://github.com/tpn/winsdk-10/blob/master/Include/10.0.16299.0/km/treevariableservice.h#L35.
In addition to the above, there seem to be two types: SecureServices and OsServices. The .inf file of the driver lists dependencies of SecureServices on OsServices. For example, the UEFI...
Found in a partition dump from UEFI: [SecParti.cfg.txt](https://github.com/linux-surface/surface-pro-x/files/9126699/SecParti.cfg.txt). Seems to list secure file system partitions.
Some interesting documents: - https://i.blackhat.com/asia-21/Thursday-Handouts/as-21-Zhao-Wideshears-Investigating-And-Breaking-Widevine-On-QTEE-wp.pdf - https://www.tuv-nederland.nl/assets/files/cerfiticaten/2021/08/nscib-cc-0244671-stlite.pdf
We now have a driver (more like an interface) for the basic communication with TrEE apps / TZ-OS and a driver for the UEFI Secure App / `EFIVarService`. While the...
Quoting @andersson from aarch64-laptops IRC: > all platforms where the clock state set up by the bootloader somehow relates to clients built as modules, needs clk_ignore_unused...because "unused" is determined before...
Windows seems to rely on some `*.acdb` files, which apparently are Android (?) Audio Calibration Data Base files.
I've added an Arch Linux PKGBUILD for the kernel at https://github.com/linux-surface/aarch64-packages/tree/main/linux-surface. Not really a guide but that should at least simplify building the kernel. You can cross-compile that from an...