From 89829ef0e4a30a5a5d7e0609f0d744d0b51f1168 Mon Sep 17 00:00:00 2001 From: Phil Weber Date: Thu, 20 Aug 2026 09:13:42 -0700 Subject: [PATCH 1/2] Add project documentation mdBook Create a project-owned mdBook per RFC 0044 and migrate the EC interface specification from the centralized documentation repository. Add local build guidance and GitHub Pages publishing. Assisted-by: GitHub Copilot:gpt-5.6-sol Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/docs.yml | 61 ++ .gitignore | 1 + README.md | 12 + docs/README.md | 22 + docs/book.toml | 15 + docs/src/SUMMARY.md | 22 + docs/src/development.md | 9 + docs/src/introduction.md | 13 + .../src/specs/ec_interface/battery-service.md | 805 +++++++++++++++++ .../specs/ec_interface/ec-debug-service.md | 81 ++ .../ec_interface/ec-firmware-management.md | 185 ++++ .../specs/ec_interface/ec-input-management.md | 114 +++ .../ec_interface/ec-manufacturing-service.md | 18 + docs/src/specs/ec_interface/ec-oem-service.md | 6 + .../specs/ec_interface/ec-power-service.md | 9 + .../specs/ec_interface/ec-soc-interface.md | 22 + .../ec_interface/ec-time-alarm-service.md | 328 +++++++ docs/src/specs/ec_interface/ec_interface.md | 11 + .../specs/ec_interface/legacy-ec-interface.md | 227 +++++ docs/src/specs/ec_interface/media/image1.png | Bin 0 -> 70350 bytes docs/src/specs/ec_interface/media/image10.png | Bin 0 -> 39077 bytes docs/src/specs/ec_interface/media/image11.png | Bin 0 -> 28938 bytes docs/src/specs/ec_interface/media/image12.png | Bin 0 -> 40778 bytes docs/src/specs/ec_interface/media/image13.png | Bin 0 -> 18162 bytes docs/src/specs/ec_interface/media/image14.png | Bin 0 -> 22515 bytes docs/src/specs/ec_interface/media/image15.png | Bin 0 -> 19700 bytes docs/src/specs/ec_interface/media/image2.png | Bin 0 -> 100985 bytes docs/src/specs/ec_interface/media/image3.png | Bin 0 -> 128567 bytes docs/src/specs/ec_interface/media/image4.png | Bin 0 -> 26518 bytes docs/src/specs/ec_interface/media/image5.png | Bin 0 -> 26940 bytes docs/src/specs/ec_interface/media/image6.png | Bin 0 -> 28613 bytes docs/src/specs/ec_interface/media/image7.png | Bin 0 -> 21703 bytes docs/src/specs/ec_interface/media/image8.png | Bin 0 -> 25067 bytes .../src/specs/ec_interface/media/odp_arch.png | Bin 0 -> 88424 bytes .../sample-system-implementation.md | 500 ++++++++++ .../secure-ec-services-overview.md | 854 ++++++++++++++++++ .../src/specs/ec_interface/thermal-service.md | 460 ++++++++++ docs/src/specs/ec_interface/ucsi-interface.md | 138 +++ docs/src/specs/specifications.md | 3 + docs/{ => src}/supply-chain.md | 0 40 files changed, 3916 insertions(+) create mode 100644 .github/workflows/docs.yml create mode 100644 docs/README.md create mode 100644 docs/book.toml create mode 100644 docs/src/SUMMARY.md create mode 100644 docs/src/development.md create mode 100644 docs/src/introduction.md create mode 100644 docs/src/specs/ec_interface/battery-service.md create mode 100644 docs/src/specs/ec_interface/ec-debug-service.md create mode 100644 docs/src/specs/ec_interface/ec-firmware-management.md create mode 100644 docs/src/specs/ec_interface/ec-input-management.md create mode 100644 docs/src/specs/ec_interface/ec-manufacturing-service.md create mode 100644 docs/src/specs/ec_interface/ec-oem-service.md create mode 100644 docs/src/specs/ec_interface/ec-power-service.md create mode 100644 docs/src/specs/ec_interface/ec-soc-interface.md create mode 100644 docs/src/specs/ec_interface/ec-time-alarm-service.md create mode 100644 docs/src/specs/ec_interface/ec_interface.md create mode 100644 docs/src/specs/ec_interface/legacy-ec-interface.md create mode 100644 docs/src/specs/ec_interface/media/image1.png create mode 100644 docs/src/specs/ec_interface/media/image10.png create mode 100644 docs/src/specs/ec_interface/media/image11.png create mode 100644 docs/src/specs/ec_interface/media/image12.png create mode 100644 docs/src/specs/ec_interface/media/image13.png create mode 100644 docs/src/specs/ec_interface/media/image14.png create mode 100644 docs/src/specs/ec_interface/media/image15.png create mode 100644 docs/src/specs/ec_interface/media/image2.png create mode 100644 docs/src/specs/ec_interface/media/image3.png create mode 100644 docs/src/specs/ec_interface/media/image4.png create mode 100644 docs/src/specs/ec_interface/media/image5.png create mode 100644 docs/src/specs/ec_interface/media/image6.png create mode 100644 docs/src/specs/ec_interface/media/image7.png create mode 100644 docs/src/specs/ec_interface/media/image8.png create mode 100644 docs/src/specs/ec_interface/media/odp_arch.png create mode 100644 docs/src/specs/ec_interface/sample-system-implementation.md create mode 100644 docs/src/specs/ec_interface/secure-ec-services-overview.md create mode 100644 docs/src/specs/ec_interface/thermal-service.md create mode 100644 docs/src/specs/ec_interface/ucsi-interface.md create mode 100644 docs/src/specs/specifications.md rename docs/{ => src}/supply-chain.md (100%) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 0000000..8a1d275 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,61 @@ +name: Documentation + +on: + workflow_dispatch: + pull_request: + paths: + - "docs/**" + - ".github/workflows/docs.yml" + push: + branches: + - main + paths: + - "docs/**" + - ".github/workflows/docs.yml" + +permissions: + contents: read + +concurrency: + group: pages-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + name: Build mdBook + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v7 + + - name: Install mdBook + run: cargo install mdbook --version 0.5.4 --locked + + - name: Build documentation + run: mdbook build docs + + - name: Upload GitHub Pages artifact + uses: actions/upload-pages-artifact@v5 + with: + path: docs/book + + deploy: + name: Deploy GitHub Pages + if: github.event_name == 'push' && github.repository_owner == 'OpenDevicePartnership' + needs: build + runs-on: ubuntu-latest + + permissions: + contents: read + id-token: write + pages: write + + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + steps: + - name: Deploy GitHub Pages + id: deployment + uses: actions/deploy-pages@v5 diff --git a/.gitignore b/.gitignore index f8fd44f..102c2ba 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ # will have compiled files and executables /debug **/target +/docs/book/ # These are backup files generated by rustfmt **/*.rs.bk diff --git a/README.md b/README.md index 245a795..6db8db1 100644 --- a/README.md +++ b/README.md @@ -107,6 +107,18 @@ CI lives under `.github/workflows/`: - `nostd.yml` — verifies `platform-common` and `dev-*` remain `no_std`-clean. - `benchmark.yml`, `rolling.yml` — secondary lanes (binsize tracking on `dev-imxrt`/`dev-npcx`; nightly dep update verification). +- `docs.yml` — builds the project mdBook and publishes it to GitHub Pages + after documentation changes land on `main`. + +## Documentation + +Project documentation, including the Embedded Controller Interface +specification, is maintained as an [mdBook](./docs/README.md). Build it +locally with: + +``` +mdbook serve docs --open +``` ## Contributing diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..e476fcb --- /dev/null +++ b/docs/README.md @@ -0,0 +1,22 @@ +# ODP Embedded Controller documentation + +This directory contains the project-level mdBook described by +[ODP RFC 0044](https://github.com/OpenDevicePartnership/governance/blob/main/rfc/0044-documentation-philosophy.md). + +To build and review the book locally: + +```text +mdbook serve docs --open +``` + +To perform a one-time build: + +```text +mdbook build docs +``` + +The generated site is written to `docs/book/`. + +The EC interface specification was migrated from the +[ODP documentation repository](https://github.com/OpenDevicePartnership/documentation/tree/main/guide_book/src/specs) +at commit `0a6b5cf70ddd1e90280d575a485184a3c1e2fd30`. diff --git a/docs/book.toml b/docs/book.toml new file mode 100644 index 0000000..93e479f --- /dev/null +++ b/docs/book.toml @@ -0,0 +1,15 @@ +[book] +authors = ["Open Device Partnership"] +language = "en" +src = "src" +title = "ODP Embedded Controller" + +[build] +build-dir = "book" + +[output.html] +git-repository-url = "https://github.com/OpenDevicePartnership/odp-embedded-controller" +edit-url-template = "https://github.com/OpenDevicePartnership/odp-embedded-controller/edit/main/docs/{path}" + +[output.html.fold] +enable = true diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md new file mode 100644 index 0000000..e16ff1c --- /dev/null +++ b/docs/src/SUMMARY.md @@ -0,0 +1,22 @@ +# Summary + +[Introduction](introduction.md) + +- [Development](development.md) + - [Supply-chain auditing](supply-chain.md) +- [Specifications](specs/specifications.md) + - [Embedded Controller Interface](specs/ec_interface/ec_interface.md) + - [EC SoC Interface](specs/ec_interface/ec-soc-interface.md) + - [Legacy EC Interface](specs/ec_interface/legacy-ec-interface.md) + - [Secure EC Services Overview](specs/ec_interface/secure-ec-services-overview.md) + - [EC Firmware Management](specs/ec_interface/ec-firmware-management.md) + - [EC Power Service](specs/ec_interface/ec-power-service.md) + - [Battery Service](specs/ec_interface/battery-service.md) + - [Thermal Service](specs/ec_interface/thermal-service.md) + - [UCSI Interface](specs/ec_interface/ucsi-interface.md) + - [EC Input Management](specs/ec_interface/ec-input-management.md) + - [EC Time Alarm Service](specs/ec_interface/ec-time-alarm-service.md) + - [EC Debug Service](specs/ec_interface/ec-debug-service.md) + - [EC Manufacturing Service](specs/ec_interface/ec-manufacturing-service.md) + - [EC OEM Service](specs/ec_interface/ec-oem-service.md) + - [Sample System Implementation](specs/ec_interface/sample-system-implementation.md) diff --git a/docs/src/development.md b/docs/src/development.md new file mode 100644 index 0000000..d9b3da6 --- /dev/null +++ b/docs/src/development.md @@ -0,0 +1,9 @@ +# Development + +Project development instructions are maintained in the +[repository README](https://github.com/OpenDevicePartnership/odp-embedded-controller). + +The following guides cover processes that require more detail than the main +README: + +- [Supply-chain auditing](supply-chain.md) diff --git a/docs/src/introduction.md b/docs/src/introduction.md new file mode 100644 index 0000000..8ecf8b3 --- /dev/null +++ b/docs/src/introduction.md @@ -0,0 +1,13 @@ +# ODP Embedded Controller + +This book documents the public reference and demonstration firmware for +embedded controllers built with Open Device Partnership components. + +The repository contains shared platform support and development targets for +NXP i.MXRT685S, NXP MCXA266, Nuvoton NPCX498M, and the QEMU RISC-V `ec` +machine. See the +[repository README](https://github.com/OpenDevicePartnership/odp-embedded-controller) +for build instructions and platform details. + +The book is maintained with the source code in accordance with +[ODP RFC 0044](https://github.com/OpenDevicePartnership/governance/blob/main/rfc/0044-documentation-philosophy.md). diff --git a/docs/src/specs/ec_interface/battery-service.md b/docs/src/specs/ec_interface/battery-service.md new file mode 100644 index 0000000..ac48e12 --- /dev/null +++ b/docs/src/specs/ec_interface/battery-service.md @@ -0,0 +1,805 @@ +# Battery Service + +Battery control is monitored through the Modern Power Thermal Framework +(MPTF). See this specification for further details on implementing +firmware for these features. This section outlines the interface +required in ACPI for this framework to function. + +Note: There is an issue with ACPI and embedded packages `return Package() {BST0,BST1,BST2,BST3}` returns "BST0","BST1","BST2","BST3" rather than the values pointed to by these variables. As such we need to create a global Name for BSTD and initialize default values and update these fields like the following. + +``` + Name (BSTD, Package (4) { + 0x2, + 0x500, + 0x10000, + 0x3C28 + }) +... + BSTD[0] = BST0 + BSTD[1] = BST1 + BSTD[2] = BST2 + BSTD[3] = BST3 + Return(BSTD) +``` + +| Command | Description | +| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | +| EC_BAT_GET_BIX = 0x1 | Returns information about battery, model, serial number voltage. Note this is a superset of BIF. (MPTF) | +| EC_BAT_GET_BST = 0x2 | Get Battery Status, must also have notify event on state change. (MPTF) | +| EC_BAT_GET_PSR = 0x3 | Returns whether this power source device is currently online. (MPTF) | +| EC_BAT_GET_PIF = 0x4 | Returns static information about a power source. (MPTF) | +| EC_BAT_GET_BPS = 0x5 | Power delivery capabilities of battery at present time. (MPTF) | +| EC_BAT_SET_BTP = 0x6 | Set battery trip point to generate SCI event (MPTF) | +| EC_BAT_SET_BPT = 0x7 | Set Battery Power Threshold (MPTF) | +| EC_BAT_GET_BPC = 0x8 | Returns static variables that are associated with system power characteristics on the battery path and power threshold support settings. (MPTF) | +| EC_BAT_SET_BMC= 0x9 | Battery Maintenance Control | +| EC_BAT_GET_BMD = 0xA | Returns battery information regarding charging and calibration | +| EC_BAT_GET_BCT = 0xB | Returns battery charge time. | +| EC_BAT_GET_BTM = 0xC | Get estimated runtime of battery while discharging | +| EC_BAT_SET_BMS = 0xD | Sets battery capacity sampling time in ms | +| EC_BAT_SET_BMA = 0xE | Battery Measurement Average Interval | +| EC_BAT_GET_STA = 0xF | Get battery availability | + +## EC_BAT_GET_BIX + +Returns information about battery, model, serial number voltage etc + +### Input Parameters + +None + +### Output Parameters + +Should return structure as defined by ACPI specification + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bix-battery-information-extended) + +### FFA ACPI Example +``` + Name (BIXD, Package(21) { + 0, + 0, + 0x15F90, + 0x15F90, + 1, + 0x3C28, + 0x8F, + 0xE10, + 1, + 0x17318, + 0x03E8, + 0x03E8, + 0x03E8, + 0x03E8, + 0x380, + 0xE1, + " ", + " ", + " ", + " ", + 0 + }) + + Method (_BIX, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,BIX0) // Out – Revision + CreateDwordField(BUFF,36,BIX1) // Out – Power Unit + CreateDwordField(BUFF,40,BIX2) // Out – Design Capacity + CreateDwordField(BUFF,44,BIX3) // Out – Last Full Charge Capacity + CreateDwordField(BUFF,48,BIX4) // Out – Battery Technology + CreateDwordField(BUFF,52,BIX5) // Out – Design Voltage + CreateDwordField(BUFF,56,BIX6) // Out – Design Capacity of Warning + CreateDwordField(BUFF,60,BIX7) // Out – Design Capacity of Low + CreateDwordField(BUFF,64,BIX8) // Out – Cycle Count + CreateDwordField(BUFF,68,BIX9) // Out – Measurement Accuracy + CreateDwordField(BUFF,72,BI10) // Out – Max Sampling Time + CreateDwordField(BUFF,76,BI11) // Out – Min Sampling Time + CreateDwordField(BUFF,80,BI12) // Out – Max Averaging Internal + CreateDwordField(BUFF,84,BI13) // Out – Min Averaging Interval + CreateDwordField(BUFF,88,BI14) // Out – Battery Capacity Granularity 1 + CreateDwordField(BUFF,92,BI15) // Out – Battery Capacity Granularity 2 + CreateField(BUFF,768,64,BI16) // Out – Model Number + CreateField(BUFF,832,64,BI17) // Out – Serial number + CreateField(BUFF,896,64,BI18) // Out – Battery Type + CreateField(BUFF,960,64,BI19) // Out – OEM Information + CreateDwordField(BUFF,128,BI20) // Out – OEM Information + + Store(0x1, CMDD) //EC_BAT_GET_BIX + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + BIXD[0] = BIX0 + BIXD[1] = BIX1 + BIXD[2] = BIX2 + BIXD[3] = BIX3 + BIXD[4] = BIX4 + BIXD[5] = BIX5 + BIXD[6] = BIX6 + BIXD[7] = BIX7 + BIXD[8] = BIX8 + BIXD[9] = BIX9 + BIXD[10] = BI10 + BIXD[11] = BI11 + BIXD[12] = BI12 + BIXD[13] = BI13 + BIXD[14] = BI14 + BIXD[15] = BI15 + BIXD[16] = BI16 + BIXD[17] = BI17 + BIXD[18] = BI18 + BIXD[19] = BI19 + BIXD[20] = BI20 + } + } + Return(BIXD) + } + ``` + +## EC_BAT_GET_BST + +This object returns the present battery status. Whenever the Battery +State value changes, the system will generate an SCI to notify the OS. + +### Input Parameters + +None + +### Output Parameters + +Should return structure as defined by ACPI specification + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bst-battery-status) + +### FFA ACPI Example + +``` + Name (BSTD, Package (4) { + 0x2, + 0x500, + 0x10000, + 0x3C28 + }) + + Method (_BST, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,BST0) // Out – Battery State DWord + CreateDwordField(BUFF,36,BST1) // Out – Battery Rate DWord + CreateDwordField(BUFF,40,BST2) // Out – Battery Reamining Capacity DWord + CreateDwordField(BUFF,44,BST3) // Out – Battery Voltage DWord + + Store(0x2, CMDD) //EC_BAT_GET_BST + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + BSTD[0] = BST0 + BSTD[1] = BST1 + BSTD[2] = BST2 + BSTD[3] = BST3 + } + } + Return(BSTD) + } +``` + +## EC_BAT_GET_PSR + +Returns whether the power source device is currently in use. This can be +used to determine if system is running off this power supply or adapter. +On mobile systes this will report that the system is not running on the +AC adapter if any of the batteries in the system is being forced to +discharge. In systems that contains multiple power sources, this object +reports the power source’s online or offline status. + +### Input Parameters + +None + +### Output Parameters + +Should return structure as defined by ACPI specification + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#battery-control-methods) + +### FFA ACPI Example + +``` + Method (_PSR, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,PSR0) // Out – Power Source + + Store(0x3, CMDD) //EC_BAT_GET_PSR + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + return(PSR0) + } + } + + Return(0) + } +``` +## EC_BAT_GET_PIF + +This object returns information about the Power Source, which remains +constant until the Power Source is changed. When the power source +changes, the platform issues a Notify(0x0) (Bus Check) to the Power +Source device to indicate that OSPM must re-evaluate the _PIF object. + +### Input Parameters + +None + +### Output Parameters + +Should return structure as defined by ACPI specification + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#pif-power-source-information) + +### FFA ACPI Example +``` + Name( PIFD, Package(6) { + 0, // Out – Power Source State + 0, // Out – Maximum Output Power + 0, // Out – Maximum Input Power + " ", // Out – Model Number + " ", // Out – Serial Number + " " // Out – OEM Information + }) + + Method (_PIF, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,PIF0) // Out – Power Source State + CreateDwordField(BUFF,36,PIF1) // Out – Maximum Output Power + CreateDwordField(BUFF,40,PIF2) // Out – Maximum Input Power + CreateField(BUFF,352,64,PIF3) // Out – Model Number + CreateField(BUFF,416,64,PIF4) // Out – Serial Number + CreateField(BUFF,480,64,PIF5) // Out – OEM Information + + Store(0x4, CMDD) //EC_BAT_GET_PIF + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + PIFD[0] = PIF0 + PIFD[1] = PIF1 + PIFD[2] = PIF2 + PIFD[3] = PIF3 + PIFD[4] = PIF4 + PIFD[5] = PIF5 + + } + } + + Return(PIFD) + } +``` + +## EC_BAT_GET_BPS + +This optional object returns the power delivery capabilities of the +battery at the present time. If multiple batteries are present within +the system, the sum of peak power levels from each battery can be used +to determine the total available power. + +### Input Parameters + +None + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example + +``` + Name( BPSD, Package(5) { + 0, // Out – Revision + 0, // Out – Instantaneous Peak Power Level + 0, // Out – Instantaneous Peak Power Period + 0, // Out – Sustainable Peak Power Level + 0 // Out – Sustainable Peak Power Period + }) + + Method (_BPS, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,BPS0) // Out – Revision + CreateDwordField(BUFF,36,BPS1) // Out – Instantaneous Peak Power Level + CreateDwordField(BUFF,40,BPS2) // Out – Instantaneous Peak Power Period + CreateDwordField(BUFF,44,BPS3) // Out – Sustainable Peak Power Level + CreateDwordField(BUFF,48,BPS4) // Out – Sustainable Peak Power Period + + Store(0x5, CMDD) //EC_BAT_GET_BPS + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + BPSD[0] = BPS0 + BPSD[1] = BPS1 + BPSD[2] = BPS2 + BPSD[3] = BPS3 + BPSD[4] = BPS4 + } + } + Return(BPSD) + } +``` + +## EC_BAT_SET_BTP + +This object is used to set a trip point to generate an SCI whenever the +Battery Remaining Capacity reaches or crosses the value specified in the +_BTP object. Required on systems supporting Modern Standby + +[Platform design for modern standby | Microsoft +Learn](https://learn.microsoft.com/en-us/windows-hardware/design/device-experiences/platform-design-for-modern-standby) + +### Input Parameters + +See ACPI documentation for details + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#btp-battery-trip-point) + +### Output Parameters + +None + +### FFA ACPI Example +``` + Method (_BTP, 1, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,36,BTP0) // In - Trip point value + + Store(0x6, CMDD) //EC_BAT_SET_BTP + Store(Arg0, BTP0) + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + return(Zero ) + } + } + Return(Zero) + } +``` + +## EC_BAT_GET_BPC + +This optional object returns static values that are used to configure +power threshold support in the platform firmware. OSPM can use the +information to determine the capabilities of power delivery and +threshold support for each battery in the system. + +### Input Parameters + +None + +### Output Parameters + +Should return structure as defined by ACPI specification + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bpc-battery-power-characteristics) + +### FFA ACPI Example +``` + Name( BPCD, Package(4) { + 1, // Out - Revision + 0, // Out - Threshold support + 8000, // Out - Max Inst peak power + 2000 // Out - Max Sust peak power + }) + + Method (_BPC, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,BPC0) // Out - Revision + CreateDwordField(BUFF,36,BPC1) // Out - Threshold support + CreateDwordField(BUFF,40,BPC2) // Out - Max Inst peak power + CreateDwordField(BUFF,44,BPC3) // Out - Max Sust peak power + + Store(0x8, CMDD) //EC_BAT_GET_BPC + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + BPCD[0] = BPC0 + BPCD[1] = BPC1 + BPCD[2] = BPC2 + BPCD[3] = BPC3 + } + } + Return(BPCD) + } +``` +## EC_BAT_SET_BPT + +his optional object may be present under a battery device. OSPM must +read _BPC first to determine the power delivery capability threshold +support in the platform firmware and invoke this Method in order to +program the threshold accordingly. If the platform does not support +battery peak power thresholds, this Method should not be included in the +namespace. + +### Input Parameters + +See ACPI specification for input parameters + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bpt-battery-power-threshold) + +### Output Parameters + +Should return structure as defined by ACPI specification + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bpt-battery-power-threshold) + +### FFA ACPI Example +``` + Method (_BPT, 3, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,36,BPT0) // In - Revision + CreateDwordField(BUFF,40,BPT1) // In - Threshold ID + CreateDwordField(BUFF,44,BPT2) // In - Threshold value + CreateDwordField(BUFF,32,BPTS) // Out - Trip point value + + Store(0x7, CMDD) //EC_BAT_SET_BPT + Store(Arg0, BPT0) + Store(Arg1, BPT1) + Store(Arg2, BPT2) + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + return(BPTS) + } + } + Return(Zero) + } +``` + +## EC_BAT_SET_BMC + +This object is used to initiate calibration cycles or to control the +charger and whether or not a battery is powering the system. This object +is only present under a battery device if the _BMD Capabilities Flags +field has bit 0, 1, 2, or 5 set. + +### Input Parameters + +See ACPI specification for input parameter definition + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bmc-battery-maintenance-control) + +### Output Parameters + +None + +### FFA ACPI Example + +``` + Method (_BMC, 1, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,36,BMC0) // In - Feature control flags + + Store(0x9, CMDD) //EC_BAT_SET_BMC + Store(Arg0, BMC0) + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + } + Return(Zero) + } +``` + +## EC_BAT_GET_BMD + +This optional object returns information about the battery’s +capabilities and current state in relation to battery calibration and +charger control features. If the _BMC object (defined below) is present +under a battery device, this object must also be present. Whenever the +Status Flags value changes, AML code will issue a +Notify(battery_device, 0x82). In addition, AML will issue a +Notify(battery_device, 0x82) if evaluating _BMC did not result in +causing the Status Flags to be set as indicated in that argument to +_BMC. AML is not required to issue Notify(battery_device, 0x82) if the +Status Flags change while evaluating _BMC unless the change does not +correspond to the argument passed to _BMC. + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bmd-battery-maintenance-data) + +### Input Parameters + +None + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example +``` + Name( BMDD, Package(5) { + 0, // Out - Status + 0, // Out - Capability Flags + 0, // Out - Recalibrate count + 0, // Out - Quick recal time + 0 // Out - Slow recal time + }) + + Method (_BMD, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,BMD0) // Out - Status + CreateDwordField(BUFF,36,BMD1) // Out - Capability Flags + CreateDwordField(BUFF,40,BMD2) // Out - Recalibrate count + CreateDwordField(BUFF,44,BMD3) // Out - Quick recal time + CreateDwordField(BUFF,48,BMD4) // Out - Slow recal time + + Store(0xa, CMDD) //EC_BAT_GET_BMD + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + BMDD[0] = BMD0 + BMDD[1] = BMD1 + BMDD[2] = BMD2 + BMDD[3] = BMD3 + BMDD[4] = BMD4 + } + } + Return(BMDD) + } +``` +## EC_BAT_GET_BCT + +When the battery is charging, this optional object returns the estimated +time from present to when it is charged to a given percentage of Last +Full Charge Capacity. + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bct-battery-charge-time) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example +``` + Method (_BCT, 1, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,36,BCT0) // In - ChargeLevel + CreateDwordField(BUFF,32,BCTD) // Out - Result + + Store(0xb, CMDD) //EC_BAT_GET_BCT + Store(Arg0, BCT0) + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + return(BCTD) + } + } + Return(Zero) + } +``` + +## EC_BAT_GET_BTM + +This optional object returns the estimated runtime of the battery while +it is discharging. + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#btm-battery-time) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +## EC_BAT_SET_BMS + +This object is used to set the sampling time of the battery capacity +measurement, in milliseconds. + +The Sampling Time is the duration between two consecutive measurements +of the battery’s capacities specified in _BST, such as present rate and +remaining capacity. If the OSPM makes two succeeding readings through +_BST beyond the duration, two different results will be returned. + +The OSPM may read the Max Sampling Time and Min Sampling Time with _BIX +during boot time, and set a specific sampling time within the range with +_BMS. + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bms-battery-measurement-sampling-time) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example + +``` + Method (_BMS, 1, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,36,BMS0) // In - Sampling Time + CreateDwordField(BUFF,32,BMSD) // Out - Result code + + Store(0xd, CMDD) //EC_BAT_SET_BMS + Store(Arg0, BMS0) + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + return(BMSD) + } + } + Return(Zero) + } +``` + +## EC_BAT_SET_BMA + +This object is used to set the averaging interval of the battery +capacity measurement, in milliseconds. The Battery Measurement Averaging +Interval is the length of time within which the battery averages the +capacity measurements specified in _BST, such as remaining capacity and +present rate. + +The OSPM may read the Max Average Interval and Min Average Interval with +_BIX during boot time, and set a specific average interval within the +range with _BMA. + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/10_Power_Source_and_Power_Meter_Devices/Power_Source_and_Power_Meter_Devices.html#bma-battery-measurement-averaging-interval) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example +```rust + Method (_BMA, 1, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,36,BMA0) // In - Averaging Interval + CreateDwordField(BUFF,32,BMAD) // Out - Result code + + Store(0xe, CMDD) //EC_BAT_SET_BMA + Store(Arg0, BMA0) + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + return(BMAD) + } + } + Return(Zero) + } +``` + +## EC_BAT_GET_STA + +Returns battery status to the OS along with any error conditions as defined by ACPI specification. + +### Input Parameters + +None + +### Output Parameters + +Should return structure as defined by ACPI specification + +[10. Power Source and Power Meter Devices — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/06_Device_Configuration/Device_Configuration.html#sta-device-status) + +### FFA ACPI Example +```rust + Method (BSTA, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,STAD) // Out - Battery supported info + + Store(0xf, CMDD) //EC_BAT_GET_STA + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + return(STAD) + } + } + Return(Zero) + } +``` + diff --git a/docs/src/specs/ec_interface/ec-debug-service.md b/docs/src/specs/ec_interface/ec-debug-service.md new file mode 100644 index 0000000..a92ada7 --- /dev/null +++ b/docs/src/specs/ec_interface/ec-debug-service.md @@ -0,0 +1,81 @@ +# EC Debug Service + +The debug service is used for telemetry, debug logs, system reset +information etc. + +## Recovery Mode + +Put EC into recovery mode for development flashing and debugging. + +## Dump Debug State + +EC should be able to support typical engineering requests, such as +getting detailed subsystem information, setting/getting GPIOs, etc, for +design verification and benchtop testing. + +## Telemetry + +Ability to communicate with the HLOS event logging system, and record EC +critical events for later analysis. + +## System Boot State + +In many designs, OEMs will desire indication that the system is +responding to a power on request. This could be a logo display on the +screen or a bezel LED. EC should be able to control these devices during +the boot sequence. + +During first boot sequence EC may also be initialized and setup its +services. Needs to know when OS is up to send notification for events +that are only used by OS. + +## Memory Mapped Transactions + +There are two cases where you may want to use the memory mapped +transactions. The first is if you have a large buffer you need to +transfer data between EC and HLOS like a debug buffer. The second use +case is if you want to emulate an eSPI memory mapped interface for +compatibility with legacy devices. + +For this mode to work you will need memory carved out which is dedicated +and shared between HLOS and secure world. In your UEFI memory map this +memory should be marked as EfiMemoryReservedType so that the OS will not +use or allocate the memory. In your SP manifest file you will also need +to add access to this physical memory range. It needs to be aligned on a +4K boundary and a multiple of 4K. This memory region is carved out and +must never be used for any other purpose. Since the memory is shared +with HLOS there is also no security surrounding accesses to the memory. + +### Example Memory Mapped Interface + +``` +// Map 4K memory region shared +OperationRegion(ABCD, SystemMemory, 0xFFFF0000, 0x1000) + +// DSM Method to send sync event +Method(_DSM,4,Serialized,0,UnknownObj, {BuffObj, IntObj,IntObj,PkgObj}) +{ + // Compare passed in UUID to Supported UUID + If(LEqual(Arg0,ToUUID(“6f8398c2-7ca4-11e4-ad36-631042b5008f”))) + { + // Use FFA to send Notification event down to copy data to EC + If(LEqual(\\_SB.FFA0.AVAL,One)) { + + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + + // Create Doorbell Event to read shared memory + Store(0x0, CMDD) // + Store(ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), UUID) // Debug Service UUID + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + } // End AVAL + } // End UUID +} // End DSM + +``` + +Any updates from the EC come back through a notification event +registered in the FFA for this particular service. + diff --git a/docs/src/specs/ec_interface/ec-firmware-management.md b/docs/src/specs/ec_interface/ec-firmware-management.md new file mode 100644 index 0000000..821683c --- /dev/null +++ b/docs/src/specs/ec_interface/ec-firmware-management.md @@ -0,0 +1,185 @@ +# EC Firmware Management + +This service is to provide details about the security state, supported +features, debug, firmware version and firmware update functionality. + +NIST SP 800-193 compliance requires failsafe update of primary and +backup EC FW images. EC should run from primary partition while writing +backup partitions and then change flag to indicate backup becomes +primary and primary becomes backup. + +| Capability Command | Description | +| ----------------------------- | ----------------------------------------------------------- | +| EC_CAP_GET_FW_STATE = 0x1 | Return details of FW in EC, DICE, Secure Boot, Version, etc | +| EC_CAP_GET_SVC_LIST = 0x2 | Get list of services/features that this EC supports | +| EC_CAP_GET_BID = 0x3 | Read Board ID that is used customized behavior | +| EC_CAP_TEST_NFY = 0x4 | Create test notification event | + +## Get Firmware State + +Returns start of the overall EC if DICE and secure boot was enabled, +currently running firmware version, EC status like boot failures. + +### Secure Boot and DICE + +DICE is a specification from the Trusted Computing Group that allows the +MCU to verify the signature of the code that it is executing, thereby +establishing trust in the code. To do this, it has a primary bootloader +program that reads the firmware on flash and using a key that is only +accessible by the ROM bootloader, can verify the authenticity of the +firmware.  + +[Trusted Platform Architecture - Device Identity +Composition Engine +(trustedcomputinggroup.org)](https://trustedcomputinggroup.org/wp-content/uploads/Hardware-Requirements-for-Device-Identifier-Composition-Engine-r78_For-Publication.pdf)  + +### Input Parameters + +None + +### Output Parameters + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldBitsDescription
FWVersion16Version of FW running on EC
SecureState8

