Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Random readme change #3

Open
wants to merge 61 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
902b316
Update flake.lock
Jun 26, 2023
92414ab
Docs: add Ghaf logo
jenninikko Jun 27, 2023
edb767b
Update flake.lock
Jul 3, 2023
972b8c3
doc: update the hypervisors options section
jkuro-tii Jun 22, 2023
169fc70
doc: apply review comment
jkuro-tii Jul 4, 2023
84a3cbc
Platform bus support ADR
vadika Apr 27, 2023
a570e7f
doc: add mdbook-footnote plugin
vilvo Jun 29, 2023
a5b3fa9
nvidia-jetson-orin: uefi: Add ghaf logo to boot
Jun 30, 2023
bafe768
Apps: add Zathura PDF Reader
baz2142 Jun 30, 2023
e7fc1f1
Fix docker module
Jul 10, 2023
6a1b3b1
Refactor
remimimimimi Jun 16, 2023
72130ad
Add autogenerated options docs
remimimimimi Jun 16, 2023
1a1ee4e
Add list of availiable modules to lib
remimimimimi Jun 21, 2023
e5ce69e
Use all modules for options docs
remimimimimi Jun 21, 2023
7461e71
Add reference to options documentation
remimimimimi Jun 21, 2023
7af2bcc
Fix docs modules
remimimimimi Jul 10, 2023
0a63d22
Fix documentation paths
remimimimimi Jul 10, 2023
3b7f2b8
Declarative NetVM configuration
Jun 28, 2023
9638a16
Update flake.lock
Jul 11, 2023
29bae76
Polarfire Icicle-kit reference platform
gangaram-tii Jul 5, 2023
8532eb8
Add the orin nx support
brianmcgillion Jul 13, 2023
74693c9
Update documentation for the AGX build
brianmcgillion Jul 13, 2023
87adcf7
use the latest case sensitivity for the flake.lock
brianmcgillion Jul 14, 2023
010d8b7
hydrajobs: Add docs build
Jun 21, 2023
97126ac
Add windows launcher for x86_64
nesteroff Jul 4, 2023
472921c
hydrajobs: Add microchip-icicle-kit job
Jul 13, 2023
ba13b47
Docs: new structure and proofreading
jenninikko Jul 18, 2023
863eec2
Backport fixes for perl cross-build
avnik Jul 17, 2023
226255a
Use fetchpatch2 instead of builtins.fetchurl
Jul 24, 2023
2cccbb8
Update flake.lock
Jul 24, 2023
c376c1c
Correct target name in Nvidia Jetson Agx template flake
juliuskoskela Jul 26, 2023
8a62c10
doc: Generic vfio setup for passthrough
josa41 Jun 22, 2023
ee2b855
templates: fix Orin NX template
Jul 26, 2023
dc3775c
doc: Crosvm x86 pcie passthrough
josa41 Jun 22, 2023
cd1caf6
Add libjack2 to cross-compilation overlay
Jul 29, 2023
bf18061
Update flake.lock
Jul 29, 2023
69aa97d
Update flake.lock
Jul 29, 2023
f84059c
Cache NVIDIA Jetson Orin cross-compiled packages
Aug 2, 2023
4317cd4
weston.ini: Keep weston-terminal launcher
unbel13ver Aug 1, 2023
559d00b
Cache versions without demo apps
Aug 4, 2023
49846a4
doc: add instructions how to run Cuttlefish (Android VM)
nesteroff Aug 4, 2023
0d0836d
docs: Add Ghaf security fix automation section
henrirosten Jun 22, 2023
2b6446f
Docs: address security fix automation review comments
henrirosten Aug 7, 2023
31d28c9
Docs: proofreading
jenninikko Aug 22, 2023
5da21a0
Random readme change
mnokka-unikie Aug 23, 2023
3547395
Yet another change
mnokka-unikie Aug 23, 2023
3e3142e
Fix cross-building of element-desktop
avnik Aug 23, 2023
0992662
Docs: add release notes information
jenninikko Aug 29, 2023
890ce08
Compartmentalize GPU and graphic apps into VMs
unbel13ver Aug 14, 2023
ea2cc63
doc: Lenovo X1 and compartmentalization
unbel13ver Aug 22, 2023
be55352
Orin Nx Ethernet Passthrough
emrahbillur Aug 30, 2023
fec29af
Remove requirement of aarch64-linux builder for EFI stuff
avnik Aug 31, 2023
a973cab
Enable cross-compiled devicePkgs for flash-script
Aug 3, 2023
38c307f
hydraJobs: Add job for Lenovo Carbon X1 laptop
Sep 7, 2023
b0ad071
Fix Lenovo X1 touchpad passthrough
nesteroff Sep 7, 2023
d4c2c6a
Merge remote-tracking branch 'upstream/main' into third-branch
mnokka-unikie Sep 12, 2023
669fbbb
testing sshgen hack
mnokka-unikie Sep 12, 2023
11f0b46
removed echo
mnokka-unikie Sep 12, 2023
2ef7f2c
set x added
mnokka-unikie Sep 12, 2023
5e2f047
added failure line
mnokka-unikie Sep 12, 2023
50af9a5
removed broken line, fixed -n parameter
mnokka-unikie Sep 12, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 16 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,29 @@
SPDX-License-Identifier: CC-BY-SA-4.0
-->

