# yuan-shiguang/android_device_xiaomi_sirius architecture

> Architecture diagram of the GitHub repository yuan-shiguang/android_device_xiaomi_sirius, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/yuan-shiguang/android_device_xiaomi_sirius
- Repository: https://github.com/yuan-shiguang/android_device_xiaomi_sirius

## Overview

This is a device-specific OrangeFox/TWRP recovery tree for the Xiaomi Mi 8 SE (sirius), not a general Android application. Its documented workflow is to select the sirius recovery product and build it; the README explicitly delegates recovery fstab and TWRP flags to the shared sdm710 tree. The available material does not show source excerpts, so the graph limits relationships to that documented dependency and does not infer runtime call paths among recovery files.

Main entry points: [`device.mk`](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/device.mk) (Device configuration), [`AndroidProducts.mk`](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/AndroidProducts.mk) (Product selection)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_product["Recovery product configuration"]
  node_product_selection["Product selection<br/>[AndroidProducts.mk]"]
  node_board_config["Board configuration<br/>[BoardConfig.mk]"]
  node_device_config["Device configuration<br/>[device.mk]"]
  node_sirius_product["Sirius recovery product<br/>[twrp_sirius.mk]"]
end

subgraph group_runtime["Recovery runtime payload"]
  node_recovery_image["Recovery image<br/>[Image.gz-dtb]"]
  node_recovery_init["Recovery init rules"]
  node_usb_init["Recovery USB rules"]
  node_gatekeeper["Gatekeeper service"]
  node_keymaster["Keymaster service"]
  node_qseecom["QSEE communication daemon"]
  node_vintf_manifest["VINTF manifest<br/>[manifest.xml]"]
end

node_builder(("Recovery builder"))
node_shared_sdm710["Shared sdm710 recovery config"]

node_builder -.->|"selects product"| node_product_selection
node_device_config -->|"uses recovery config"| node_shared_sdm710

click node_product_selection "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/AndroidProducts.mk"
click node_board_config "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/BoardConfig.mk"
click node_device_config "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/device.mk"
click node_sirius_product "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/twrp_sirius.mk"
click node_recovery_image "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/prebuilt/Image.gz-dtb"
click node_recovery_init "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/init.recovery.qcom.rc"
click node_usb_init "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/init.recovery.usb.rc"
click node_gatekeeper "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/system/bin/android.hardware.gatekeeper%401.0-service-qti"
click node_keymaster "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/system/bin/android.hardware.keymaster%404.0-service-qti"
click node_qseecom "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/system/bin/qseecomd"
click node_vintf_manifest "https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/system/etc/vintf/manifest.xml"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_product_selection,node_board_config,node_device_config,node_sirius_product toneBlue
class node_recovery_image,node_recovery_init,node_usb_init,node_gatekeeper,node_keymaster,node_qseecom,node_vintf_manifest toneAmber
class node_builder,node_shared_sdm710 toneIndigo
```

## Components

### Recovery product configuration

- [Product selection](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/AndroidProducts.mk): `AndroidProducts.mk`
- [Board configuration](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/BoardConfig.mk): `BoardConfig.mk`
- [Device configuration](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/device.mk): `device.mk`
- [Sirius recovery product](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/twrp_sirius.mk): `twrp_sirius.mk`

### Recovery runtime payload

- [Recovery image](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/prebuilt/Image.gz-dtb): `prebuilt/Image.gz-dtb`
- [Recovery init rules](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/init.recovery.qcom.rc): `recovery/root/init.recovery.qcom.rc`
- [Recovery USB rules](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/init.recovery.usb.rc): `recovery/root/init.recovery.usb.rc`
- [Gatekeeper service](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/system/bin/android.hardware.gatekeeper%401.0-service-qti): `recovery/root/system/bin/android.hardware.gatekeeper@1.0-service-qti`
- [Keymaster service](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/system/bin/android.hardware.keymaster%404.0-service-qti): `recovery/root/system/bin/android.hardware.keymaster@4.0-service-qti`
- [QSEE communication daemon](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/system/bin/qseecomd): `recovery/root/system/bin/qseecomd`
- [VINTF manifest](https://github.com/yuan-shiguang/android_device_xiaomi_sirius/blob/fox_12.1/recovery/root/system/etc/vintf/manifest.xml): `recovery/root/system/etc/vintf/manifest.xml`

### Other components

- **Recovery builder**
- **Shared sdm710 recovery config**

## Connections

- Recovery builder → Product selection: selects product (evidence: `README.md`)
- Device configuration → Shared sdm710 recovery config: uses recovery config (evidence: `README.md`)