Bit mask representing the secure state of the device

+

0 – DICE is enabled

+

1 – Firmware is signed

BootStatus8

Boot status and error codes

+

0 = SUCCESS

+ +### FFA ACPI Example + +``` +Method (TFWS) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateDwordField(BUFF,32,FWSD) // Out – Raw data response (overlaps with CMDD) + + Store(ToUUID("330c1273-fde5-4757-9819-5b6539037502"), UUID) // Management + Store(0x1, CMDD) // EC_CAP_GET_FW_STATE + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (FWSD) + } + } + Return(Zero) +} +``` + +## Get Features Supported + +Get a list of services/features supported by this EC. Several features +like HID devices are optional and may not be present. OEM services may +also be added to this list as additional features supported. + +### Input Parameters + +None + +### Output Parameters + +| Field | Bits | Description +|---------------|-------|------------------------- +| DebugMask | 16 | 0 - Supports reset reason
1 - Supports debug tracing +| BatteryMask | 8 | 0 - Battery 0 present
1 - Battery 1 present
... +| FanMask | 8 | 0 - Fan 0 present
1 - Fan 1 present
... +| ThermalMask | 8 | 0 - Skin TZ present +| HIDMask | 8 | 0 - HID0 present
1 - HID1 present
... +| KeyMask | 16 | 0 - Power key present
1 - LID switch present
2 - VolUp key present
3 - VolDown key present
4 - Camera key present + +### FFA ACPI Example +``` +Method(TFET, 0x0, Serialized) { + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateWordField(BUFF,32,FET0) // DebugMask + CreateByteField(BUFF,34,FET1) // BatteryMask + CreateByteField(BUFF,35,FET2) // FanMask + CreateByteField(BUFF,36,FET3) // ThermalMask + CreateByteField(BUFF,37,FET4) // HIDMask + CreateWordField(BUFF,38,FET5) // KeyMask + + Store(0x2, CMDD) // EC_CAP_GET_SVC_LIST + Store(ToUUID("330c1273-fde5-4757-9819-5b6539037502"), UUID) + Store(Store(BUFF, \\_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) { + Return (package () {FET0,FET1,FET2,FET3,FET4,FET5}) + } + } + Return(package () {0,0,0,0,0,0,0}) +} +``` + +## Get Board ID + +EC is often used to read pins or details to determine the HW +configuration based on GPIO’s or ADC values. This ID allows SW to change +behavior depending on this HW version information. + +### Input Parameters + +None + +### Output Parameters + +| Field | Bits | Description | +| ------- | ---- | -------------- | +| BoardID | 64 | Vendor defined | + +### FFA ACPI Example +``` +Method(TBID, 0x0, Serialized) { + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateDwordField(BUFF,32,BIDD) // Output Data + + Store(0x3, CMDD) // EC_CAP_GET_BID + Store(ToUUID("330c1273-fde5-4757-9819-5b6539037502"), UUID) + Store(Store(BUFF, \\_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) { + Return (BIDD) + } else { + } + Return(Zero) +} +``` + +## Firmware Update + +This should initiate update of a particular firmware in the backup +partition to provide NIST SP 800-193 failsafe compliance. EC firmware +update is planned to be handled through CFU. Further details are +available in CFU specification. diff --git a/docs/src/specs/ec_interface/ec-input-management.md b/docs/src/specs/ec_interface/ec-input-management.md new file mode 100644 index 0000000..0505870 --- /dev/null +++ b/docs/src/specs/ec_interface/ec-input-management.md @@ -0,0 +1,114 @@ +# EC Input Management + +An EC may have several input devices including LID, Power key, touch and +keyboard. HID based devices requiring low latency input, are recommended +to be connected directly through a non-secure BUS interface such as I2C +or I3C for performance reasons. + +## LID State + +Monitor sensors that indicate lid state. If lid is opened, potentially +boot the system. If lid is closed, potentially shut down or hibernate +the system. + +| **ACPI** | **Description** | +| -------- | --------------------------------------------- | +| _LID | Get state of LID device for clamshell designs | + +### ACPI Example for LID notificiation + +Assuming that LID is managed by the EC during registration we register +for Input Management service for a Virtual ID = 1 + +``` + Name(_DSD, Package() { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), //Device Prop UUID + Package() { + Package(2) { + "arm-arml0002-ffa-ntf-bind", + Package() { + 1, // Revision + 1, // Count of following packages + Package () { + ToUUID("e3168a99-4a57-4a2b-8c5e-11bcfec73406"), // Input Management UUID + Package () { + 0x02, // Cookie for LID + } + }, + } + } + } + }) // _DSD() + + Method(_DSM, 0x4, NotSerialized) + { + // Arg0 - UUID + // Arg1 - Revision + // Arg2: Function Index + // 0 - Query + // 1 - Notify + // 2 - binding failure + // 3 - infra failure + // Arg3 - Data + + // + // Device specific method used to query + // configuration data. See ACPI 5.0 specification + // for further details. + // + If(LEqual(Arg0, Buffer(0x10) { + // + // UUID: {7681541E-8827-4239-8D9D-36BE7FE12542} + // + 0x1e, 0x54, 0x81, 0x76, 0x27, 0x88, 0x39, 0x42, 0x8d, 0x9d, 0x36, 0xbe, 0x7f, 0xe1, 0x25, 0x42 + })) + { + // Query Function + If(LEqual(Arg2, Zero)) + { + Return(Buffer(One) { 0x03 }) // Bitmask Query + Notify + } + + // Notify Function + If(LEqual(Arg2, One)) + { + // Arg3 - Package {UUID, Cookie} + Local0 = DeRefOf(Index(Arg3,1)) + Switch(Local0) { + Case(2) { + Notify(\_SB._LID, 0x80) + } + } + } + } + Return(Buffer(One) { 0x00 }) + } +``` + +## System Wake Event + +Ability to wake the system from various external events. This is for +more complicated events that aren’t a simple GPIO for LID/Power button +that require EC monitoring. + +## HID descriptor Interface + +Communication with EC must have packet sent/received in HID format so +the OS HIDClass driver can properly understand requests. At this time +HID packets will go over HIDI2C but in future these HID packets could be +included over a single interface. + +| **HID IOCTL** | **Description** | +| ------------------------------------ | ---------------------------------------------------------------------- | +| IOCTL_HID_GET_DEVICE_DESCRIPTOR | Retrieves the device's HID descriptor | +| IOCTL_HID_GET_DEVICE_ATTRIBUTES | Retrieves a device's attributes in a HID_DEVICE_ATTRIBUTES structure | +| IOCTL_HID_GET_REPORT_DESCRIPTOR | Obtains the report descriptor for the HID device | +| IOCTL_HID_READ_REPORT | Returns a report from the device into a class driver-supplied buffer | +| IOCTL_HID_WRITE_REPORT | Transmits a class driver-supplied report to the device | +| IOCTL_HID_GET_FEATURE | Get capabilities of a feature from the device | +| IOCTL_HID_SET_FEATURE | Set/Enable a specific feature on device | +| IOCTL_HID_GET_INPUT_REPORT | Get input report from HID device if input device | +| IOCTL_HID_SET_OUTPUT_REPORT | Send output HID report to device | +| IOCTL_HID_GET_STRING | Get a specific string from device | +| IOCTL_HID_GET_INDEXED_STRING | Get a string from device based on index | +| IOCTL_HID_SEND_IDLE_NOTIFICATION | Notification to idle device into idle/sleep state | diff --git a/docs/src/specs/ec_interface/ec-manufacturing-service.md b/docs/src/specs/ec_interface/ec-manufacturing-service.md new file mode 100644 index 0000000..99b39ff --- /dev/null +++ b/docs/src/specs/ec_interface/ec-manufacturing-service.md @@ -0,0 +1,18 @@ +# EC Manufacturing Service + +This service should contain all the functionality that is need to +perform self test, validation of the EC and special manufacturing modes. +This service should be disabled on retail devices or at least protected +to prevent unwanted modes. + +## Self Test + +EC should perform self test and return results/details of test +validation + +## Set Calibration Data + +Have ability to store factory calibrations and setup information into EC +non-volatile memory. For instance keyboard language information, or +thermistor calibration values. + diff --git a/docs/src/specs/ec_interface/ec-oem-service.md b/docs/src/specs/ec_interface/ec-oem-service.md new file mode 100644 index 0000000..aa1cf52 --- /dev/null +++ b/docs/src/specs/ec_interface/ec-oem-service.md @@ -0,0 +1,6 @@ +# EC OEM Service + +Any OEM special custom features should be put in their own service +sandbox to support OEM specific features. This will prevent definitions +from colliding with other services. + diff --git a/docs/src/specs/ec_interface/ec-power-service.md b/docs/src/specs/ec_interface/ec-power-service.md new file mode 100644 index 0000000..bb1a5bf --- /dev/null +++ b/docs/src/specs/ec_interface/ec-power-service.md @@ -0,0 +1,9 @@ +# EC Power Service + +## System Power State + +OS calls in to notify EC or a change in system power state. + +Perform appropriate power sequencing for the SoC from low power states +(S3, S4, S5) to S0, and from S0 to low power states + diff --git a/docs/src/specs/ec_interface/ec-soc-interface.md b/docs/src/specs/ec_interface/ec-soc-interface.md new file mode 100644 index 0000000..6da5f56 --- /dev/null +++ b/docs/src/specs/ec_interface/ec-soc-interface.md @@ -0,0 +1,22 @@ +# EC SOC Interface + +## EC Physical Interface + +The interface by which the EC is physically wired to the SOC may vary +depending on what interfaces are supported by the Silicon Vendor, EC +manufacturer and OEM. It is recommended that a simple and low latency +protocol is chosen such as eSPI, I3C, UART, memory. + +## EC Software Interface + +There are several existing OS interfaces that exist today via ACPI and +HID to manage thermal, battery, keyboard, touch etc. These existing +structures need to keep working and any new interface must be created in +such a way that it does not break existing interfaces. This document +covers details on how to implement EC services in secure world and keep +compatibility with non-secure EC OperationRegions. It is important to +work towards a more robust solution that will handle routing, larger +packets and security in a common way across OS’s and across SV +architectures. + +![EC connections to apps](media/odp_arch.png) \ No newline at end of file diff --git a/docs/src/specs/ec_interface/ec-time-alarm-service.md b/docs/src/specs/ec_interface/ec-time-alarm-service.md new file mode 100644 index 0000000..8dd2db0 --- /dev/null +++ b/docs/src/specs/ec_interface/ec-time-alarm-service.md @@ -0,0 +1,328 @@ +# EC Time Alarm Service + +The following sections define the operation and definition of the +optional control method-based Time and Alarm device, which provides a +hardware independent abstraction and a more robust alternative to the +Real Time Clock (RTC) + +ACPI specification details are in version 6.5 Chapter 9. + +[9. ACPI-Defined Devices and Device-Specific Objects — ACPI +Specification 6.5 documentation +(uefi.org)](https://uefi.org/specs/ACPI/6.5/09_ACPI_Defined_Devices_and_Device_Specific_Objects.html#time-and-alarm-device) + +| **Command** | **Description** | +| ----------------------- | ------------------------------------------------- | +| EC_TAS_GET_GCP = 0x1 | Get the capabilities of the time and alarm device | +| EC_TAS_GET_GRT = 0x2 | Get the Real Time | +| EC_TAS_SET_SRT = 0x3 | Set the Real Time | +| EC_TAS_GET_GWS = 0x4 | Get Wake Status | +| EC_TAS_SET_CWS = 0x5 | Clear Wake Status | +| EC_TAS_SET_STV = 0x6 | Set Timer value for given timer | +| EC_TAS_GET_TIV = 0x7 | Get Timer value remaining for given timer | + +## EC_TAS_GET_GCP + +This object is required and provides the OSPM with a bit mask of the +device capabilities. + +[9. ACPI-Defined Devices and Device-Specific Objects — ACPI +Specification 6.5 +documentation](https://uefi.org/specs/ACPI/6.5/09_ACPI_Defined_Devices_and_Device_Specific_Objects.html#gcp-get-capability) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI +``` +Method (_GCP) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateDwordField(BUFF,32,GCPD) // Out – 32-bit integer described above + + Store(0x1, CMDD) // EC_TAS_GET_GCP + Store(ToUUID("23ea63ed-b593-46ea-b027-8924df88e92f"), UUID) // RTC + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (GCDD) + } + } + Return(Zero) +} +``` + +## EC_TAS_GET_GRT + +This object is required if the capabilities bit 2 is set to 1. The OSPM +can use this object to get time. The return value is a buffer containing +the time information as described below. + +[9. ACPI-Defined Devices and Device-Specific Objects — ACPI +Specification 6.5 +documentation](https://uefi.org/specs/ACPI/6.5/09_ACPI_Defined_Devices_and_Device_Specific_Objects.html#grt-get-real-time) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example +``` +Method (_GRT) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateWordField(BUFF,32,GRT0) // Out Year + CreateByteField(BUFF,36,GRT1) // Out Month + CreateByteField(BUFF,37,GRT2) // Out Day + CreateByteField(BUFF,38,GRT3) // Out Hour + CreateByteField(BUFF,39,GRT4) // Out Minute + CreateByteField(BUFF,40,GRT5) // Out Second + CreateByteField(BUFF,41,GRT6) // Out Valid + CreateWordField(BUFF,42,GRT7) // Out milliseconds + CreateWordField(BUFF,44,GRT8) // Out Timezone + CreateByteField(BUFF,46,GRT9) // Out Daylight + CreateField(BUFF,376,24,PAD0) // Out 3 bytes padding + + + Store(0x2, CMDD) // EC_TAS_GET_GRT + Store(ToUUID("23ea63ed-b593-46ea-b027-8924df88e92f"), UUID) // RTC + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (Package() {GRT0,GRT1,GRT2,GRT3,GRT4,GRT5,GRT6,GRT7,GRT8,GRT9, PAD0}) + } + } + Return(Package() {0,0,0,0,0,0,0,0,0,0,Buffer(){0,0,0}}) +} +``` + +## EC_TAS_SET_SRT + +This object is required if the capabilities bit 2 is set to 1. The OSPM +can use this object to set the time. + +[9. ACPI-Defined Devices and Device-Specific Objects — ACPI +Specification 6.5 +documentation](https://uefi.org/specs/ACPI/6.5/09_ACPI_Defined_Devices_and_Device_Specific_Objects.html#srt-set-real-time) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example +``` +Method (_SRT) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateField(BUFF,264,128,SRTD) // 16 bytes of data + + Store(0x3, CMDD) // EC_TAS_SET_SRT + Store(ToUUID("23ea63ed-b593-46ea-b027-8924df88e92f"), UUID) // RTC + Store(Arg0, SRTD) // Copy over the RTC data + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (One) + } + } + Return(Zero)} +} +``` + +## EC_TAS_GET_GWS + +This object is required if the capabilities bit 0 is set to 1. It +enables the OSPM to read the status of wake alarms + +[9. ACPI-Defined Devices and Device-Specific Objects — ACPI +Specification 6.5 +documentation](https://uefi.org/specs/ACPI/6.5/09_ACPI_Defined_Devices_and_Device_Specific_Objects.html#gws-get-wake-alarm-status) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example +``` +Method (_GWS) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateDwordField(BUFF,33,GWS1) // In – Dword for timer type AC/DC + CreateDwordField(BUFF,32,GWSD) // Out – Dword timer state + + Store(20, LENG) + Store(0x4, CMDD) // EC_TAS_GET_GWS + Store(Arg0, GWS1) + Store(ToUUID("23ea63ed-b593-46ea-b027-8924df88e92f"), UUID) // RTC + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (GWSD) + } + } + Return(Zero) +} +``` +## EC_TAS_SET_CWS + +This object is required if the capabilities bit 0 is set to 1. It +enables the OSPM to clear the status of wake alarms + +[9. ACPI-Defined Devices and Device-Specific Objects — ACPI +Specification 6.5 +documentation](https://uefi.org/specs/ACPI/6.5/09_ACPI_Defined_Devices_and_Device_Specific_Objects.html#cws-clear-wake-alarm-status) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example + +``` +Method (_CWS) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateDwordField(BUFF,33, CWS1) // In – Dword for timer type AC/DC + CreateDwordField(BUFF,32,CWSD) // Out – Dword timer state + + Store(20, LENG) + Store(0x5, CMDD) // EC_TAS_SET_CWS + Store(Arg0,CWS1) + Store(ToUUID("23ea63ed-b593-46ea-b027-8924df88e92f"), UUID) // RTC + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (CWSD) + } + } + Return(Zero) +} +``` + +## EC_TAS_SET_STV + +This object is required if the capabilities bit 0 is set to 1. It sets +the timer to the specified value.  + +[9. ACPI-Defined Devices and Device-Specific Objects — ACPI +Specification 6.5 +documentation](https://uefi.org/specs/ACPI/6.5/09_ACPI_Defined_Devices_and_Device_Specific_Objects.html#stv-set-timer-value) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example +``` +Method (_STV) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateDwordField(BUFF,33, STV1) // In – Dword for timer type AC/DC + CreateDwordField(BUFF,37, STV2) // In – Dword Timer Value + CreateDwordField(BUFF,2,STVD) // Out – Dword timer state + + Store(0x6, CMDD) // EC_TAS_SET_STV + Store(Arg0,STV1) + Store(Arg1,STV2) + Store(ToUUID("23ea63ed-b593-46ea-b027-8924df88e92f"), UUID) // RTC + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (STVD) + } + } + Return(Zero) +} +``` + +## EC_TAS_GET_TIV + +This object is required if the capabilities bit 0 is set to 1. It +returns the remaining time of the specified timer before that expires. + +[9. ACPI-Defined Devices and Device-Specific Objects — ACPI +Specification 6.5 +documentation](https://uefi.org/specs/ACPI/6.5/09_ACPI_Defined_Devices_and_Device_Specific_Objects.html#tiv-timer-values) + +### Input Parameters + +Input parameters as described in ACPI specification. + +### Output Parameters + +Should return structure as defined by ACPI specification + +### FFA ACPI Example + +``` +Method (_TIV) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateDwordField(BUFF,33, TIV1) // In – Dword for timer type AC/DC + CreateDwordField(BUFF,32,TIVD) // Out – Dword timer state + + Store(0x7, CMDD) // EC_TAS_GET_TIV + Store(Arg0,TIV1) + Store(ToUUID("23ea63ed-b593-46ea-b027-8924df88e92f"), UUID) // RTC + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (TIVD) + } + } + Return(Zero) +} +``` diff --git a/docs/src/specs/ec_interface/ec_interface.md b/docs/src/specs/ec_interface/ec_interface.md new file mode 100644 index 0000000..a1e96d3 --- /dev/null +++ b/docs/src/specs/ec_interface/ec_interface.md @@ -0,0 +1,11 @@ +# Embedded Controller Interface Specification + +Embedded Controller(EC) Interface Specification describes base set of requirements to interface to core Windows features. +It covers the following areas: +- Firmware Management +- Battery +- Time and Alarm +- UCSI +- Thermal and Power +- Input Devices +- Customization diff --git a/docs/src/specs/ec_interface/legacy-ec-interface.md b/docs/src/specs/ec_interface/legacy-ec-interface.md new file mode 100644 index 0000000..35837bb --- /dev/null +++ b/docs/src/specs/ec_interface/legacy-ec-interface.md @@ -0,0 +1,227 @@ +# Legacy EC Interface + +ACPI specification has a definition for an embedded controller, however +this implementation is tied very closely to the eSPI bus and x86 +architecture. + +The following is an example of legacy EC interface definition from ACPI + +[11.7. Thermal Zone Examples — ACPI Specification 6.4 +documentation](https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/11_Thermal_Management/thermal-zone-examples.html) + +``` +Scope(\\_SB.PCI0.ISA0) { + Device(EC0) { + Name(_HID, EISAID("PNP0C09")) // ID for this EC + + // current resource description for this EC + Name(_CRS, ResourceTemplate() { + IO(Decode16,0x62,0x62,0,1) + IO(Decode16,0x66,0x66,0,1) + }) + + Name(_GPE, 0) // GPE index for this EC + + // create EC's region and field for thermal support + OperationRegion(EC0, EmbeddedControl, 0, 0xFF) + Field(EC0, ByteAcc, Lock, Preserve) { + MODE, 1, // thermal policy (quiet/perform) + FAN, 1, // fan power (on/off) + , 6, // reserved + TMP, 16, // current temp + AC0, 16, // active cooling temp (fan high) + , 16, // reserved + PSV, 16, // passive cooling temp + HOT 16, // critical S4 temp + CRT, 16 // critical temp + } + + // following is a method that OSPM will schedule after + // it receives an SCI and queries the EC to receive value 7 + Method(_Q07) { + Notify (\\_SB.PCI0.ISA0.EC0.TZ0, 0x80) + } // end of Notify method + + // fan cooling on/off - engaged at AC0 temp + PowerResource(PFAN, 0, 0) { + Method(_STA) { Return (\\_SB.PCI0.ISA0.EC0.FAN) } // check power state + Method(_ON) { Store (One, \\\\_SB.PCI0.ISA0.EC0.FAN) } // turn on fan + Method(_OFF) { Store ( Zero, \\\\_SB.PCI0.ISA0.EC0.FAN) }// turn off +fan + } + + // Create FAN device object + Device (FAN) { + // Device ID for the FAN + Name(_HID, EISAID("PNP0C0B")) + // list power resource for the fan + Name(_PR0, Package(){PFAN}) + } + + // create a thermal zone + ThermalZone (TZ0) { + Method(_TMP) { Return (\\_SB.PCI0.ISA0.EC0.TMP )} // get current temp + Method(_AC0) { Return (\\_SB.PCI0.ISA0.EC0.AC0) } // fan high temp + Name(_AL0, Package(){\\_SB.PCI0.ISA0.EC0.FAN}) // fan is act cool dev + Method(_PSV) { Return (\\_SB.PCI0.ISA0.EC0.PSV) } // passive cooling +temp + Name(_PSL, Package (){\\_SB.CPU0}) // passive cooling devices + Method(_HOT) { Return (\\_SB.PCI0.ISA0.EC0.HOT) } // get critical S4 +temp + Method(_CRT) { Return (\\_SB.PCI0.ISA0.EC0.CRT) } // get critical temp + Method(_SCP, 1) { Store (Arg1, \\\\_SB.PCI0.ISA0.EC0.MODE) } // set +cooling mode + + Name(_TSP, 150) // passive sampling = 15 sec + Name(_TZP, 0) // polling not required + Name (_STR, Unicode ("System thermal zone")) + } // end of TZ0 + } // end of ECO +} // end of \\\\_SB.PCI0.ISA0 scope- +``` + +On platforms that do not support IO port access there is an option to +define MMIO regions to simulate the IO port transactions. + +In the above example you can see that the operation region directly maps +to features on the EC and you can change the EC behavior by writing to a +byte in the region or reading the latest data from the EC. + +For a system with the EC connected via eSPI and that needs a simple +non-secure interface to the EC the above mapping works very well and +keeps the code simple. The eSPI protocol itself has details on port +accesses and uses the peripheral channel to easily read/write memory +mapped regions. + +As the EC features evolve there are several requirements that do no work +well with this interface: + + - Different buses such as I3C, SPI, UART target a packet + request/response rather than a memory mapped interface + + - Protected or restricted access and validation of request/response + + - Firmware update, large data driven requests that require larger data + response the 256-byte region is limited + + - Discoverability of features available and OEM customizations + + - Out of order completion of requests, concurrency, routing and + priority handling + +As we try to address these limitations and move to a more packet based +protocol described in this document. The following section covers +details on how to adopt existing operation region to new ACPI +functionality. + +## Adopting EC Operation Region + +The new OS frameworks such as MPTF still use ACPI methods as primary +interface. Instead of defining devices such as FAN or ThermalZone in the +EC region you can simply define the EC region itself and then map all +the other ACPI functions to operate on this region. This will allow you +to maintain backwards compatibility with existing EC definitions. + +``` +Device(EC0) { + Name(_HID, EISAID("PNP0C09")) // ID for this EC + // current resource description for this EC + Name(_CRS, ResourceTemplate() { + IO(Decode16,0x62,0x62,0,1) + IO(Decode16,0x66,0x66,0,1) + }) + + // create EC's region and field for thermal support + OperationRegion(EC0, EmbeddedControl, 0, 0xFF) + Field(EC0, ByteAcc, Lock, Preserve) { + MODE, 1, // thermal policy (quiet/perform) + FAN, 1, // fan power (on/off) + , 6, // reserved + TMP, 16, // current temp + AC0, 16, // active cooling temp (fan high) + , 16, // reserved + PSV, 16, // passive cooling temp + HOT 16, // critical S4 temp + CRT, 16 // critical temp + } +} + +Device(SKIN) { +  Name(_HID, "MSFT000A") // New MPTF HID Temperature Device +  Method(_TMP, 0x0, Serialized) { +      Return( \\_SB.PCI0.ISA0.EC0.TMP) +  } +} +``` + +For more complicated functions that take a package some of the data may +be constructed within ACPI and some of the data pulled from the +OperationRegion. For example BIX for battery information may have a +combination of static and dynamic data like this: + +``` +Method (_BIX) { + Name (BAT0, Package (0x12) + { + 0x01, // Revision + 0x02, // Power Unit + 0x03, // Design Capacity + \\_SB.PCI0.ISA0.EC0.BFCC, // Last Full Charge Capacity + 0x05, // Battery Technology + 0x06, // Design Voltage + 0x07, // Design capacity of Warning + 0x08, // Design Capacity of Low + \\_SB.PCI0.ISA0.EC0.BCYL, // Cycle Count + 0x0A, // Measurement Accuracy + 0x0B, // Max Sampling Time + 0x0C, // Min Sampling Time + 0x0D, // Max Averaging Interval + 0x0E, // Min Averaging Interval + 0x0F, // Battery Capacity Granularity 1 + 0x10, // Battery Capacity Granularity 2 + "Model123", // Model Number + "Serial456", // Serial Number + "Li-Ion", // Battery Type + "OEMName" // OEM Information + }) + Return(BAT0) +} +``` + +## Limitations for using Legacy EC + +Before using the Legacy EC definition OEM’s should be aware of several +use cases that may limit you ability to use it. + +### ACPI support for eSPI master + +In the case of Legacy EC the communication to the EC is accomplished +directly by the ACPI driver using PORT IO and eSPI Peripheral Bus +commands. On ARM platforms there is no PORT IO and these must be +substituted with MMIO regions. The ACPI driver needs changes to support +MMIO which is being evaluated and support is not yet available. Some +Silicon Vendors also do not implement the full eSPI specification and as +such the ACPI driver cannot handle all the communication needs. On these +platforms using Legacy EC interface is not an option. + +### Security of eSPI bus + +When non-secure world is given access to the eSPI bus it can send +commands to device on that bus. Some HW designs have the TPM or SPINOR +on the same physical bus as the EC. On these designs allowing non-secure +world to directly sends commands to EC can break the security +requirements of other devices on the bus. In these cases the eSPI +communication must be done in the secure world over FF-A as covered in +this document and not use the Legacy EC channel. Since non-secure world +has complete access to the EC operation region there is no chance for +encryption of data. All data in the operation region is considered +non-secure. + +### Functional limitations of Legacy EC + +The peripheral region that is mapped in the Legacy EC in ACPI is limited +to 256 bytes and notification events to the ones that are defined and +handled in ACPI driver. To create custom solutions, send large packets +or support encryption of data the Legacy EC interface has limitations in +this area. + diff --git a/docs/src/specs/ec_interface/media/image1.png b/docs/src/specs/ec_interface/media/image1.png new file mode 100644 index 0000000000000000000000000000000000000000..ddb8ed98add26d0c153372cfef772791042084ab GIT binary patch literal 70350 zcmc$_byQr-7CsoWtTu;AVV2o@ZITX2WQ-Ge&>*PuyocXzko);I)h+?js&y?f`q zHUG|Urq=3p*6Hp#r)pd6`o3Ke%8Jq$s3fRw-n_w(mHDXp<_#?9%^R2^WJKsUUdW^Q z&{WI*cyl{ilnJ(f?~5LIHH(P|UZHHzz9vHVYN}j$2>-+|kKI{m8Nf zUB$yN--33AaGp;Afl-9)#uq!o2eTzuI*sFrJ9w0l9>D8THVh=v$L~T z*@#D z ze0g9#U282-GVVKGs*SPYvtRx3uQ7PvuzX5oV;$73HV*N-W$u0~_PpFn%w;aJ)M=^3@38@AC7Q$`c!Kiyj4arT(y8sv(|L&Fc>h z!=l&GXAEh8(bkH z%xsyIU{`mGTdvH;glv~ree=+}L+(sRrfLWQIHAM-I!z!gc5U^6IH@2H9K4Q;?gkQL=v*I1u+T>>vamresF+0 zQm?mG&k}H!f?CmHomEmB<@xR{bXe188Xib8)v&QFniW}Tt|k(n@Ie5~V@uCiL;vUc zHvOY+JO9_`#=_xTQBkP%mnh|9BORCC2h$+w zIP&l2;~9ye4#y5~pSqZ^@fZ}p5iX+>b5c@Le(2QgdQ7<$taP2s5t*y^!+0NEq*1Oj zuuseDax||nGiB3b(=F_Nx;o8(C!fiyP@%mymcH%7Brnehlll-(ji7h^XHKQ)6aIat z*=S02My{cBmx$-ZM{?ed@%46Z&CW-|7#4Dw7z^i`>vwy!~K9c9|JBlrE+ZVhIm z1Uo|s5;HMm0;-)W$n(=zs|E}Np* zW18zo>bCon>3QGNGx|PU&A3%J3la(SJp)GIkT9cb;Wlb5;#>ymG6o2k2L%U8SWz0j z1K*wr*%v&9c)W!vsjsy16Gv(K7T4kXIKsoC*90n?B=4@mD`wUx)5`MAI&8<)97`2Q z117OB@LKw+>OJE;Dwng&au@r?9J-|tW`5yhJyM^{A@^akRG96HJG?9i^c6L{IKUz1 zF#f8wuoyObVu_hipJOCeeXVc%cz5Hlyl5hLdM>;~zU=%g2&-sgID6C!`Ha%E69QlY z-xc?YrM_OW(sOdE=6=SefEoM%LIlm8bRoqCdj-NG6xQmtd(|&ZgurA)i{$S{InbrD z>G#A_NhmivnVF8IseGJ++6Mj+hha#zkUNP9(?IOo(ha-57*f8SRVHq?oo+!Cm^-|%~6m5L*efkxu?Z@j!! zCNl=GURMV=+k%+`VGujd)79p!)4Zc)y)F*@75UMoKIi?3_PV$vQliPB%jpV<;Y2#R zsr1`8f%EmvfU!o8z5Q#ml`0XBN}RSc13EB&_{EEP8^#$^1ODhv6wIv^ToNvbiLl-4 zI?+a}PzL9@BDKo(NCO@LL6$L8z_I_)>h65=?qZa^KdA5Vn?dZ$^P|Z^h5o}1d*Gw@ z?P-i^(WhY%sZv+y0}6$oFF%}j>|c&PrVjFish4WV=5}3jW@C5xoefg>fAjTGw4~bR z>h37lskdfN7Q^Xz%w;n_$-2{n_{E*1b0FP>klEa!r)TE%*&S1O_{^(2TRCrKlcQHo zZ8f*IwOzH+`K2s;GeJL+>+b7F_AP8~*m54#GH5{Rr
    rTxef80}sl77!j6ux%=u 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 literal 0 HcmV?d00001 diff --git a/docs/src/specs/ec_interface/media/image12.png b/docs/src/specs/ec_interface/media/image12.png new file mode 100644 index 0000000000000000000000000000000000000000..d434bf21da98abb1d8fed9834f79f22aba5540a3 GIT binary patch literal 40778 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 literal 0 HcmV?d00001 diff --git a/docs/src/specs/ec_interface/media/image13.png b/docs/src/specs/ec_interface/media/image13.png new file mode 100644 index 0000000000000000000000000000000000000000..fd8b30bd1b46826f20190e280c8bce767aeb3678 GIT binary patch literal 18162 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%0AKZVzhc*T-xUOX!Q~-NzZ~7i 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 JrH)JNzXA59E?58n literal 0 HcmV?d00001 diff --git a/docs/src/specs/ec_interface/media/image2.png b/docs/src/specs/ec_interface/media/image2.png new file mode 100644 index 0000000000000000000000000000000000000000..890ae97012c81cf4587dbccadf4be24389a6c181 GIT binary patch literal 100985 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 Mmd?LmXu0cu0Yl{G9{>OV literal 0 HcmV?d00001 diff --git a/docs/src/specs/ec_interface/media/image3.png b/docs/src/specs/ec_interface/media/image3.png new file mode 100644 index 0000000000000000000000000000000000000000..550b1f88f808dc47ed65df6a55f54243d46c1f49 GIT binary patch literal 128567 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

    O9z1X>@BBM8Dt}Sd!RI)%(`d2{f-@fZ)|?Sk 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 D+8t#N literal 0 HcmV?d00001 diff --git a/docs/src/specs/ec_interface/media/image4.png b/docs/src/specs/ec_interface/media/image4.png new file mode 100644 index 0000000000000000000000000000000000000000..e68bfe1055bcf59173f7749233943f6f9447a3b6 GIT binary patch literal 26518 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 Qctm8NYYMB=z8U}j02qDdoB#j- literal 0 HcmV?d00001 diff --git a/docs/src/specs/ec_interface/media/image6.png b/docs/src/specs/ec_interface/media/image6.png new file mode 100644 index 0000000000000000000000000000000000000000..5dc351951b280fef641e7806b3c82f0e1ff4f732 GIT binary patch literal 28613 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 literal 0 HcmV?d00001 diff --git a/docs/src/specs/ec_interface/media/image7.png b/docs/src/specs/ec_interface/media/image7.png new file mode 100644 index 0000000000000000000000000000000000000000..5ae2d663f68b9adadbb301a9aff181b5ba47500e GIT binary patch literal 21703 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

    $%@5&SL!Ooe|R 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 literal 0 HcmV?d00001 diff --git a/docs/src/specs/ec_interface/media/image8.png b/docs/src/specs/ec_interface/media/image8.png new file mode 100644 index 0000000000000000000000000000000000000000..40c1aeef688cfc6d1c98976c38a0a07a63ea6244 GIT binary patch literal 25067 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 Version + RES, 16, // Reservied + CCI, 32, // PPM-\>OPM CCI Indicator + CTRL,64, // OPM-\>PPM Control Messages + MSGI,128, // OPM-\>PPM Message In + MSGO,128, // PPM-\>OPM Message Out + } + + Method(_DSM,4,Serialized,0,UnknownObj, {BuffObj, IntObj,IntObj,PkgObj}) + { + + // Compare passed in UUID to Supported UUID + If(LEqual(Arg0,ToUUID(“6f8398c2-7ca4-11e4-ad36-631042b5008f”))) + { + // Use FFA to send Notification event down to copy data to EC + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateField(BUFF,288,384,FIFD) // Out – Msg data + + // Create Doorbell Event + Store(0x0, CMDD) // UCSI set doorbell + Store(ToUUID("65467f50-827f-4e4f-8770-dbf4c3f77f45"), UUID) // EC_SVC_UCSI + Store(USBC,FIFD) + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + } // End AVAL + } // End UUID + } // End DSM +} +``` + +### Thermal ACPI Interface for FFA + +This sample code shows one Microsoft Thermal zone for SKIN and then a +thermal device THRM for implementing customized IO. + +``` +// Sample Definition of FAN ACPI +Device(SKIN) { + Name(_HID, "MSFT000A") + + Method(_TMP, 0x0, Serialized) { + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // Command register + CreateByteField(BUFF,33,TZID) // Temp Sensor ID + CreateDWordField(BUFF,32,RTMP) // Output Data + + Store(0x1, CMDD) // EC_THM_GET_TMP + Store(0x2, TZID) // Temp zone ID for SKIIN + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (RTMP) + } + } + Return (Ones) + } + + // Arg0 Temp sensor ID + // Arg1 Package with Low and High set points + Method(THRS,0x2, Serialized) { + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // Command register + CreateByteField(BUFF,33,TZID) // Temp Sensor ID + CreateDwordField(BUFF,34,VTIM) // Timeout + CreateDwordField(BUFF,38,VLO) // Low Threshold + CreateDwordField(BUFF,42,VHI) // High Threshold + CreateDWordField(BUFF,46,TSTS) // Output Data + + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) + Store(0x2, CMDD) // EC_THM_SET_THRS + Store(Arg0, TZID) + Store(DeRefOf(Index(Arg1,0)),VTIM) + Store(DeRefOf(Index(Arg1,1)),VLO) + Store(DeRefOf(Index(Arg1,2)),VHI) + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (TSTS) + } + } + Return (0x3) // Hardware failure + } + + // Arg0 GUID 1f0849fc-a845-4fcf-865c-4101bf8e8d79 + // Arg1 Revision + // Arg2 Function Index + // Arg3 Function dependent + Method(_DSM, 0x4, Serialized) { + If(LEqual(ToUuid("1f0849fc-a845-4fcf-865c-4101bf8e8d79"),Arg0)) { + Switch(Arg2) { + Case (0) { + Return(0x3) // Support Function 0 and Function 1 + } + Case (1) { + Return( THRS(0x2, Arg3) ) // Call to function to set threshold + } + } + } + Return(0x3) + } +} + +Device(THRM) { + Name(_HID, "MSFT000B") + + // Arg0 Instance ID + // Arg1 UUID of variable + // Return (Status,Value) + Method(GVAR,2,Serialized) { + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // Command register + CreateByteField(BUFF,33,INST) // Instance ID + CreateWordField(BUFF,34,VLEN) // 16-bit variable length + CreateField(BUFF,288,128,VUID) // UUID of variable to read + CreateQwordField(BUFF,52,64,RVAL) // Output Data + + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) + Store(0x5, CMDD) // EC_THM_GET_VAR + Store(Arg0,INST) // Save instance ID + Store(4,VLEN) // Variable is always DWORD here + Store(Arg1, VUID) + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (RVAL) + } + } + Return (0x3) + } + + // Arg0 Instance ID + // Arg1 UUID of variable + // Return (Status,Value) + Method(SVAR,3,Serialized) { + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // Command register + CreateByteField(BUFF,33,INST) // Instance ID + CreateWordField(BUFF,34,VLEN) // 16-bit variable length + CreateField(BUFF,288,128,VUID) // UUID of variable to Write + CreateQwordField(BUFF,52,64,RVAL) // Output Data + CreateDwordField(BUFF,60,DVAL) // Data value + + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) + Store(0x6, CMDD) // EC_THM_SET_VAR + Store(Arg0,INST) // Save instance ID + Store(4,VLEN) // Variable is always DWORD here + Store(Arg1, VUID) + Store(Arg2,DVAL) + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (RVAL) + } + } + Return (0x3) + } + + // Arg0 GUID + // 07ff6382-e29a-47c9-ac87-e79dad71dd82 - Input + // d9b9b7f3-2a3e-4064-8841-cb13d317669e - Output + // Arg1 Revision + // Arg2 Function Index + // Arg3 Function dependent + Method(_DSM, 0x4, Serialized) { + // Input Variable + If(LEqual(ToUuid("07ff6382-e29a-47c9-ac87-e79dad71dd82"),Arg0)) { + Switch(Arg2) { + Case(0) { + // We support function 0-3 + Return(0xf) + } + Case(1) { + Return(GVAR(1,ToUuid("ba17b567-c368-48d5-bc6f-a312a41583c1"))) // OnTemp + } + Case(2) { + Return(GVAR(1,ToUuid("3a62688c-d95b-4d2d-bacc-90d7a5816bcd"))) // RampTemp + } + Case(3) { + Return(GVAR(1,ToUuid("dcb758b1-f0fd-4ec7-b2c0-ef1e2a547b76"))) // MaxTemp + } + } + Return(0x1) + } + + // Output Variable + If(LEqual(ToUuid("d9b9b7f3-2a3e-4064-8841-cb13d317669e"),Arg0)) { + Switch(Arg2) { + Case(0) { + // We support function 0-3 + Return(0xf) + } + Case(1) { + Return(SVAR(1,ToUuid("ba17b567-c368-48d5-bc6f-a312a41583c1"),Arg3)) // OnTemp + } + Case(2) { + Return(SVAR(1,ToUuid("3a62688c-d95b-4d2d-bacc-90d7a5816bcd"),Arg3)) // RampTemp + } + Case(3) { + Return(SVAR(1,ToUuid("dcb758b1-f0fd-4ec7-b2c0-ef1e2a547b76"),Arg3)) // MaxTemp + } + } + } + Return (0x1) + } +} +``` + +## Call Flows for secure and non-secure Implementation + +Depending on system requirements the ACPI calls may go directly to the +EC or through secure world then through to EC. + +When using non-secure interface the ACPI functions must define protocol +level which is the Embedded controller for eSPI. For I2C/I3C or SPI +interfaces the corresponding ACPI device must define the bus dependency +and build the packet directly that is sent to the EC. + +For secure communication all data is sent to the secure world via FF-A +commands described in this document and the actual bus protocol and data +sent to the EC is defined in the secure world in Hafnium. All support +for FF-A is inboxed in the OS by default so EC communication will always +work in any environment. However, FF-A is not supported in x86/x64 +platforms so direct EC communication must be used on these platforms. + +### Non-Secure eSPI Access + +This call flow assumes using Embedded controller definition with +independent ACPI functions for MPTF support + +#### Non-Secure eSPI READ + +``` +Device(EC0) { + Name(_HID, EISAID("PNP0C09")) // ID for this EC + + // current resource description for this EC + Name(_CRS, ResourceTemplate() { + Memory32Fixed (ReadWrite, 0x100000, 0x10) // Used for simulated port access + Memory32Fixed (ReadWrite, 0x100010, 0x10) + // Interrupt defined for eSPI event signalling + GpioInt(Edge, ActiveHigh, ExclusiveAndWake,PullUp 0,"\_SB.GPI2"){43} + }) + + Name(_GPE, 0) // GPE index for this EC + + // create EC's region and field for thermal support + OperationRegion(EC0, EmbeddedControl, 0, 0xFF) + Field(EC0, ByteAcc, Lock, Preserve) { + MODE, 1, // thermal policy (quiet/perform) + FAN, 1, // fan power (on/off) + , 6, // reserved + TMP, 16, // current temp + AC0, 16, // active cooling temp (fan high) + , 16, // reserved + PSV, 16, // passive cooling temp + HOT 16, // critical S4 temp + CRT, 16 // critical temp + BST1, 32, // Battery State + BST2, 32, // Battery Present Rate + BST3, 32, // Battery Remaining capacity + BST4, 32, // Battery Present Voltage + } + + Method (_BST) { + Name (BSTD, Package (0x4) + { + \_SB.PCI0.ISA0.EC0.BST1, // Battery State + \_SB.PCI0.ISA0.EC0.BST2, // Battery Present Rate + \_SB.PCI0.ISA0.EC0.BST3, // Battery Remaining Capacity + \_SB.PCI0.ISA0.EC0.BST4, // Battery Present Voltage + }) + Return(BSTD) + } +} +``` + +![A diagram of a communication system AI-generated content may be +incorrect.](media/image12.png) + +#### Non-Secure eSPI Notifications + +All interrupts are handled by the ACPI driver. When EC needs to send a +notification event the GPIO is asserted and traps into IRQ. ACPI driver +reads the EC_SC status register to determine if an SCI is pending. DPC +callback calls and reads the EC_DATA port to determine the _Qxx event +that is pending. Based on the event that is determined by ACPI the +corresponding _Qxx event function is called. + +``` +Method (_Q07) { + // Take action for event 7 + Notify(\_SB._LID, 0x80) +} +``` + +![A diagram of a non-secure notification AI-generated content may be +incorrect.](media/image13.png) + +### Secure eSPI Access + +The following flow assumes ARM platform using FF-A for secure calls. +Note if you want to use the same EC firmware on both platforms with +secure and non-secure access the EC_BAT_GET_BST in this case should +be convert to a peripheral access with the same IO port and offset as +non-secure definition. + +#### Secure eSPI READ +``` + Method (_BST, 0, Serialized) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // In – First byte of command + CreateDwordField(BUFF,32,BST0) // Out – Battery State DWord + CreateDwordField(BUFF,36,BST1) // Out – Battery Rate DWord + CreateDwordField(BUFF,40,BST2) // Out – Battery Reamining Capacity DWord + CreateDwordField(BUFF,44,BST3) // Out – Battery Voltage DWord + + Store(0x2, CMDD) //EC_BAT_GET_BST + Store(ToUUID("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) + + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + return(Package() {BST0, BST1, BST2, BST3} ) + } + } + Return(Package() {0,0,0,0}) + } +``` + +![A diagram of a communication system AI-generated content may be +incorrect.](media/image14.png) + +#### Secure eSPI Notification + +When EC communication is done through Secure world we assert FIQ which +is handled as eSPI interrupt. eSPI driver reads EC_SC and EC_DATA to +retrieve the notification event details. On Non-secure implementation +ACPI converts this to Qxx callback. On secure platform this is converted +to a virtual ID and sent back to the OS via _NFY callback and a virtual +ID. + +``` + Method(_DSM, 0x4, NotSerialized) + { + // Arg0 - UUID + // Arg1 - Revision + // Arg2: Function Index + // 0 - Query + // 1 - Notify + // 2 - binding failure + // 3 - infra failure + // Arg3 - Data + + // + // Device specific method used to query + // configuration data. See ACPI 5.0 specification + // for further details. + // + If(LEqual(Arg0, Buffer(0x10) { + // + // UUID: {7681541E-8827-4239-8D9D-36BE7FE12542} + // + 0x1e, 0x54, 0x81, 0x76, 0x27, 0x88, 0x39, 0x42, 0x8d, 0x9d, 0x36, 0xbe, 0x7f, 0xe1, 0x25, 0x42 + })) + { + // Query Function + If(LEqual(Arg2, Zero)) + { + Return(Buffer(One) { 0x03 }) // Bitmask Query + Notify + } + + // Notify Function + If(LEqual(Arg2, One)) + { + // Arg3 - Package {UUID, Cookie} + Store(DeRefOf(Index(Arg3,1)), \_SB.ECT0.NEVT ) + If(LEqual(0x2,\_SB.ECT0.NEVT)) { + Notify(\_SB._LID, 0x80) + } + } + } + Return(Buffer(One) { 0x00 }) + } +``` + +![A diagram of a event AI-generated content may be +incorrect.](media/image15.png) diff --git a/docs/src/specs/ec_interface/secure-ec-services-overview.md b/docs/src/specs/ec_interface/secure-ec-services-overview.md new file mode 100644 index 0000000..6c576a1 --- /dev/null +++ b/docs/src/specs/ec_interface/secure-ec-services-overview.md @@ -0,0 +1,854 @@ +# Secure EC Services Overview + +In this section we review a system design where the EC communication is +in the secure world running in a dedicated SP. In a system without +secure world or where communication to EC is not desired to be secure +all the ACPI functions can be mapped directly to data from the EC +operation region. + +The following github projects provide sample implementations of this interface: + +[ACPI EC samples, Kernel mode test driver, User mode test driver](https://github.com/opendevicepartnership/ec-test-app)
    +[Sample Secure Partition Service for EC services in RUST](https://github.com/opendevicepartnership/haf-ec-service)
    +[RUST crate for FFA implementation in secure partition](https://github.com/opendevicepartnership/ffa)
    + +The following GUID’s have been designed to represent each service +operating in the secure partition for EC. + +| EC Service Name | Service GUID | Description +|-----------------------|--------------------------------------|---------------------- +| EC_SVC_MANAGEMENT | 330c1273-fde5-4757-9819-5b6539037502 | Used to query EC functionality, Board info, version, security state, FW update +| EC_SVC_POWER | 7157addf-2fbe-4c63-ae95-efac16e3b01c | Handles general power related requests and OS Sx state transition state notification +| EC_SVC_BATTERY | 25cb5207-ac36-427d-aaef-3aa78877d27e | Handles battery info, status, charging +| EC_SVC_THERMAL | 31f56da7-593c-4d72-a4b3-8fc7171ac073 | Handles thermal requests for skin and other thermal events +| EC_SVC_UCSI | 65467f50-827f-4e4f-8770-dbf4c3f77f45 | Handles PD notifications and calls to UCSI interface +| EC_SVC_INPUT | e3168a99-4a57-4a2b-8c5e-11bcfec73406 | Handles wake events, power key, lid, input devices (HID separate instance) +| EC_SVC_TIME_ALARM | 23ea63ed-b593-46ea-b027-8924df88e92f | Handles RTC and wake timers. +| EC_SVC_DEBUG | 0bd66c7c-a288-48a6-afc8-e2200c03eb62 | Used for telemetry, debug control, recovery modes, logs, etc +| EC_SVC_TEST | 6c44c879-d0bc-41d3-bef6-60432182dfe6 | Used to send commands for manufacturing/factory test +| EC_SVC_OEM1 | 9a8a1e88-a880-447c-830d-6d764e9172bb | Sample OEM custom service and example piping of events + +> Note: `EC_SVC_UCSI` (`65467f50-827f-4e4f-8770-dbf4c3f77f45`) is the FF-A +> routing UUID that selects the UCSI service in secure world. It is distinct +> from the UCSI `_DSM` selector `6f8398c2-7ca4-11e4-ad36-631042b5008f`, which is +> the OS-standard argument the `_DSM` method matches on. The two must not be +> confused. + +## FFA Overview + +This section covers the components involved in sending a command to EC +through the FFA flow in windows. This path is specific to ARM devices +and a common solution with x64 is still being worked out. Those will +continue through the non-secure OperationRegion in the near term. + +![A diagram of a computer security system Description automatically +generated](media/image1.png) + +ARM has a standard for calling into the secure world through SMC’s and +targeting a particular service running in secure world via a UUID. The +full specification and details can be found here: [Firmware Framework +for A-Profile](https://developer.arm.com/Architectures/Firmware%20Framework%20for%20A-Profile) + +The windows kernel provides native ability for ACPI to directly send and +receive FFA commands. It also provides a driver ffadrv.sys to expose a +DDI that allows other drivers to directly send/receive FFA commands +without needing to go through ACPI. + +Hyper-V forwards the SMC’s through to EL3 to Hafnium which then uses the +UUID to route the request to the correct SP and service. From the +corresponding EC service it then calls into the eSPI or underlying +transport layer to send and receive the request to the physical EC. + +### FFA Device Definition + +The FFA device is loaded from ACPI during boot and as such requires a +Device entry in ACPI + +``` + Name(_HID, "ARML0002") + + OperationRegion(AFFH, FFixedHw, 2, 144) + Field(AFFH, BufferAcc, NoLock, Preserve) { AccessAs(BufferAcc, 0x1), FFAC, 1152 } + + + Name(_DSD, Package() { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), //Device Prop UUID + Package() { + Package(2) { + "arm-arml0002-ffa-ntf-bind", + Package() { + 1, // Revision + 2, // Count of following packages + Package () { + ToUUID("330c1273-fde5-4757-9819-5b6539037502"), // Service1 UUID + Package () { + 0x01, //Cookie1 (UINT32) + 0x07, //Cookie2 + } + }, + Package () { + ToUUID("b510b3a3-59f6-4054-ba7a-ff2eb1eac765"), // Service2 UUID + Package () { + 0x01, //Cookie1 + 0x03, //Cookie2 + } + } + } + } + } + }) // _DSD() + + Method(_DSM, 0x4, NotSerialized) + { + // Arg0 - UUID + // Arg1 - Revision + // Arg2: Function Index + // 0 - Query + // 1 - Notify + // 2 - binding failure + // 3 - infra failure + // Arg3 - Data + + // + // Device specific method used to query + // configuration data. See ACPI 5.0 specification + // for further details. + // + If(LEqual(Arg0, Buffer(0x10) { + // + // UUID: {7681541E-8827-4239-8D9D-36BE7FE12542} + // + 0x1e, 0x54, 0x81, 0x76, 0x27, 0x88, 0x39, 0x42, 0x8d, 0x9d, 0x36, 0xbe, 0x7f, 0xe1, 0x25, 0x42 + })) + { + // Query Function + If(LEqual(Arg2, Zero)) + { + Return(Buffer(One) { 0x03 }) // Bitmask Query + Notify + } + + // Notify Function + If(LEqual(Arg2, One)) + { + // Arg3 - Package {UUID, Cookie} + Store(DeRefOf(Index(Arg3,1)), \_SB.ECT0.NEVT ) + Return(Zero) + } + } Else { + Return(Buffer(One) { 0x00 }) + } + } + + Method(AVAL,0x0, Serialized) + { + Return(One) + } +} +``` + +#### HID definition + +The _HID “ARML0002” is reserved for FFA devices. Defining this HID for +your device will cause the FFA interface for the OS to be loaded on this +device. + +#### Operation Region Definition + +The operation region is marked as FFixedHw type 4 which lets the ACPI +interpreter know that any read/write to this region requires special +handling. The length is 144 bytes because this region operates on +registers X0-X17 each of which are 8 bytes 18\*8 = 144 bytes. This is +mapped to FFAC is 1152 bits (144\*8) and this field is where we act +upon. + +``` +OperationRegion(AFFH, FFixedHw, 2, 144) +Field(AFFH, BufferAcc, NoLock, Preserve) { AccessAs(BufferAcc, 0x1),FFAC, 1152 } +``` + +When reading and writing from this operation region the FFA driver does +some underlying mapping for X0-X3 + +``` +X0 = 0xc400008d // FFA_DIRECT_REQ2 +X1 = (Receiver Endpoint ID) | (Sender Endpoint ID \<\< 16) +X2/X3 = UUID +``` + +The following is the format of the request and response packets that are +sent via ACPI + +``` +FFA_REQ_PACKET +{ + uint64 status; // Output status should be zero on input + uint64 recvid; // Lower 16-bits is receiver ID, leave 0 for OS to populate + uint128 UUID; + uint8 reqdata[]; +} + +FFA_RSP_PACKET +{ + uint64 status; // Output status from framework, zero on success + uint64 sendrecvid; // Sender and receiver ID's + uint128 UUID; + uint8 rspdata[]; +} + +CreateField(BUFF,0,64,STAT) // Out – Status for req/rsp +CreateField(BUFF,64,64,RECV) // In/Out – 16-bits for receiver ID +CreateField(BUFF,128,128,UUID) // In/Out - UUID of service +``` + +#### Inter Partition Setup Protocol + +During FFA driver initialization it calls into secure world to get a +list of all available services for each secure partition. When parsing the _DSD, for +each service UUID a notification registration is sent for each cookie defined. The +FFA driver will assign globally unique notification ID with each cookie that the +corresponding service must use to trigger given notification going forward. + + +``` + Name(_DSD, Package() { + ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), //Device Prop UUID + Package() { + Package(2) { + "arm-arml0002-ffa-ntf-bind", + Package() { + 1, // Revision + 1, // Count of following packages + Package () { + ToUUID("330c1273-fde5-4757-9819-5b6539037502"), // Service1 UUID + Package () { + 0x01, //Cookie1 (UINT32) + 0x07, //Cookie2 + } + }, + } + } + } + }) // _DSD() +``` + +![A diagram of a application Description automatically +generated](media/image2.png) + +In the above example we indicate that the OS will handle 2 different +notification events for UUID 330c1273-fde5-4757-9819-5b6539037502 which +is our EC management UUID. FFA knows which secure partition this maps to +based on the list of services for each SP it has retrieved. Rather than +having to keep track of all the physical bits in the bitmask that are +used the FFA driver keeps track of this and allows each service to +create a list of virtual ID’s they need to handle. The FFA driver then +maps this to one of the available bits in the hardware bitmask and +passes this mapping down to the notification service running in a given +SP. + +Please refer to ARM documentation for full details on Inter-partition +protocol DEN0077A_Firmware_Framework_Arm_A-profile_1.3 + +

    Input

    + +| Parameter  | Register  | Value  | +| ---------- | --------- | -------------------------------- | +| FFA_MSG_SEND_DIRECT_REQ2 | X0 | 0xC400008D | +| Sender/Receiver Id | X1 | Bits[31:16]: Sender endpoint ID
    Bits[15:0]: Receiver endpoint ID  | +| Protocol UUID low | X2 | Bytes[0..7] of Inter-partition setup protocol UUID  | +| Protocol UUID high | X3 | Bytes[8..15] of Inter-partition setup protocol UUID  | +| Reserved SBZ | X4 | 0x0 | +| Sender UUID low | X5 | Bytes[0..7] of service UUID  | +| Sender UUID high | X6 | Bytes[8..15] of service UUID  | +| Receiver UUID low | X7 | Bytes[0..7] of service UUID  | +| Receiver UUID high | X8 | Bytes[8..15] of service UUID  | +| Message Information | X9 | Bits[63:9]: Reserved MBZ
    Bit[8]: Message Direction
    - b'0 Request Message
    Bits[7:3]: Reserved MBZ
    Bits[2:0]: Message ID
    - b'010: Notification registration for a service | +| Cookie Information | X10 | Bits[63:9]: Bits[63:9]: Reserved MBZ
    Bits[8:0]: Count of (cookie,notification ID) tuples
    - 1 <= Count <= 7 | +| Tuple Mapping | X11-xX17 | Bits[63:32]: Cookie value
    Bits[31:23]: Notification ID associated with cookie
    Bits[22:1]: Reserved MBZ
    Bit[0]: Per-vcpu notification flag
    - b'0: Notification is a global notification
    - b'1: Notification is per-vcpu notification
    | + + + +

    Output

    + +| Parameter  | Register  | Value  | +| ---------- | --------- | -------------------------------- | +| FFA_MSG_SEND_DIRECT_RESP2 | X0 | 0xC400008E | +| Sender/Receiver Id | X1 | Bits[31:16]: Sender endpoint ID
    Bits[15:0]: Receiver endpoint ID  | +| Protocol UUID low | X2 | Bytes[0..7] of Inter-partition setup protocol UUID  | +| Protocol UUID high | X3 | Bytes[8..15] of Inter-partition setup protocol UUID  | +| Reserved SBZ | X4 | 0x0 | +| Sender UUID low | X5 | Bytes[0..7] of service UUID  | +| Sender UUID high | X6 | Bytes[8..15] of service UUID  | +| Receiver UUID low | X7 | Bytes[0..7] of service UUID  | +| Receiver UUID high | X8 | Bytes[8..15] of service UUID  | +| Message Information | X9 | Bits[63:9]: Reserved MBZ
    Bit[8]: Message Direction
    - b'1 Response Message
    Bits[7:3]: Reserved MBZ
    Bits[2:0]: Message ID
    - b'010: Notification registration for a service | +| Cookie Information | X10 | Bits[63:9]: Bits[63:9]: Reserved MBZ
    Bits[8:0]: Count of (cookie,notification ID) tuples
    - 1 <= Count <= 7 | +| Tuple Mapping | X11-xX17 | Bits[63:32]: Cookie value
    Bits[31:23]: Notification ID associated with cookie
    Bits[22:1]: Reserved MBZ
    Bit[0]: Per-vcpu notification flag
    - b'0: Notification is a global notification
    - b'1: Notification is per-vcpu notification
    | + +  + +Note this NOTIFICATION_REGISTER request is sent to the +Inter-Partition Service UUID in the SP. The UUID of the service that the +notifications are for are stored in X5/X6 registers shown above. + +The UUID for notification service is +{e474d87e-5731-4044-a727-cb3e8cf3c8df} which is stored in X2/X3. + +#### Notification Events + +All notification events sent from all secure partitions are passed back +through the FFA driver. The notification calls the _DSM method. Function 0 +is always a bitmap of all the other functions supported. We must support at +least Query and Notify. +The UUID is stored in Arg0 and the notification cookie is stored in Arg3 when Arg2 is 11. +``` + Method(_DSM, 0x4, NotSerialized) + { + // Arg0 - UUID 0194daab-ab08-7d5e-aea3-854bc457606a + // Arg1 - Revision + // Arg2: Function Index + // 0 - Query + // 1 - Notify + // 2 - binding failure + // 3 - infra failure + // Arg3 - Data + + // + // Device specific method used to query + // configuration data. See ACPI 5.0 specification + // for further details. + // + If(LEqual(Arg0, Buffer(0x10) { + // + // UUID: {0194daab-ab08-7d5e-aea3-854bc457606a} + // + 0x01, 0x94, 0xda, 0xab, 0xab, 0x08, 0x7d, 0x5e, 0xae, 0xa3, 0x85, 0x4b, 0xc4, 0x57, 0x60, 0x6a + })) + { + // Query Function + If(LEqual(Arg2, 0x0)) + { + Return(Buffer(One) { 0x0f }) // Bitmask Query + Notify + binding failure + infra failure + } + + // Notify Function + If(LEqual(Arg2, 0x1)) + { + // Arg3 - Package {UUID, Cookie} + Store(DeRefOf(Index(Arg3,1)), \_SB.ECT0.NEVT ) + } + + // Binding Failure + If(LEqual(Arg2, 0x2)) + { + // Arg3 Binding failure details + } + + // Infra Failure + If(LEqual(Arg2, 0x3)) + { + // Arg3 Infra failure details + } + } + Return(Buffer(One) { 0x00 }) + } +``` + +The following is the call flow showing a secure interrupt arriving to +the EC service which results in a notification back to ACPI. The +notification payload can optionally be written to a shared buffer or +ACPI can make another call back into EC service to retrieve the +notification details. + +In the _DSM, Arg2=1, Arg3 only contains the ID of the notification and no other payload, +so both ACPI and the EC service must be designed either with shared +memory buffer or a further notify data packet. + +![A diagram of a service Description automatically +generated](media/image3.png) + +## Runtime Requests + +During runtime the non-secure side uses FFA_MSG_SEND_DIRECT_REQ2 +requests to send requests to a given service within an SP. Any request +that is expected to take longer than 1 ms should yield control back +to the OS by calling FFA_YIELD within the service. When FFA_YIELD is +called it will return control back to the OS to continue executing but +the corresponding ACPI thread will be blocked until the original FFA +request completes with DIRECT_RSP2. Note this creates a polling type +interface where the OS will resume the SP thread after the timeout +specified. The following is sample call sequence. + +![A diagram of a company's process Description automatically +generated](media/image4.png) + +### FFA Example Data Flow + +For an example let’s take the battery status request _BST and follow +data through. + +![A screenshot of a computer Description automatically +generated](media/image5.png) + +``` +FFA_REQ_PACKET req = { + 0x0, // Initialize to no error + 0x0, // Let the OS populate the sender/receiver ID + {0x25,0xcb,0x52,0x07,0xac,0x36,0x42,0x7d,0xaa,0xef,0x3a,0xa7,0x88,0x77,0xd2,0x7e}, + 0x2 // EC_BAT_GET_BST +} +``` + +The equivalent to write this data into a BUFF in ACPI is as follows + +``` +CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp +CreateField(BUFF,64,64,RECV) // In/Out – Sender/Receiver ID +CreateField(BUFF,128,128,UUID) // UUID of service +CreateField(BUFF,256,8,CMDD) // In – First byte of command +CreateField(BUFF,256,128,BSTD) // Out – Raw data response 4 DWords +Store(0x2, CMDD) +Store(ToUUID ("25cb5207-ac36-427d-aaef-3aa78877d27e"), UUID) +Store(Store(BUFF, \\_SB_.FFA0.FFAC), BUFF) +``` + +The ACPI interpreter when walking through this code creates a buffer and +populates the data into buffer. The last line indicates to send this +buffer over FFA interface. + +ACPI calls into the FFA interface to send the data over to the secure +world EC Service + +``` +typedef struct _FFA_INTERFACE { +    ULONG Version; +    PFFA_MSG_SEND_DIRECT_REQ2 SendDirectReq2; +} FFA_INTERFACE, PFFA_INTERFACE; +```` + +### FFA Parsing + +FFA is in charge of sending the SMC over to the secure world and routing +to the correct service based on UUID. + +![A diagram of a computer Description automatically +generated](media/image6.png) + +``` +X0 = SEND_DIRECT_REQ2 SMC command ID +X1 = Source ID and Destination ID +X2 = UUID Low +X3 = UUID High +X4-X17 = rawdata +``` + +**Note:** The status and length are not passed through to the secure +world they are consumed only be ACPI. + +HyperV and Monitor have a chance to filter or deny the request, but in +general just pass the SMC request through to Hafnium + +Hafnium extracts the data from the registers into an sp_msg structure +which is directly mapping contents from x0-x17 into these fields. + +``` +pub struct FfaParams { +    pub x0: u64, +    pub x1: u64, +    pub x2: u64, +    pub x3: u64, +    pub x4: u64, +    pub x5: u64, +    pub x6: u64, +    pub x7: u64, +    pub x8: u64, +    pub x9: u64, +    pub x10: u64, +    pub x11: u64, +    pub x12: u64, +    pub x13: u64, +    pub x14: u64, +    pub x15: u64, +    pub x16: u64, +    pub x17: u64, +} +``` + +The EC service receives all direct messages through the odp-ffa crate in DirectMessage. +You will find this conversion into the RegisterPayload here. + +``` + fn try_from(value: SmcParams) -> Result { + let source_id = (value.x1 & 0xFFFF) as u16; + let destination_id = (value.x1 >> 16) as u16; + + let uuid_high = u64::from_be(value.x2); + let uuid_low = u64::from_be(value.x3); + let uuid = Uuid::from_u64_pair(uuid_high, uuid_low); + + // x4-x17 are for payload (14 registers) + let payload_regs = [ + value.x4, value.x5, value.x6, value.x7, value.x8, value.x9, value.x10, value.x11, value.x12, value.x13, + value.x14, value.x15, value.x16, value.x17, + ]; + let payload_bytes_iter = payload_regs.iter().flat_map(|®| u64::to_le_bytes(reg).into_iter()); + + let payload = RegisterPayload::from_iter(payload_bytes_iter); + + Ok(DirectMessage { + source_id, + destination_id, + uuid, + payload, + }) + } +``` + +The destination_id is used to route the message to the correct SP, this +is based on the ID field in the DTS description file. Eg: id = +<0x8001>; + +### Embassy and Scheduling +The Secure Partition uses embassy as the scheduler for secure partition. This +allows us to use await and do useful work while waiting for events even when +we only are single threaded. + +Embassy depeneds on timers and interrupts for signalling events. When we don't +have any work to do we still in the poll loop today. Optimizations can be made +to yield control back to non-secure world in these situations. + +### EC Service Parsing + +Within the EC partition there are several services that register their UUID +to receive messages. You will find the main message loop and registration +of each service in the embassy_main entry. + +``` + service_list![ + ec_service_lib::services::Thermal::new(), + ec_service_lib::services::Battery::new(), + ec_service_lib::services::FwMgmt::new(), + ec_service_lib::services::Notify::new() + ] + .run_message_loop() + .await + .expect("Error in run_message_loop"); +``` + +Each service must implement the following 3 functions to register and allow +it to recieve direct messages. The following is example implementation of +the notification service entry. + +``` +const UUID: Uuid = uuid!("e474d87e-5731-4044-a727-cb3e8cf3c8df"); + +impl Service for Notify { + fn service_name(&self) -> &'static str { + "Notify" + } + + fn service_uuid(&self) -> Uuid { + UUID + } + + async fn ffa_msg_send_direct_req2(&mut self, msg: MsgSendDirectReq2) -> Result { + let req: NotifyReq = msg.clone().into(); + debug!("Received notify command: {:?}", req.msg_info.message_id()); + + let payload = match req.msg_info.message_id() { + MessageID::Setup => RegisterPayload::from(self.nfy_setup(req)), + MessageID::Destroy => RegisterPayload::from(self.nfy_destroy(req)), + _ => { + error!("Unknown Notify Command: {:?}", req.msg_info.message_id()); + return Err(odp_ffa::Error::Other("Unknown Notify Command")); + } + }; + + Ok(MsgSendDirectResp2::from_req_with_payload(&msg, payload)) + } +} +``` + +### Large Data Transfers + +When making an FFA_MSG_SEND_DIRECT_REQ2 call the data is stored in +registers X0-X17. X0-X3 are reserved to store the Function Id, Source +Id, Destination Id and UUID. This leaves X4-X17 or 112 bytes. For larger +messages they either need to be broken into multiple pieces or make use +of a shared buffer between the OS and Secure Partition. + +#### Shared Buffer Definitions + +To create a shared buffer you need to modify the dts file for the secure +partition to include mapping to your buffer. + +``` +ns_comm_buffer { + description = "ns-comm"; + base-address = <0x00000100 0x60000000>; + pages-count = <0x8>; + attributes = ; +}; +``` + +During UEFI Platform initialization you will need to do the following +steps, see the FFA specification for more details on these commands + + - FFA_MAP_RXTX_BUFFER + - FFA_MEM_SHARE + - FFA_MSG_SEND_DIRECT_REQ2 (EC_CAP_MEM_SHARE) + - FFA_UNMAP_RXTX_BUFFER + +The RXTX buffer is used during larger packet transfers but can be +overridden and updated by the framework. The MEM_SHARE command uses the +RXTX buffer so we first map that buffer then populate our memory +descriptor requests to the TX_BUFFER and send to Hafnium. After sending +the MEM_SHARE request we need to instruct our SP to retrieve this +memory mapping request. This is done through our customer +EC_CAP_MEM_SHARE request where we describe the shared memory region +that UEFI has donated. From there we call FFA_MEM_RETRIEVE_REQ to map +the shared memory that was described to Hafnium. After we are done with +the RXTX buffers we must unmap them as the OS will re-map new RXTX +buffers. From this point on both Non-secure and Secure side will have +access to this shared memory buffer that was allocated. + +### Async Transfers + +All services are single threaded by default. Even when doing FFA_YIELD +it does not allow any new content to be executed within the service. If +you need your service to be truly asynchronous you must have commands +with delayed responses. + +There is no packet identifier by default and tracking of requests and +completion by FFA, so the sample solution given here is based on shared +buffers defined in previous section and existing ACPI and FFA +functionality. + +![A diagram of a service Description automatically +generated](media/image7.png) + +Inside of our FFA functions rather than copying our data payload into +the direct registers we define a queue in shared memory and populate the +actual data into this queue entry. In the FFA_MSG_SEND_DIRECT_REQ2 +we populate an ASYNC command ID (0x0) along with the seq \#. The seq \# +is then used by the service to locate the request in the TX queue. We +define a separate queue for RX and TX so we don’t need to synchronize +between OS and secure partition. + +![](media/image8.png) + +### ACPI Structures and Methods for Asynchronous + +The SMTX is shared memory TX region definition + +``` +// Shared memory regions and ASYNC implementation +OperationRegion (SMTX, SystemMemory, 0x10060000000, 0x1000) + +// Store our actual request to shared memory TX buffer +Field (SMTX, AnyAcc, NoLock, Preserve) +{ + TVER, 16, + TCNT, 16, + TRS0, 32, + TB0, 64, + TB1, 64, + TB2, 64, + TB3, 64, + TB4, 64, + TB5, 64, + TB6, 64, + TB7, 64, + Offset(0x100), // First Entry starts at 256 byte offset each entry is 256 bytes + TE0, 2048, + TE1, 2048, + TE2, 2048, + TE3, 2048, + TE4, 2048, + TE5, 2048, + TE6, 2048, + TE7, 2048, +} +``` + +The QTXB method copies data into first available entry in the TX queue +and returns sequence number used. + +``` +// Arg0 is buffer pointer +// Arg1 is length of Data +// Return Seq \# +Method(QTXB, 0x2, Serialized) { + Name(TBX, 0x0) + Store(Add(ShiftLeft(1,32),Add(ShiftLeft(Arg1,16),SEQN)),TBX) + Increment(SEQN) + // Loop until we find a free entry to populate + While(One) { + If(LEqual(And(TB0,0xFFFF),0x0)) { + Store(TBX,TB0); Store(Arg0,TE0); Return( And(TBX,0xFFFF) ) + } + + If(LEqual(And(TB1,0xFFFF),0x0)) { + Store(TBX,TB1); Store(Arg0,TE1); Return( And(TBX,0xFFFF) ) + } + + If(LEqual(And(TB2,0xFFFF),0x0)) { + Store(TBX,TB2); Store(Arg0,TE2); Return( And(TBX,0xFFFF) ) + } + + If(LEqual(And(TB3,0xFFFF),0x0)) { + Store(TBX,TB3); Store(Arg0,TE3); Return( And(TBX,0xFFFF) ) + } + + If(LEqual(And(TB4,0xFFFF),0x0)) { + Store(TBX,TB4); Store(Arg0,TE4); Return( And(TBX,0xFFFF) ) + } + + If(LEqual(And(TB5,0xFFFF),0x0)) { + Store(TBX,TB5); Store(Arg0,TE5); Return( And(TBX,0xFFFF) ) + } + + If(LEqual(And(TB6,0xFFFF),0x0)) { + Store(TBX,TB6); Store(Arg0,TE6); Return( And(TBX,0xFFFF) ) + } + + If(LEqual(And(TB7,0xFFFF),0x0)) { + Store(TBX,TB7); Store(Arg0,TE7); Return( And(TBX,0xFFFF) ) + } + + Sleep(5) + } +} +``` + +The SMRX is shared memory region for RX queues + +``` +// Shared memory region +OperationRegion (SMRX, SystemMemory, 0x10060001000, 0x1000) + +// Store our actual request to shared memory TX buffer +Field (SMRX, AnyAcc, NoLock, Preserve) +{ + RVER, 16, + RCNT, 16, + RRS0, 32, + RB0, 64, + RB1, 64, + RB2, 64, + RB3, 64, + RB4, 64, + RB5, 64, + RB6, 64, + RB7, 64, + Offset(0x100), // First Entry starts at 256 byte offset each entry is 256 bytes + RE0, 2048, + RE1, 2048, + RE2, 2048, + RE3, 2048, + RE4, 2048, + RE5, 2048, + RE6, 2048, + RE7, 2048, +} +``` + +The RXDB function takes sequence number as input and will keep looping +through all the entries until we see packet has completed. Sleeps for +5ms between each iteration to allow the OS to do other things and other +ACPI threads can run. + +``` +// Allow multiple threads to wait for their SEQ packet at once +// If supporting packet \> 256 bytes need to modify to stitch together packet +Method(RXDB, 0x1, Serialized) { + Name(BUFF, Buffer(256){}) + // Loop forever until we find our seq + While (One) { + If(LEqual(And(RB0,0xFFFF),Arg0)) { + CreateField(BUFF, 0, Multiply(And(ShiftRight(RB0,16),0xFFFF),8), XB0) + Store(RE0,BUFF); Store(0,RB0); Return( XB0 ) + } + + If(LEqual(And(RB1,0xFFFF),Arg0)) { + CreateField(BUFF, 0, Multiply(And(ShiftRight(RB1,16),0xFFFF),8), XB1) + Store(RE1,BUFF); Store(0,RB1); Return( XB1 ) + } + + If(LEqual(And(RB2,0xFFFF),Arg0)) { + CreateField(BUFF, 0, Multiply(And(ShiftRight(RB2,16),0xFFFF),8), XB2) + Store(RE2,BUFF); Store(0,RB2); Return( XB2 ) + } + + If(LEqual(And(RB3,0xFFFF),Arg0)) { + CreateField(BUFF, 0, Multiply(And(ShiftRight(RB3,16),0xFFFF),8), XB3) + Store(RE3,BUFF); Store(0,RB3); Return( XB3 ) + } + + If(LEqual(And(RB4,0xFFFF),Arg0)) { + CreateField(BUFF, 0, Multiply(And(ShiftRight(RB4,16),0xFFFF),8), XB4) + Store(RE4,BUFF); Store(0,RB4); Return( XB4 ) + } + + If(LEqual(And(RB5,0xFFFF),Arg0)) { + CreateField(BUFF, 0, Multiply(And(ShiftRight(RB5,16),0xFFFF),8), XB5) + Store(RE5,BUFF); Store(0,RB5); Return( XB5 ) + } + + If(LEqual(And(RB6,0xFFFF),Arg0)) { + CreateField(BUFF, 0, Multiply(And(ShiftRight(RB6,16),0xFFFF),8), XB6) + Store(RE6,BUFF); Store(0,RB6); Return( XB6 ) + } + + If(LEqual(And(RB7,0xFFFF),Arg0)) { + CreateField(BUFF, 0, Multiply(And(ShiftRight(RB7,16),0xFFFF),8), XB7) + Store(RE7,BUFF); Store(0,RB7); Return( XB7 ) + } + + Sleep(5) + } + + // If we get here didn't find a matching sequence number + Return (Ones) +} +``` + +The following is sample code to transmit a ASYNC request and wait for +the data in the RX buffer. + +``` +Method(ASYC, 0x0, Serialized) { + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF,0,STAT) // Out – Status for req/rsp + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32,CMDD) // Command register + CreateWordField(BUFF,33,BSQN) // Sequence Number + + Store(0x0, CMDD) // EC_ASYNC command + Local0 = QTXB(BUFF,20) // Copy data to our queue entry and get back SEQN + Store(Local0,BSQN) // Sequence packet to read from shared memory + Store(ToUUID("330c1273-fde5-4757-9819-5b6539037502"), UUID) + Store(Store(BUFF, \\_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (RXDB(Local0)) // Loop through our RX queue till packet completes + } +} +``` + +## Recovery and Errors + +The eSPI or bus driver is expected to detect if the EC is not responding +and retry. The FFA driver will report back in the status byte if it +cannot successfully talk to the secure world. If there are other +failures generally they should be returned back up through ACPI with a +value of (Ones) to indicate failure condition. This may cause some +features to work incorrectly. + +It is also expected that the EC has a watchdog if something on the EC is +hung it should reset and reload on its own. The EC is also responsible +for monitoring that the system is running within safe parameters. The +thermal requests and queries are meant to be advisory in nature and EC +should be able to run independently and safely without any intervention +from the OS. + diff --git a/docs/src/specs/ec_interface/thermal-service.md b/docs/src/specs/ec_interface/thermal-service.md new file mode 100644 index 0000000..acd26c8 --- /dev/null +++ b/docs/src/specs/ec_interface/thermal-service.md @@ -0,0 +1,460 @@ +# Thermal Zone Service + +Battery temperature and other temperatures are read through a modified +thermal interface called Microsoft Temperature Sensor that implements +the _TMP and _DSM functionality. There is also still a generic thermal +zone interface which has a few more entries for system outside of MPTF. + +| **Command** | **Description** | +| ------------------------ | -------------------------------------------------------------------- | +| EC_THM_GET_TMP = 0x1 | Returns the thermal zone’s current temperature in tenths of degrees. | +| EC_THM_SET_THRS = 0x2 | Sets the thresholds for high, low and timeout. | +| EC_THM_GET_THRS = 0x3 | Get thresholds for low and high points | +| EC_THM_SET_SCP = 0x4 | Set cooling Policy for thermal zone | +| EC_THM_GET_VAR = 0x5 | Read DWORD variable related to thermal | +| EC_THM_SET_VAR = 0x6 | Write DWORD variable related to thermal | + +## EC_THM_GET_TMP + +The Microsoft Thermal Sensor is a simplified [ACPI Thermal Zone +object](https://uefi.org/specs/ACPI/6.5/11_Thermal_Management.html?highlight=_tmp), +it only keeps the temperature input part of the thermal zone. It is used +as the interface to send temperatures from the hardware to the OS. Like +the thermal zone, Thermal Sensor also supports getting temperatures +through _TMP method. + +### Input Parameters + +Arg0 – Byte Thermal Zone Identifier + +### Output Parameters + +An Integer containing the current temperature of the thermal zone (in +tenths of degrees Kelvin) + +The return value is the current temperature of the thermal zone in +tenths of degrees Kelvin. For example, 300.0K is represented by the +integer 3000. + +### FFA ACPI Example + +``` +Method (_TMP) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF, 0, STAT) // Out – Status + CreateField(BUFF, 128, 128, UUID) // UUID of service + CreateByteField(BUFF, 32, CMDD) // Command register + CreateByteField(BUFF, 33, TMP1) // In – Thermal Zone Identifier + CreateDwordField(BUFF, 34, TMPD) // Out – temperature for TZ + + Store(0x1, CMDD) // EC_THM_GET_TMP + Store(1,TMP1) + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) // Thermal + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (TMPD) + } else { + Return(Zero) + } + } else { + Return(Zero) + } +} +``` + +## EC_THM_SET_THRS + +Update thresholds for thermal zone + +The platform should inform the OSPM to read _TMP method through +Notify(device, 0x80) when **any** of +below conditions is met:  + + - The **Timeout** has been met.  + + + + - The current temperature crosses the zone specified by + **LowTemperature** or **HighTemperature**.  + +### Input Parameters + +Arg0 – Byte Thermal Zone Identifier + +Arg1 – Timeout // Integer (DWORD) in mS + +Arg2 – LowTemperature // Integer (DWORD) in tenth deg Kelvin + +Arg3 - HighTemperature // Integer (DWORD) in tenth deg Kelvin + +### Output Parameters + +Integer with status + + - 0x00000000: Succeed  + + - 0x00000001: Failure, invalid parameter  + + - 0x00000002: Failure, unsupported revision  + + - 0x00000003: Failure, hardware error  + + - Others: Reserved  + +### FFA ACPI Example + +``` +Method(_DSM,4,Serialized,0,UnknownObj, {BuffObj, IntObj,IntObj,PkgObj}) { + // Compare passed in UUID to Supported UUID + If(LEqual(Arg0,ToUUID(“1f0849fc-a845-4fcf-865c-4101bf8e8d79 ”))) + { + + // Implement function 1 which is update threshold + If(LEqual(Arg2,One)) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF, 0, STAT) // Out – Status + CreateField(BUFF, 128, 128, UUID) // UUID of service + CreateByteField(BUFF, 32, CMDD) // Command register + CreateByteField(BUFF, 33, TID1) // In – Thermal Zone Identifier + CreateDwordField(BUFF, 34, THS1) // In – Timeout in ms + CreateDwordField(BUFF, 38, THS2) // In – Low threshold tenth Kelvin + CreateDwordField(BUFF, 42, THS3) // In – High threshold tenth Kelvin + CreateDwordField(BUFF, 46, THSD) // Out – Status from EC + + Store(0x2, CMDD) // EC_THM_SET_THRS + Store(1,TID1) + Store(Arg0,THS1) + Store(Arg1,THS2) + Store(Arg2,THS3) + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) // Thermal + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (THSD) + } + } + Return(Zero) + } +} +``` + +## EC_THM_GET_THRS + +Read back thresholds that have been set or default thresholds that exist +on the EC. + +### Input Parameters + +Arg0 - Thermal ID – Identifier to determine which TZ to read the +thresholds for + +### Output Parameters + +Arg0 – Status // 0 on success or neagtive error code + +Arg1 – Timeout // Integer (DWORD) in mS + +Arg2 – LowTemperature // Integer (DWORD) in tenth deg Kelvin + +Arg3 - HighTemperature // Integer (DWORD) in tenth deg Kelvin + +### FFA ACPI Example +``` +Method(_DSM,4,Serialized,0,UnknownObj, {BuffObj, IntObj,IntObj,PkgObj}) { + // Compare passed in UUID to Supported UUID + If(LEqual(Arg0,ToUUID(“1f0849fc-a845-4fcf-865c-4101bf8e8d79 ”))) + { + // Implement function 2 which is update threshold + If(LEqual(Arg2,Two)) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF, 0, STAT) // Out – Status + CreateField(BUFF, 128, 128, UUID) // UUID of service + CreateByteField(BUFF, 32, CMDD) // Command register + CreateByteField(BUFF, 33, TID1) // In – Thermal Zone Identifier + CreateDwordField(BUFF, 34, THS1) // Out – Timeout in ms + CreateDwordField(BUFF, 38, THS2) // Out – Low threshold tenth Kelvin + CreateDwordField(BUFF, 42, THS3) // Out – High threshold tenth Kelvin + + Store(0x3, CMDD) // EC_THM_GET_THRS + Store(1,TID1) + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) // Thermal + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (Package () {THS1, THS2, THS3}) + } + } + Return(Zero) + } +} +``` + +## EC_THM_SET_SCP + +This optional object is a control method that OSPM invokes to set the +platform’s cooling mode policy setting.  + +### Input Parameters + +Arg0 - Identifier to determine which TZ to read the thresholds for + +Arg1 - Mode An Integer containing the cooling mode policy code + +Arg2 - AcousticLimit An Integer containing the acoustic limit + +Arg3 - PowerLimit An Integer containing the power limit + +### Output Parameters + +Arg0 – Status from EC + + - 0x00000000: Succeed  + + - 0x00000001: Failure, invalid parameter  + + - 0x00000002: Failure, unsupported revision  + + - 0x00000003: Failure, hardware error  + + - Others: Reserved  + +### FFA ACPI Example +``` +Method (_SCP) { + // Check to make sure FFA is available and not unloaded + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF, 0, STAT) // Out – Status + CreateField(BUFF, 128, 128, UUID) // UUID of service + CreateByteField(BUFF, 32, CMDD) // Command register + CreateByteField(BUFF, 33, TID1) // In – Thermal Zone Identifier + CreateDwordField(BUFF, 34, SCP1) // In – Timeout in ms + CreateDwordField(BUFF, 38, SCP2) // In – Low threshold tenth Kelvin + CreateDwordField(BUFF, 42, SCP3) // In – High threshold tenth Kelvin + CreateDwordField(BUFF, 46, SCPD) // Out – Status from EC + + Store(0x4, CMDD) // EC_THM_SET_SCP + Store(1,TID1) + Store(Arg0,SCP1) + Store(Arg1,SCP2) + Store(Arg2,SCP3) + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) // Thermal + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (SCPD) + } + } + Return(Zero) +} +``` +## EC_THM_GET_VAR + +This API is to read a variable from the EC related to thermal. Variables +are defined as GUID’s and include length of variable to read. In the +case of default MPTF interface it is expecting a 32-bit variable. + +### Input Parameters + +Arg0 – 128-bit UUID the defines the variable + +Arg1 – 16-bit Length field specifies the length of variable in bytes + +### Output Parameters + +Arg0 – 32-bit status field + + - 0x00000000: Succeed  + + - 0x00000001: Failure, invalid parameter  + + - 0x00000002: Failure, unsupported revision  + + - 0x00000003: Failure, hardware error  + + - Others: Reserved  + +Var – Variable length data must match requested length otherwise should +return error code + +### FFA ACPI Example + +``` +Method(GVAR,2,Serialized) { + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateDwordField(BUFF, 0, 64, STAT) // Out – Status + CreateField(BUFF, 128, 128, UUID) // UUID of service + CreateByteField(BUFF, 32, CMDD) // Command register + CreateByteField(BUFF, 33, INST) // In – Instance ID + CreateWordField(BUFF, 34, VLEN) // In – Variable Length in bytes + CreateField(BUFF, 288, 128, VUID) // In – Variable UUID + CreateQWordField(BUFF, 52, RVAL) // Out – Variable value + + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) + Store(0x5, CMDD) // EC_THM_GET_VAR + Store(Arg0,INST) // Save instance ID + Store(4,VLEN) // Variable is always DWORD here + Store(Arg1, VUID) + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (RVAL) + } + } + Return (Ones) +} +``` + +## EC_THM_SET_VAR + +This API is to write a variable to the EC related to thermal. Variables +are defined as GUID’s and include length of variable to write. In the +case of default MPTF interface it is expecting a 32-bit variable. + +### Input Parameters + +Arg0 – 128-bit UUID the defines the variable + +Arg1 – 16-bit Length field specifies the length of variable in bytes + +Var - Variable length field of variable data + +### Output Parameters + +Arg0 – 32-bit status field + + - 0x00000000: Succeed  + + - 0x00000001: Failure, invalid parameter  + + - 0x00000002: Failure, unsupported revision  + + - 0x00000003: Failure, hardware error  + + - Others: Reserved  + +### FFA ACPI Example +``` +Method(SVAR,3,Serialized) { + If(LEqual(\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF, 0, STAT) // Out – Status + CreateField(BUFF, 128, 128, UUID) // UUID of service + CreateByteField(BUFF, 32, CMDD) // Command register + CreateByteField(BUFF, 33, INST) // In – Instance ID + CreateWordField(BUFF, 34, VLEN) // In – Variable Length in bytes + CreateField(BUFF, 288, 128, VUID) // In – Variable UUID + CreateQwordField(BUFF, 52, DVAL) // In – Variable UUID + CreateQwordField(BUFF, 60, RVAL) // Out – status + + Store(ToUUID("31f56da7-593c-4d72-a4b3-8fc7171ac073"), UUID) + Store(0x6, CMDD) // EC_THM_SET_VAR + Store(Arg0,INST) // Save instance ID + Store(4,VLEN) // Variable is always DWORD here + Store(Arg1, VUID) + Store(Arg2,DVAL) + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (RVAL) + } + } + Return (Ones) +} +``` + +# Fan Service + +The new MBTF framework depends on reading and writing variables on the +EC to allow the EC to make the best decisions on cooling. The +recommendations from the OS are aggregated on the EC side and decisions +are made on setting FAN speed based on these. + +All the control of fan and thermal parameters is done through variable +interface using EC_THM_GET_VAR and EC_THM_SET_VAR. + +## Fan and Thermal variables + +It is optional to implement Dba and Sones. + +| Variable | GUID | Description | +| --- | --- | --- | +| OnTemp | ba17b567-c368-48d5-bc6f-a312a41583c1 | Lowest temperature at which the fan is turned on. | +| RampTemp | 3a62688c-d95b-4d2d-bacc-90d7a5816bcd | Temperature at which the fan starts ramping from min speed. | +| MaxTemp | dcb758b1-f0fd-4ec7-b2c0-ef1e2a547b76 | Temperature at top of fan ramp where fan is at maximum speed. | +| CrtTemp | 218246e7-baf6-45f1-aa13-07e4845256b8 | Critical temperature at which we need to shut down the system. | +| ProcHotTemp | 22dc52d2-fd0b-47ab-95b8-26552f9831a5 | Temperature at which the EC will assert the PROCHOT notification. | +| MinRpm | db261c77-934b-45e2-9742-256c62badb7a | Minimum RPM FAN speed | +| MinDba (Optional) | 0457a722-58f4-41ca-b053-c7088fcfb89d | Minimum Dba from FAN | +| MinSones (Optional) | 311668e2-09aa-416e-a7ce-7b978e7f88be | Minimum Sones from FAN | +| MaxRpm | 5cf839df-8be7-42b9-9ac5-3403ca2c8a6a | Maximum RPM for FAN | +| MaxDba (Optional) | 372ae76b-eb64-466d-ae6b-1228397cf374 | Maximum DBA for FAN | +| MaxSones (Optional) | 6deb7eb1-839a-4482-8757-502ac31b20b7 | Maximum Sones for FAN | +| ProfileType | 23b4a025-cdfd-4af9-a411-37a24c574615 | Set profile for EC, gaming, quiet, lap, etc | +| CurrentRpm | adf95492-0776-4ffc-84f3-b6c8b5269683 | The current RPM of FAN | +| CurrentDba (Optional) | 4bb2ccd9-c7d7-4629-9fd6-1bc46300ee77 | The current Dba from FAN | +| CurrentSones (Optional) | 7719d686-02af-48a5-8283-20ba6ca2e940 | The current Sones from FAN | + +## ACPI example of Input/Output _DSM + +``` +// Arg0 GUID +// 07ff6382-e29a-47c9-ac87-e79dad71dd82 - Input +// d9b9b7f3-2a3e-4064-8841-cb13d317669e - Output +// Arg1 Revision +// Arg2 Function Index +// Arg3 Function dependent + +Method(_DSM, 0x4, Serialized) { + // Input Variable + If(LEqual(ToUuid("07ff6382-e29a-47c9-ac87-e79dad71dd82"),Arg0)) { + Switch(Arg2) { + Case(0) { + // We support function 0-3 + Return(0xf) + } + Case(1) { + Return(GVAR(1,ToUuid("ba17b567-c368-48d5-bc6f-a312a41583c1"))) // OnTemp + } + Case(2) { + Return(GVAR(1,ToUuid("3a62688c-d95b-4d2d-bacc-90d7a5816bcd"))) // RampTemp + } + Case(3) { + Return(GVAR(1,ToUuid("dcb758b1-f0fd-4ec7-b2c0-ef1e2a547b76"))) // MaxTemp + } + } + Return(Ones) + } + + // Output Variable + If(LEqual(ToUuid("d9b9b7f3-2a3e-4064-8841-cb13d317669e"),Arg0)) { + Switch(Arg2) { + Case(0) { + // We support function 0-3 + Return(0xf) + } + Case(1) { + Return(SVAR(1,ToUuid("ba17b567-c368-48d5-bc6f-a312a41583c1"),Arg3)) // OnTemp + } + + Case(2) { + Return(SVAR(1,ToUuid("3a62688c-d95b-4d2d-bacc-90d7a5816bcd"),Arg3)) // RampTemp + } + + Case(3) { + Return(SVAR(1,ToUuid("dcb758b1-f0fd-4ec7-b2c0-ef1e2a547b76"),Arg3)) // MaxTemp + } + } + Return(Ones) + } + Return (Ones) +} +``` diff --git a/docs/src/specs/ec_interface/ucsi-interface.md b/docs/src/specs/ec_interface/ucsi-interface.md new file mode 100644 index 0000000..50b30c1 --- /dev/null +++ b/docs/src/specs/ec_interface/ucsi-interface.md @@ -0,0 +1,138 @@ +# UCSI Interface + +EC must have the ability to interface with a discrete PD controller to +negotiate power contracts/alt-modes with port partner + +See the UCSI specification for commands that are required in all UCSI +implementations. + +[USB-C Connector System Software Interface (UCSI) Driver - Windows +drivers | Microsoft +Learn](https://learn.microsoft.com/en-us/windows-hardware/drivers/usbcon/ucsi) + +In addition to the commands marked as **Required**, Windows requires +these commands: + + - GET_ALTERNATE_MODES + + - GET_CAM_SUPPORTED + + - GET_PDOS + + - SET_NOTIFICATION_ENABLE: The system or controller must support the + following notifications within SET_NOTIFICATION_ENABLE: + + - Supported Provider Capabilities Change + + - Negotiated Power Level Change + + - GET_CONNECTOR_STATUS: The system or controller must support these + connector status changes within GET_CONNECTOR_STATUS: + + - Supported Provider Capabilities Change + + - Negotiated Power Level Change + +![Diagram of USB Type-C software components.](media/image10.png) + +## UCSI ACPI Interface + +![A diagram of a memory Description automatically +generated](media/image11.png) + +### Shared Mailbox Interface + +The following table is the reserved memory structure that must be +reserved and shared with the EC for communication. When using FF-A this +memory region must be statically carved out and 4K aligned and directly +accessible by secure world. + +| **Offset (Bytes)** | **Mnemonic** | **Description** | **Direction** | **Size (bits)** | +| ------------------ | ------------ | --------------------------------------------------------- | ------------- | --------------- | +| 0 | VERSION | UCSI Version Number | PPM->OPM | 16 | +| 2 | RESERVED | Reserved | N/A | 16 | +| 4 | CCI | USB Type-C Command Status and Connector Change Indication | PPM->OPM | 32 | +| 8 | CONTROL | USB Type-C Control | OPM->PPM | 64 | +| 16 | MESSAGE IN | USB Type-C Message In | PPM->OPM | 128 | +| 32 | MESSAGE OUT | USB Type-C Message Out | OPM->PPM | 128 | + +### ACPI Definitions +``` +Device(USBC) { + Name(_HID,EISAID(“USBC000”)) + Name(_CID,EISAID(“PNP0CA0”)) + Name(_UID,1) + Name(_DDN, “USB Type-C”) + Name(_ADR,0x0) + + OperationRegion(USBC, SystemMemory, 0xFFFF0000, 0x30) + Field(USBC,AnyAcc,Lock,Preserve) + { + // USB C Mailbox Interface + VERS,16, // PPM-\>OPM Version + RES, 16, // Reservied + CCI, 32, // PPM-\>OPM CCI Indicator + CTRL,64, // OPM-\>PPM Control Messages + MSGI,128, // OPM-\>PPM Message In + MSGO,128, // PPM-\>OPM Message Out + } + + Method(_DSM,4,Serialized,0,UnknownObj, {BuffObj, IntObj,IntObj,PkgObj}) + { + // Compare passed in UUID to Supported UUID + If(LEqual(Arg0,ToUUID(“6f8398c2-7ca4-11e4-ad36-631042b5008f”))) + { + // Use FFA to send Notification event down to copy data to EC + If(LEqual(\\_SB.FFA0.AVAL,One)) { + CreateQwordField(BUFF,0,STAT) // Out – Status + CreateField(BUFF,128,128,UUID) // UUID of service + CreateByteField(BUFF,32, CMDD) // In – First byte of command + CreateField(BUFF,288,384,FIFD) // Out – Msg data + + // Create UCSI Doorbell Event + Store(0x0, CMDD) // UCSI set doorbell + Store(ToUUID("65467f50-827f-4e4f-8770-dbf4c3f77f45"), UUID) // EC_SVC_UCSI + Store(USBC, FIFD) // Copy output data + Store(Store(BUFF, \_SB_.FFA0.FFAC), BUFF) + + If(LEqual(STAT,0x0) ) // Check FF-A successful? + { + Return (FIFD) + } + } // End AVAL + Return(Zero) + } // End UUID + } // End DSM +} + +``` + +The UCSI service is routed over FF-A using the `EC_SVC_UCSI` service UUID +`65467f50-827f-4e4f-8770-dbf4c3f77f45`. This is distinct from the UCSI `_DSM` +selector `6f8398c2-7ca4-11e4-ad36-631042b5008f`, which is the OS-standard +argument the `_DSM` method matches on. + +### QEMU Test-Stub FF-A Transport + +The normative interface above uses a statically carved-out, 4K-aligned +shared-memory mailbox reachable from secure world. For deterministic +integration testing under QEMU there is a simplified FF-A transport that +carries the mailbox inline in the FF-A `DIRECT_REQ2` register payload instead +of a shared-memory region. **This test transport is for the QEMU test stub only +and does not replace the normative shared-memory ACPI interface described +above.** + +Framing (routed to `EC_SVC_UCSI`, `65467f50-827f-4e4f-8770-dbf4c3f77f45`): + +- Request payload: + - byte 0 = doorbell/command tag `0x00` (UCSI set doorbell). + - byte offsets 1 through 48 inclusive = the full 48-byte mailbox + (VERSION..MESSAGE OUT) copied inline. + - remaining bytes = zero padding. +- Response payload: + - byte offsets 0 through 47 inclusive = the updated 48-byte mailbox returned + by the stub (VERSION, CCI, unchanged CONTROL, and populated MESSAGE IN). + +Because the FF-A register payload comfortably holds the 49-byte request, no +shared-memory carve-out or memory-retrieve mapping is required for the test +stub. diff --git a/docs/src/specs/specifications.md b/docs/src/specs/specifications.md new file mode 100644 index 0000000..22a15b0 --- /dev/null +++ b/docs/src/specs/specifications.md @@ -0,0 +1,3 @@ +# ODP Specification Documents + +Adherence to ODP specifications enables component portability and auditing. diff --git a/docs/supply-chain.md b/docs/src/supply-chain.md similarity index 100% rename from docs/supply-chain.md rename to docs/src/supply-chain.md From e7fa71d22bc5f338294fc54fb11a02cb581ef53e Mon Sep 17 00:00:00 2001 From: Phil Weber Date: Thu, 20 Aug 2026 10:27:27 -0700 Subject: [PATCH 2/2] Fix documentation review typos Correct the spelling, code identifier, and Markdown fence issues found during review so the imported documentation renders and reads correctly. Assisted-by: GitHub Copilot:gpt-5.6-sol Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- docs/src/specs/ec_interface/ec-input-management.md | 2 +- docs/src/specs/ec_interface/ec-time-alarm-service.md | 2 +- docs/src/specs/ec_interface/sample-system-implementation.md | 2 +- docs/src/specs/ec_interface/secure-ec-services-overview.md | 5 ++--- docs/src/specs/ec_interface/thermal-service.md | 2 +- docs/src/specs/ec_interface/ucsi-interface.md | 2 +- 6 files changed, 7 insertions(+), 8 deletions(-) diff --git a/docs/src/specs/ec_interface/ec-input-management.md b/docs/src/specs/ec_interface/ec-input-management.md index 0505870..369a1d3 100644 --- a/docs/src/specs/ec_interface/ec-input-management.md +++ b/docs/src/specs/ec_interface/ec-input-management.md @@ -15,7 +15,7 @@ the system. | -------- | --------------------------------------------- | | _LID | Get state of LID device for clamshell designs | -### ACPI Example for LID notificiation +### ACPI Example for LID notification Assuming that LID is managed by the EC during registration we register for Input Management service for a Virtual ID = 1 diff --git a/docs/src/specs/ec_interface/ec-time-alarm-service.md b/docs/src/specs/ec_interface/ec-time-alarm-service.md index 8dd2db0..c835922 100644 --- a/docs/src/specs/ec_interface/ec-time-alarm-service.md +++ b/docs/src/specs/ec_interface/ec-time-alarm-service.md @@ -54,7 +54,7 @@ Method (_GCP) { If(LEqual(STAT,0x0) ) // Check FF-A successful? { - Return (GCDD) + Return (GCPD) } } Return(Zero) diff --git a/docs/src/specs/ec_interface/sample-system-implementation.md b/docs/src/specs/ec_interface/sample-system-implementation.md index a91be2b..a0ce14c 100644 --- a/docs/src/specs/ec_interface/sample-system-implementation.md +++ b/docs/src/specs/ec_interface/sample-system-implementation.md @@ -94,7 +94,7 @@ Device(USBC) { { // USB C Mailbox Interface VERS,16, // PPM-\>OPM Version - RES, 16, // Reservied + RES, 16, // Reserved CCI, 32, // PPM-\>OPM CCI Indicator CTRL,64, // OPM-\>PPM Control Messages MSGI,128, // OPM-\>PPM Message In diff --git a/docs/src/specs/ec_interface/secure-ec-services-overview.md b/docs/src/specs/ec_interface/secure-ec-services-overview.md index 6c576a1..87ecc14 100644 --- a/docs/src/specs/ec_interface/secure-ec-services-overview.md +++ b/docs/src/specs/ec_interface/secure-ec-services-overview.md @@ -423,7 +423,7 @@ typedef struct _FFA_INTERFACE {     ULONG Version;     PFFA_MSG_SEND_DIRECT_REQ2 SendDirectReq2; } FFA_INTERFACE, PFFA_INTERFACE; -```` +``` ### FFA Parsing @@ -512,7 +512,7 @@ The Secure Partition uses embassy as the scheduler for secure partition. This allows us to use await and do useful work while waiting for events even when we only are single threaded. -Embassy depeneds on timers and interrupts for signalling events. When we don't +Embassy depends on timers and interrupts for signalling events. When we don't have any work to do we still in the poll loop today. Optimizations can be made to yield control back to non-secure world in these situations. @@ -851,4 +851,3 @@ for monitoring that the system is running within safe parameters. The thermal requests and queries are meant to be advisory in nature and EC should be able to run independently and safely without any intervention from the OS. - diff --git a/docs/src/specs/ec_interface/thermal-service.md b/docs/src/specs/ec_interface/thermal-service.md index acd26c8..c6388c9 100644 --- a/docs/src/specs/ec_interface/thermal-service.md +++ b/docs/src/specs/ec_interface/thermal-service.md @@ -155,7 +155,7 @@ thresholds for ### Output Parameters -Arg0 – Status // 0 on success or neagtive error code +Arg0 – Status // 0 on success or negative error code Arg1 – Timeout // Integer (DWORD) in mS diff --git a/docs/src/specs/ec_interface/ucsi-interface.md b/docs/src/specs/ec_interface/ucsi-interface.md index 50b30c1..00680cb 100644 --- a/docs/src/specs/ec_interface/ucsi-interface.md +++ b/docs/src/specs/ec_interface/ucsi-interface.md @@ -70,7 +70,7 @@ Device(USBC) { { // USB C Mailbox Interface VERS,16, // PPM-\>OPM Version - RES, 16, // Reservied + RES, 16, // Reserved CCI, 32, // PPM-\>OPM CCI Indicator CTRL,64, // OPM-\>PPM Control Messages MSGI,128, // OPM-\>PPM Message In