Another change for existing PR

Change by mnokka-unikie

# TII SSRC Secure Technologies: Ghaf Framework

[![License: Apache-2.0](https://img.shields.io/badge/License-Apache--2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0) [![License: CC-BY-SA 4.0](https://img.shields.io/badge/License-CC--BY--SA--4.0-lightgrey.svg)](https://creativecommons.org/licenses/by-sa/4.0/legalcode) [![Style Guide](https://img.shields.io/badge/docs-Style%20Guide-blueviolet)](https://github.com/tiiuae/ghaf/blob/main/docs/style_guide.md)
<p align="center">
<img src="./docs/src/img/1600px-Ghaf_logo.svg" alt="Ghaf Logo" width="50%" height="50%" />
</p>

<div align="center">

[![License: Apache-2.0](https://img.shields.io/badge/License-Apache--2.0-darkgreen.svg)](./LICENSES/LICENSE.Apache-2.0) [![License: CC-BY-SA 4.0](https://img.shields.io/badge/License-CC--BY--SA--4.0-orange.svg)](./LICENSES/LICENSE.CC-BY-SA-4.0) [![Style Guide](https://img.shields.io/badge/docs-Style%20Guide-yellow)](https://github.com/tiiuae/ghaf/blob/main/docs/style_guide.md)

</div>

This repository contains the source files (code and documentation) of Ghaf Framework — an open-source project for enhancing security through compartmentalization on edge devices.

For information on build instructions and supported hardware, see the [Reference Implementations](https://tiiuae.github.io/ghaf/ref_impl/reference_implementations.html) section of Ghaf documentation.


### Other Project Repositories

Other repositories that are a part of the Ghaf project:

* <https://github.com/tiiuae/sbomnix>: a utility that generates SBOMs given Nix derivations or out paths
Expand Down
4 changes: 3 additions & 1 deletion docs/README-docs.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,9 @@ To add new pages to the book:

2. Put images into the `src/img` folder. We make diagrams with [diagrams.net](https://www.diagrams.net/) (use it online) or [draw.io](https://drawio-app.com/blog/use-draw-io-offline/) (use it offline and on a tablet).

To embed a diagram, make sure that you use the Editable Bitmap Image format `<imagename>.drawio.png`. When creating a new diagram, choose *Editable Bitmap Image format (.png)* from the list. When editing the existing diagram, select **File > Export as > PNG...** and select the **Include a copy of my diagram** check box.
* To embed a diagram, make sure that you use the Editable Bitmap Image format `<imagename>.drawio.png`. When creating a new diagram, choose *Editable Bitmap Image format (.png)* from the list. When editing the existing diagram, select **File > Export as > PNG...** and select the **Include a copy of my diagram** check box.

* Try to use main colors according to brand colors: [Fonts and Colors](./style_guide.md#fonts-and-colors).

3. Add new structure elements (chapters, sections, subsections) to **SUMMARY.md** to update the table of contents. Otherwise, the files that you added will not be visible on GitHub Pages. Example:

Expand Down
2 changes: 2 additions & 0 deletions docs/book.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,5 @@ src = "src"
default-theme = "light"
git-repository-url = "https://github.com/tiiuae/ghaf"
git-repository-icon = "fa-github"

[preprocessor.footnote]
40 changes: 40 additions & 0 deletions docs/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Copyright 2022-2023 TII (SSRC) and the Ghaf contributors
# SPDX-License-Identifier: CC-BY-SA-4.0
{
pkgs,
lib,
callPackage,
runCommandLocal,
nixosOptionsDoc,
mdbook,
revision ? "",
options ? {},
}: let
optionsDocMd =
(nixosOptionsDoc {
inherit revision options;
transformOptions = x:
if lib.strings.hasPrefix "ghaf" x.name
then x
else x // {visible = false;};
markdownByDefault = true;
})
.optionsCommonMark;
combinedSrc = runCommandLocal "ghaf-doc-src" {} ''
mkdir $out
cp -r ${./.}/* $out
chmod +w $out/src/ref_impl/modules_options.md

# Refer to master branch files in github
sed 's/\(file:\/\/\)\?\/nix\/store\/[^/]*-source/https:\/\/github.com\/tiiuae\/ghaf\/blob\/main/g' ${optionsDocMd} >> $out/src/ref_impl/modules_options.md
'';
in
runCommandLocal "ghaf-doc"
{
nativeBuildInputs = let
footnote = callPackage ./plugins/mdbook-footnote.nix {};
in [mdbook footnote];
src = combinedSrc;
} ''
${mdbook}/bin/mdbook build -d $out $src
''
12 changes: 0 additions & 12 deletions docs/doc.nix

This file was deleted.

19 changes: 19 additions & 0 deletions docs/plugins/mdbook-footnote.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright 2022-2023 TII (SSRC) and the Ghaf contributors
# SPDX-License-Identifier: CC-BY-SA-4.0
{
fetchFromGitHub,
rustPlatform,
}:
rustPlatform.buildRustPackage rec {
pname = "mdbook-footnote";
version = "0.1.1";

src = fetchFromGitHub {
owner = "daviddrysdale";
repo = "mdbook-footnote";
rev = "refs/tags/v${version}";
sha256 = "sha256-WUMgm1hwsU9BeheLfb8Di0AfvVQ6j92kXxH2SyG3ses=";
};

cargoHash = "sha256-Ig+uVCO5oHIkkvFsKiBiUFzjUgH/Pydn4MVJHb2wKGc=";
}
51 changes: 39 additions & 12 deletions docs/src/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,62 @@
<!--
Copyright 2022-2023 TII (SSRC) and the Ghaf contributors
SPDX-License-Identifier: CC-BY-SA-4.0
-->

# Summary

# Overview

- [About Ghaf](index.md)
- [Features](features/features.md)
- [Architecture](architecture/architecture.md)
- [Architectural Variants](architecture/variants.md)
- [Architecture Decision Records](architecture/adr.md)
- [Minimal Host](architecture/adr/minimal-host.md)
- [Networking VM](architecture/adr/netvm.md)
- [Platform Bus for Rust VMM](architecture/adr/platform-bus-passthrough-support.md)
- [Stack](architecture/stack.md)

# For Developers

- [Contributing](appendices/contributing_general.md)
- [Reference Implementations](ref_impl/reference_implementations.md)
- [Development](ref_impl/development.md)
- [Build and Run](ref_impl/build_and_run.md)
- [Cross-Compilation](ref_impl/cross_compilation.md)
- [Creating Application VM](ref_impl/creating_appvm.md)
- [Ghaf as Library](ref_impl/ghaf-based-project.md)
- [Example Project](ref_impl/example_project.md)
- [Modules Options](ref_impl/modules_options.md)
- [Technologies](technologies/technologies.md)
- [Compartmentalization](technologies/compartment.md)
- [Passthrough](technologies/passthrough.md)
- [Binding Device to VFIO Driver](technologies/vfio.md)
- [NVIDIA Jetson AGX Orin: UART Passthrough](technologies/nvidia_agx_pt_uart.md)
- [NVIDIA Jetson AGX Orin: PCIe Passthrough](technologies/nvidia_agx_pt_pcie.md)
- [Generic x86: PCIe Passthrough on crosvm](technologies/x86_pcie_crosvm.md)
- [Hypervisor Options](technologies/hypervisor_options.md)
- [Reference Implementations](ref_impl/reference_implementations.md)
- [Usage](ref_impl/usage.md)
- [Development](ref_impl/development.md)
- [Build and Run](ref_impl/build_and_run.md)
- [Cross-Compilation](ref_impl/cross_compilation.md)

# Build System and Supply Chain

- [CI/CD System]()
- [Supply Chain Security](scs/scs.md)
- [SLSA Framework](scs/slsa-framework.md)
- [Basic Security Measures](scs/basics.md)
- [Software Bill of Materials](scs/sbom.md)
- [Public Key Infrastructure](scs/pki.md)
- [Patch Management Automation](scs/patching-automation.md)
- [Research Notes](research/research.md)
- [i.MX 8QM Ethernet Passthrough](research/passthrough/ethernet.md)
- [Running Windows VM on Ghaf](research/run_win_vm.md)
- [Security Fix Automation](scs/ghaf-security-fix-automation.md)
- [Release Notes](release_notes/release_notes.md)

-----------
# Ghaf Usage Scenarios

- [Showcases](scenarios/showcases.md)
- [Running Windows VM on Ghaf](scenarios/run_win_vm.md)
- [Running Cuttlefish on Ghaf](scenarios/run_cuttlefish.md)
- [Build Your Environment]()

[Glossary](appendices/glossary.md)
-----------

[Contributing](appendices/contributing_general.md)
- [Glossary](appendices/glossary.md)
- [Research Notes](research/research.md)
- [i.MX 8QM Ethernet Passthrough](research/passthrough/ethernet.md)
3 changes: 2 additions & 1 deletion docs/src/architecture/adr.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ The Ghaf platform decision log:
| -------- | ----------- |
| [Minimal Host](../architecture/adr/minimal-host.md) | Proposed. |
| [netvm—Networking Virtual Machine](../architecture/adr/netvm.md) | Proposed, partially implemented for development and testing. |
| [Platform Bus for RustVMM](../architecture/adr/platform-bus-passthrough-support.md) | Proposed, WIP. |


To create an architectural decision proposal, open [a pull request](https://github.com/tiiuae/ghaf/blob/main/CONTRIBUTING.md#contributing-documentation) and use the [decision record template](https://github.com/tiiuae/ghaf/blob/main/docs/src/architecture/adr/template.md). Contributions to the Ghaf architecture decisions are welcome.
To create an architectural decision proposal, open [a pull request](https://github.com/tiiuae/ghaf/blob/main/CONTRIBUTING.md#contributing-documentation) and use the [decision record template](https://github.com/tiiuae/ghaf/blob/main/docs/src/architecture/adr/template.md). Contributions to the Ghaf architecture decisions are welcome.
2 changes: 1 addition & 1 deletion docs/src/architecture/adr/minimal-host.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

## Status

Proposed
Proposed.

## Context

Expand Down
41 changes: 41 additions & 0 deletions docs/src/architecture/adr/platform-bus-passthrough-support.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<!--
Copyright 2023 TII (SSRC) and the Ghaf contributors
SPDX-License-Identifier: CC-BY-SA-4.0
-->

# rust-vmm—Bus Passthrough Support for Rust VMMs

## Status

Proposed, work in progress.


## Context

This ADR is a work-in-progress note for Ghaf bus passthrough implementation that will support rust-vmm-based hypervisors.

> *rust-vmm* is an open-source project that empowers the community to build custom Virtual Machine Monitors (VMMs) and hypervisors. For more information, see <https://github.com/rust-vmm/community>.

It is crucial to have bus devices passthrough support for ARM-based hardware as the bus is mainly used to connect the peripherals. Nowadays, the only hypervisor with some support for Platform bus is QEMU but the code is dated 2013 and not frequently used.

On the other hand, one of the target hardware devices for Ghaf is NVIDIA Orin with an ARM core. To achieve Ghaf's security and hardware isolation goals, devices should support passthrough mode. Production-ready rust-vmm-based hypervisors ([crosvm](https://github.com/google/crosvm), [Firecracker](https://github.com/firecracker-microvm/firecracker), [Cloud Hypervisor](https://www.cloudhypervisor.org/)) do not have support for Platform bus.


## Decision

Implementation of Platform bus passthrough is a base framework for Rust VMM. This will make it possible to use this mode within production-ready rust-vmm-based hypervisors. The main candidate here is crosvm. The necessity to support Platform bus in other hypervisors is subject to discussion. Technically, the Platform bus is rather a simple bus: it manages memory mapping and interrupts. Information about devices is not dynamic but is read from the device tree during the boot stage.

The current status:

| Required Components | Status of Readiness |
|--- |--- |
| Host kernel side: | |
| VFIO drivers (to substitute real driver in host kernel) | -/+ |
| Host support for device trees | + |
| Guest kernel side: | |
| Device drivers for passthrough devices | + |
| Guest support for device trees | + |
| Rust VMM side: |
| Bus support | Needs to be developed. |
| VMM support for device trees | Rudimental, needs improvement. |

10 changes: 7 additions & 3 deletions docs/src/architecture/adr/template.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,23 @@ This is the template for managing the ADR files.

In each ADR file, write these sections:


# Title

## Status

What is the status, such as proposed, accepted, rejected, deprecated, superseded, etc.?
What is the status: proposed, accepted, rejected, deprecated, superseded, etc.?


## Context

What is the issue that we're seeing that is motivating this decision or change?
What is the issue that we are seeing that is motivating this decision or change?


## Decision

What is the change that we're proposing and/or doing?
What is the change that we are proposing and/or doing?


## Consequences

Expand Down
22 changes: 13 additions & 9 deletions docs/src/features/features.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
The vision for the Ghaf platform is to create a virtualized, scalable reference platform that enables the building of secure products leveraging trusted, reusable, and portable software for edge devices. For more information on reference implementation for several devices, see [Reference Implementations](../ref_impl/reference_implementations.md).

Ghaf demo desktop and applications are illustrated in the screen capture below:
![Ghaf demo desktop and application](../img/ghaf_demo_desktop.png)
![Ghaf demo desktop and application](../img/ghaf_demo_desktop.png)
## Status

* &#x2705; - integrated and tested in the `main` branch. No known regression.
Expand All @@ -19,6 +19,7 @@ Ghaf demo desktop and applications are illustrated in the screen capture below:

- `Orin`—NVIDIA Jetson AGX Orin as the main reference device.
- `x86`—generic x86_64; tested on Intel NUC (Next Unit of Computing) or laptop.
- `Lenovo X1`—Lenovo X1 Carbon Gen11 laptop.
- `aarch64`—generic AArch64; tested on an ARM server, laptop (e.g. Apple M's), or NVIDIA Jetson AGX Orin.
- `All variants`—supported devices from [Architectural Variants](https://tiiuae.github.io/ghaf/architecture/variants.html).

Expand All @@ -32,8 +33,9 @@ The following tables show the status of Ghaf Platform features:
| `aarch64` reference image | &#x2705; | `Orin` | Based on [Jetson Linux](https://developer.nvidia.com/embedded/jetson-linux), [OE4T](https://github.com/OE4T) and [jetpack-nixos](https://github.com/anduril/jetpack-nixos). |
| `aarch64` reference image | &#x2705; | `imx8qm` | Based on NXP BSP, implemented as [nixos-hardware module](https://github.com/NixOS/nixos-hardware/tree/master/nxp)|
| `x86` generic image | &#x2705; | `x86` | Generic x86 computer, based on generic [NixOS](https://nixos.org/). NOTE: requires device specific configuration.|
| `Lenovo X1` reference image | &#x2705; | `Lenovo X1` | x86_64 laptop computer, supports basic compartmentalized environment |
| Native build | &#x2705; | `aarch64, x86` | Remote `aarc64` nixos builders recommended |
| Cross-compilation | &#x1f6A7; | `aarch64` | Depends on NixOS `nixpkgs 23.05` support for cross-compilation |
| Cross-compilation | &#x1f6A7; | `aarch64, riscv64` | Depends on NixOS `nixpkgs 23.05` support for cross-compilation |
| CI builds | &#x2705; | `All` | [Only `main`-branch, not for all PRs](https://vedenemo.dev/). |
| Emulated build | &#x274C; | `aarch64` | `binfmt`, may freeze the build machine. Not recommended. [See instructions.](https://tiiuae.github.io/ghaf/ref_impl/cross_compilation.html#binfmt)|

Expand All @@ -47,6 +49,7 @@ The following tables show the status of Ghaf Platform features:
| root filesystem flashing | &#x2705; | `x86, imx8qm` | `dd` image to bootable media - [see](https://tiiuae.github.io/ghaf/ref_impl/build_and_run.html#running-ghaf-image-for-x86-computer) |
| Debug: SSH | &#x2705; | `Orin`, `x86` | Host access only in `-debug`-target, see [authentication.nix](https://github.com/tiiuae/ghaf/blob/main/modules/development/authentication.nix) |
| Debug: Serial | &#x2705; | `all` | Host access only in `-debug`-target - e.g. `screen /dev/ttyACM0 115200` |
| Compartmentalized environment | &#x1f6A7; | `Lenovo X1` | NetVM, GUI VM (with GPU passthrough) plus some Application VMs |

## Target architecture

Expand All @@ -55,11 +58,12 @@ The following tables show the status of Ghaf Platform features:
| `minimal host` | &#x1f6A7; | [`all`](https://tiiuae.github.io/ghaf/architecture/variants.html) | See [Minimal Host](https://tiiuae.github.io/ghaf/architecture/adr/minimal-host.html) and [PR #140](https://github.com/tiiuae/ghaf/pull/140). |
| `netvm` | &#x2705; | `Orin` | See [netvm](https://tiiuae.github.io/ghaf/architecture/adr/netvm.html). Passthrough with Wifi works but requires SSID/password configuration |
| `idsvm` | &#x2705; | `Orin` | [Defensive security VM placeholder PR open](https://github.com/tiiuae/ghaf/pull/146) |
| `guivm` | &#x1f6A7; | `All`| Currently Wayland stack and apps on host for demos. Graphics are host-only for now. [PCI GPU passthrough and guivm PR open](https://github.com/tiiuae/ghaf/pull/118)|
| `guivm` | &#x1f6A7; | `All`, `Lenovo-X1`| Implemented for Lenovo X1 reference device, other devices have Wayland compositor running on the host.|
| `appvm` | &#x1f6A7; | `All`, `Lenovo-X1`| Implemented for Lenovo X1 reference device: chromium, GALA and zathura VMs. Requires `guivm` in place |
| `adminvm` | &#x2705; | `All` | Not started |
| Inter VM comms - IP-based | &#x1f6A7; | `All` |`-debug`-targets have network bridges to access VMs from host |
| Inter VM comms - shared memory | &#x1f6A7; | `All` | |
| Inter VM Wayland | &#x1f6A7; | `All` | Being ported from previous work |
| Inter VM Wayland | &#x1f6A7; | `All` | Currently it is `waypipe` over SSH, for test and demo purpose only |
| SW update | &#x1f6A7; | `All` | A/B update tooling being evaluated |
| USB passthrough | &#x1f6A7; | `Orin` | No reference implementation integrated yet |
| PCI passthrough | &#x2705; | `All` | Used for reference in `netvm` on `Orin` |
Expand All @@ -70,15 +74,15 @@ The following tables show the status of Ghaf Platform features:

| Feature | Status | Reference Device | Details |
|-------------------|-------------|------------------|----------------------------------------------|
| Wayland-compositor | &#x1f6A7; | `Orin`, `x86` | On host |
| Chromium | &#x1f6A7; | `Orin`, `x86` | On host |
| Wayland-compositor | &#x1f6A7; | `Orin`, `x86` | Implemented for `Lenovo-X1` |
| Chromium | &#x1f6A7; | `Orin`, `x86` | Implemented for `Lenovo-X1` |
| Element | &#x1f6A7; | `Orin`, `x86` | On host |
| Cloud Android (CVD) client app (GALA )| &#x1f6A7; | `Orin`, `x86` | On host |
| Cloud Android (CVD) client app (GALA )| &#x1f6A7; | `Orin`, `x86` | Implemented for `Lenovo-X1` |
| Virtualization control | &#x1f6A7; | [`All`](https://tiiuae.github.io/ghaf/architecture/variants.html) | See [vmd design](https://github.com/tiiuae/vmd/blob/main/doc/design.md). |

## Next steps

[See discussion for the outline of next steps](https://github.com/tiiuae/ghaf/issues/150#issuecomment-1564061850)
[See discussion for the outline of next steps](https://github.com/tiiuae/ghaf/issues/150#issuecomment-1564061850)

![Outline of next phases](https://user-images.githubusercontent.com/1027150/241167552-bcb3a3f9-72f3-4b96-af8b-e9df6d1f3d5e.png)
![Outline of next phases](https://user-images.githubusercontent.com/1027150/241167552-bcb3a3f9-72f3-4b96-af8b-e9df6d1f3d5e.png)

Loading