diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index f2ceb96..61e6c6a 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -90,6 +90,7 @@ export default withMermaid(defineConfig({ text: '驱动', items: [ { text: '驱动分层', link: '/zh/drivers/overview' }, + { text: '驱动仓库', link: '/zh/drivers/repositories' }, { text: 'UEFI 驱动', link: '/zh/drivers/uefi-drivers' }, { text: 'XNU 驱动', link: '/zh/drivers/xnu-drivers' }, { text: 'Adreno 740 驱动', link: '/zh/drivers/native-adreno' }, @@ -315,6 +316,7 @@ export default withMermaid(defineConfig({ text: 'Drivers', items: [ { text: 'Driver layers', link: '/drivers/overview' }, + { text: 'Driver repositories', link: '/drivers/repositories' }, { text: 'UEFI drivers', link: '/drivers/uefi-drivers' }, { text: 'XNU drivers', link: '/drivers/xnu-drivers' }, { text: 'Adreno 740 driver', link: '/drivers/native-adreno' }, diff --git a/docs/drivers/adreno-firmware.md b/docs/drivers/adreno-firmware.md new file mode 100644 index 0000000..6a41ac6 --- /dev/null +++ b/docs/drivers/adreno-firmware.md @@ -0,0 +1,15 @@ +# AdrenoFirmware + +Adreno GMU firmware and HFI kit. Loads the GMU firmware and speaks the HFI protocol. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [AdrenoFirmware](https://github.com/UniXNU/AdrenoFirmware) | [UniXNU](https://github.com/UniXNU) | Adreno GMU firmware and HFI kit. Loads the GMU firmware and speaks the HFI protocol. | + +## State + +Used by NativeAdreno. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/adreno-pm4.md b/docs/drivers/adreno-pm4.md new file mode 100644 index 0000000..b086804 --- /dev/null +++ b/docs/drivers/adreno-pm4.md @@ -0,0 +1,15 @@ +# AdrenoPM4 + +Adreno PM4 packet encoding kit. Builds the command streams NativeAdreno submits. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [AdrenoPM4](https://github.com/UniXNU/AdrenoPM4) | [UniXNU](https://github.com/UniXNU) | Adreno PM4 packet encoding kit. Builds the command streams NativeAdreno submits. | + +## State + +Used by NativeAdreno. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/air-nir.md b/docs/drivers/air-nir.md new file mode 100644 index 0000000..81baf7a --- /dev/null +++ b/docs/drivers/air-nir.md @@ -0,0 +1,15 @@ +# AirNir + +Offline AIR to NIR to IR3 compiler kit. Qualifies the shader path without a GPU submission. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [AirNir](https://github.com/UniXNU/AirNir) | [UniXNU](https://github.com/UniXNU) | Offline AIR to NIR to IR3 compiler kit. Qualifies the shader path without a GPU submission. | + +## State + +Offline tooling. The runtime Metal path uses metal2vulkan and Turnip. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/arm-cpu.md b/docs/drivers/arm-cpu.md new file mode 100644 index 0000000..838d4c0 --- /dev/null +++ b/docs/drivers/arm-cpu.md @@ -0,0 +1,15 @@ +# ArmCpu + +ARM64 CPU, GIC and timer driver. Publishes the CPUs, interrupt controller and architectural timer. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [ArmCpu](https://github.com/UniXNU/ArmCpu) | [UniXNU](https://github.com/UniXNU) | ARM64 CPU, GIC and timer driver. Publishes the CPUs, interrupt controller and architectural timer. | + +## State + +Generic driver used by every ARM64 port. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/arm-dt-platform.md b/docs/drivers/arm-dt-platform.md new file mode 100644 index 0000000..b36361e --- /dev/null +++ b/docs/drivers/arm-dt-platform.md @@ -0,0 +1,15 @@ +# ArmDTPlatform + +ARM device-tree platform expert. Publishes CPU nubs and every `arm-io` child from the ADT. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [ArmDTPlatform](https://github.com/UniXNU/ArmDTPlatform) | [UniXNU](https://github.com/UniXNU) | ARM device-tree platform expert. Publishes CPU nubs and every `arm-io` child from the ADT. | + +## State + +Generic driver. Requires `/cpus`, `/arm-io`, `/defaults`, `/options` and the NVRAM proxy. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/arm-smmu4k.md b/docs/drivers/arm-smmu4k.md new file mode 100644 index 0000000..486e75b --- /dev/null +++ b/docs/drivers/arm-smmu4k.md @@ -0,0 +1,15 @@ +# ArmSmmu4K + +ARM SMMUv2 native 4 KiB table kit. Builds and programs stage-1/stage-2 context tables. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [ArmSmmu4K](https://github.com/UniXNU/ArmSmmu4K) | [UniXNU](https://github.com/UniXNU) | ARM SMMUv2 native 4 KiB table kit. Builds and programs stage-1/stage-2 context tables. | + +## State + +Used by NativeAdreno and the storage drivers. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/arm-virt-platform.md b/docs/drivers/arm-virt-platform.md new file mode 100644 index 0000000..0e4cd3b --- /dev/null +++ b/docs/drivers/arm-virt-platform.md @@ -0,0 +1,15 @@ +# ArmVirtPlatform + +ARM virtual platform for QEMU. Publishes the QEMU virt platform devices. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [ArmVirtPlatform](https://github.com/UniXNU/ArmVirtPlatform) | [UniXNU](https://github.com/UniXNU) | ARM virtual platform for QEMU. Publishes the QEMU virt platform devices. | + +## State + +Used by the QEMU port. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/community-native-adreno-fuxi.md b/docs/drivers/community-native-adreno-fuxi.md new file mode 100644 index 0000000..eb905d3 --- /dev/null +++ b/docs/drivers/community-native-adreno-fuxi.md @@ -0,0 +1,15 @@ +# NativeAdreno-fuxi + +Adreno driver fork for the Xiaomi 13 (fuxi, SM8550). Tracks the official driver. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeAdreno-fuxi](https://github.com/ljhhkx529/NativeAdreno-fuxi) | [ljhhkx529](https://github.com/ljhhkx529) | Adreno driver fork for the Xiaomi 13 (fuxi, SM8550). Tracks the official driver. | + +## State + +No hardware result is documented. + +## Maintenance + +The maintainer owns the repository and its release decisions. UniXNU documentation lists the driver and its state; it does not take over maintenance. diff --git a/docs/drivers/community-native-adreno-myron.md b/docs/drivers/community-native-adreno-myron.md new file mode 100644 index 0000000..05d0989 --- /dev/null +++ b/docs/drivers/community-native-adreno-myron.md @@ -0,0 +1,15 @@ +# NativeAdreno-myron + +Adreno driver fork for the Redmi K90 Pro Max / Poco F8 Ultra (myron, SM8850). Adds the A8XX register table, continuation thread and user-thread selection. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeAdreno-myron](https://github.com/zg7681/NativeAdreno-myron) | [zg7681](https://github.com/zg7681) | Adreno driver fork for the Redmi K90 Pro Max / Poco F8 Ultra (myron, SM8850). Adds the A8XX register table, continuation thread and user-thread selection. | + +## State + +No hardware result is documented. + +## Maintenance + +The maintainer owns the repository and its release decisions. UniXNU documentation lists the driver and its state; it does not take over maintenance. diff --git a/docs/drivers/community-native-msdc.md b/docs/drivers/community-native-msdc.md new file mode 100644 index 0000000..7364037 --- /dev/null +++ b/docs/drivers/community-native-msdc.md @@ -0,0 +1,15 @@ +# NativeMsdc (community) + +MediaTek MT8167 MSDC eMMC block driver for the Benesse TAB-A04-BR3. Publishes the root image windows and the persistent Data store. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeMsdc](https://github.com/mouseos/NativeMsdc) | [mouseos](https://github.com/mouseos) | MediaTek MT8167 MSDC eMMC block driver for the Benesse TAB-A04-BR3. Publishes the root image windows and the persistent Data store. | + +## State + +Compiles against xnu-10063.141.1 headers. The register sequences were used by the earlier a04br3 XNU port; the driver has not booted. + +## Maintenance + +The maintainer owns the repository and its release decisions. UniXNU documentation lists the driver and its state; it does not take over maintenance. diff --git a/docs/drivers/community-native-ufs-alioth.md b/docs/drivers/community-native-ufs-alioth.md new file mode 100644 index 0000000..5cb2532 --- /dev/null +++ b/docs/drivers/community-native-ufs-alioth.md @@ -0,0 +1,15 @@ +# NativeUfs-alioth + +UFS driver fork for alioth, the Redmi K40 / Poco F3 family. Tracks the official controller and root-read path. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeUfs-alioth](https://github.com/FFT-infra/NativeUfs-alioth) | [FFT-infra](https://github.com/FFT-infra) | UFS driver fork for alioth, the Redmi K40 / Poco F3 family. Tracks the official controller and root-read path. | + +## State + +No hardware result is documented. + +## Maintenance + +The maintainer owns the repository and its release decisions. UniXNU documentation lists the driver and its state; it does not take over maintenance. diff --git a/docs/drivers/community-native-ufs-myron.md b/docs/drivers/community-native-ufs-myron.md new file mode 100644 index 0000000..2a23eea --- /dev/null +++ b/docs/drivers/community-native-ufs-myron.md @@ -0,0 +1,15 @@ +# NativeUfs-myron + +UFS driver fork for myron. Tracks the official NativeUfs controller and root-read path. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeUfs-myron](https://github.com/zg7681/NativeUfs-myron) | [zg7681](https://github.com/zg7681) | UFS driver fork for myron. Tracks the official NativeUfs controller and root-read path. | + +## State + +No hardware result is documented. + +## Maintenance + +The maintainer owns the repository and its release decisions. UniXNU documentation lists the driver and its state; it does not take over maintenance. diff --git a/docs/drivers/community-unixnu-nativemobiledisplay.md b/docs/drivers/community-unixnu-nativemobiledisplay.md new file mode 100644 index 0000000..3724220 --- /dev/null +++ b/docs/drivers/community-unixnu-nativemobiledisplay.md @@ -0,0 +1,15 @@ +# unixnu-nativemobiledisplay + +CPU software display, framebuffer copying and presentation for the Samsung Galaxy Tab S7 FE Wi-Fi (SM-T733). + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [unixnu-nativemobiledisplay](https://github.com/RigoLigoRLC/unixnu-nativemobiledisplay) | [RigoLigoRLC](https://github.com/RigoLigoRLC) | CPU software display, framebuffer copying and presentation for the Samsung Galaxy Tab S7 FE Wi-Fi (SM-T733). | + +## State + +The CPU and GPU scanout paths work. The GOP scanout has no vblank interrupt; `sheng-vsync` supplies a timer. + +## Maintenance + +The maintainer owns the repository and its release decisions. UniXNU documentation lists the driver and its state; it does not take over maintenance. diff --git a/docs/drivers/community-unixnu-nativeramblock.md b/docs/drivers/community-unixnu-nativeramblock.md new file mode 100644 index 0000000..8f987e9 --- /dev/null +++ b/docs/drivers/community-unixnu-nativeramblock.md @@ -0,0 +1,15 @@ +# unixnu-nativeramblock + +Persistent Data storage and explicit reset handling for the Samsung Galaxy Tab S7 FE Wi-Fi (SM-T733). + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [unixnu-nativeramblock](https://github.com/RigoLigoRLC/unixnu-nativeramblock) | [RigoLigoRLC](https://github.com/RigoLigoRLC) | Persistent Data storage and explicit reset handling for the Samsung Galaxy Tab S7 FE Wi-Fi (SM-T733). | + +## State + +Used for the RAM-backed Data volume and the optional persistent overlay. + +## Maintenance + +The maintainer owns the repository and its release decisions. UniXNU documentation lists the driver and its state; it does not take over maintenance. diff --git a/docs/drivers/community-unixnu-nativeufs.md b/docs/drivers/community-unixnu-nativeufs.md new file mode 100644 index 0000000..650b613 --- /dev/null +++ b/docs/drivers/community-unixnu-nativeufs.md @@ -0,0 +1,15 @@ +# unixnu-nativeufs + +SM7325 UFS, SMMU and root storage support for the Samsung Galaxy Tab S7 FE Wi-Fi (SM-T733). + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [unixnu-nativeufs](https://github.com/RigoLigoRLC/unixnu-nativeufs) | [RigoLigoRLC](https://github.com/RigoLigoRLC) | SM7325 UFS, SMMU and root storage support for the Samsung Galaxy Tab S7 FE Wi-Fi (SM-T733). | + +## State + +Controller selection, GCC diagnostics and configurable SMMU addressing are implemented. The firmware-to-XNU handoff still requires device execution. + +## Maintenance + +The maintainer owns the repository and its release decisions. UniXNU documentation lists the driver and its state; it does not take over maintenance. diff --git a/docs/drivers/darwin-boot.md b/docs/drivers/darwin-boot.md new file mode 100644 index 0000000..d238a73 --- /dev/null +++ b/docs/drivers/darwin-boot.md @@ -0,0 +1,15 @@ +# DarwinBoot + +UEFI bootloader. Installs the loader protocol and hands the kernel, ADT, trust cache and ramdisk to XNU. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [DarwinBoot](https://github.com/UniXNU/DarwinBoot) | [UniXNU](https://github.com/UniXNU) | UEFI bootloader. Installs the loader protocol and hands the kernel, ADT, trust cache and ramdisk to XNU. | + +## State + +Not a driver. Used by every XNU boot path. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-aes.md b/docs/drivers/native-aes.md new file mode 100644 index 0000000..eb79204 --- /dev/null +++ b/docs/drivers/native-aes.md @@ -0,0 +1,15 @@ +# NativeAES + +Native AES accelerator driver. Binds the original accelerator class to the recorded XNU ABI. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeAES](https://github.com/UniXNU/NativeAES) | [UniXNU](https://github.com/UniXNU) | Native AES accelerator driver. Binds the original accelerator class to the recorded XNU ABI. | + +## State + +Linked into XNU when the board enables the archive. No standalone hardware result. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-geni-spi.md b/docs/drivers/native-geni-spi.md new file mode 100644 index 0000000..4123d26 --- /dev/null +++ b/docs/drivers/native-geni-spi.md @@ -0,0 +1,15 @@ +# NativeGeniSpi + +Qualcomm GENI serial-engine SPI master for the touch controller and other SPI devices. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeGeniSpi](https://github.com/UniXNU/NativeGeniSpi) | [UniXNU](https://github.com/UniXNU) | Qualcomm GENI serial-engine SPI master for the touch controller and other SPI devices. | + +## State + +Used by the sheng touch path. The driver has no standalone hardware result. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-hid-input.md b/docs/drivers/native-hid-input.md new file mode 100644 index 0000000..660995e --- /dev/null +++ b/docs/drivers/native-hid-input.md @@ -0,0 +1,15 @@ +# NativeHidInput + +HID input driver. Publishes touch and hardware buttons through the original IOHID stack. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeHidInput](https://github.com/UniXNU/NativeHidInput) | [UniXNU](https://github.com/UniXNU) | HID input driver. Publishes touch and hardware buttons through the original IOHID stack. | + +## State + +Used by sheng and several device ports. The driver has no standalone hardware result. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-keystore-events.md b/docs/drivers/native-keystore-events.md new file mode 100644 index 0000000..56371f9 --- /dev/null +++ b/docs/drivers/native-keystore-events.md @@ -0,0 +1,15 @@ +# NativeKeyStoreEvents + +AppleKeyStore state client. Answers the keystore state queries the original userland makes. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeKeyStoreEvents](https://github.com/UniXNU/NativeKeyStoreEvents) | [UniXNU](https://github.com/UniXNU) | AppleKeyStore state client. Answers the keystore state queries the original userland makes. | + +## State + +Used by the VM and device ports. No standalone hardware result. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-metal.md b/docs/drivers/native-metal.md new file mode 100644 index 0000000..7698fda --- /dev/null +++ b/docs/drivers/native-metal.md @@ -0,0 +1,15 @@ +# NativeMetal + +Metal API frontend. Publishes a Metal device through `MTLAddDevice`, translates AIR with metal2vulkan and submits through Turnip and NativeAdreno. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeMetal](https://github.com/UniXNU/NativeMetal) | [UniXNU](https://github.com/UniXNU) | Metal API frontend. Publishes a Metal device through `MTLAddDevice`, translates AIR with metal2vulkan and submits through Turnip and NativeAdreno. | + +## State + +The GPU-composited desktop runs on sheng. First-use shader compilation is slow and there is no complete precompiled UI pack. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-mobile-display.md b/docs/drivers/native-mobile-display.md new file mode 100644 index 0000000..27f012c --- /dev/null +++ b/docs/drivers/native-mobile-display.md @@ -0,0 +1,15 @@ +# NativeMobileDisplay + +Mobile display driver and GPU scanout hand-off. Validates swaps, retires frames and drives the firmware framebuffer. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeMobileDisplay](https://github.com/UniXNU/NativeMobileDisplay) | [UniXNU](https://github.com/UniXNU) | Mobile display driver and GPU scanout hand-off. Validates swaps, retires frames and drives the firmware framebuffer. | + +## State + +The CPU and GPU scanout paths work. The GOP scanout has no vblank interrupt; `sheng-vsync` supplies a timer. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-prelink.md b/docs/drivers/native-prelink.md new file mode 100644 index 0000000..2b538fc --- /dev/null +++ b/docs/drivers/native-prelink.md @@ -0,0 +1,15 @@ +# NativePrelink + +Kernel prelink emitter and tooling. Binds the native kernel to the original kexts and writes the prelink plan. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativePrelink](https://github.com/UniXNU/NativePrelink) | [UniXNU](https://github.com/UniXNU) | Kernel prelink emitter and tooling. Binds the native kernel to the original kexts and writes the prelink plan. | + +## State + +Used by every kernel build. The ABI must match the pinned kernelcache. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-ram-block.md b/docs/drivers/native-ram-block.md new file mode 100644 index 0000000..2bf43ef --- /dev/null +++ b/docs/drivers/native-ram-block.md @@ -0,0 +1,15 @@ +# NativeRamBlock + +RAM block storage driver. Provides block devices from RAM and an optional persistent Data overlay. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeRamBlock](https://github.com/UniXNU/NativeRamBlock) | [UniXNU](https://github.com/UniXNU) | RAM block storage driver. Provides block devices from RAM and an optional persistent Data overlay. | + +## State + +Used for the RAM-backed Data volume and the persistent overlay. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-ufs.md b/docs/drivers/native-ufs.md new file mode 100644 index 0000000..b5f6c7b --- /dev/null +++ b/docs/drivers/native-ufs.md @@ -0,0 +1,15 @@ +# NativeUfs + +Native UFS storage driver. Owns the host controller, SMMU, queues and the root read path. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeUfs](https://github.com/UniXNU/NativeUfs) | [UniXNU](https://github.com/UniXNU) | Native UFS storage driver. Owns the host controller, SMMU, queues and the root read path. | + +## State + +The native UFS root works on sheng. SM8550 and SM7325 register paths are supported. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-virtio-block.md b/docs/drivers/native-virtio-block.md new file mode 100644 index 0000000..7cb4cae --- /dev/null +++ b/docs/drivers/native-virtio-block.md @@ -0,0 +1,15 @@ +# NativeVirtioBlock + +Virtio block driver. Publishes virtio disks to XNU and optionally uses the verified root path. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeVirtioBlock](https://github.com/UniXNU/NativeVirtioBlock) | [UniXNU](https://github.com/UniXNU) | Virtio block driver. Publishes virtio disks to XNU and optionally uses the verified root path. | + +## State + +Used by QEMU and DroidVM. The QEMU port reaches the iPadOS home screen. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-virtio-console.md b/docs/drivers/native-virtio-console.md new file mode 100644 index 0000000..13def0d --- /dev/null +++ b/docs/drivers/native-virtio-console.md @@ -0,0 +1,15 @@ +# NativeVirtioConsole + +Virtio console transport for logs and bounded offline instruments. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeVirtioConsole](https://github.com/UniXNU/NativeVirtioConsole) | [UniXNU](https://github.com/UniXNU) | Virtio console transport for logs and bounded offline instruments. | + +## State + +Used by the QEMU and VM ports. No standalone hardware result. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/native-wifi.md b/docs/drivers/native-wifi.md new file mode 100644 index 0000000..4c84ff6 --- /dev/null +++ b/docs/drivers/native-wifi.md @@ -0,0 +1,15 @@ +# NativeWifi + +Wi-Fi driver repository. The repository is a scaffold; its README and driver code are not published yet. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [NativeWifi](https://github.com/UniXNU/NativeWifi) | [UniXNU](https://github.com/UniXNU) | Wi-Fi driver repository. The repository is a scaffold; its README and driver code are not published yet. | + +## State + +No driver code or hardware result is documented. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/overview.md b/docs/drivers/overview.md index f15d1ce..3a3347c 100644 --- a/docs/drivers/overview.md +++ b/docs/drivers/overview.md @@ -62,6 +62,7 @@ Drivers and kits are independent repositories included as submodules. A device r ## Next steps +- [Driver repositories](/drivers/repositories) - [UEFI drivers](/drivers/uefi-drivers) - [XNU drivers](/drivers/xnu-drivers) - [Adreno 740 driver](/drivers/native-adreno) diff --git a/docs/drivers/repositories.md b/docs/drivers/repositories.md new file mode 100644 index 0000000..17bc71c --- /dev/null +++ b/docs/drivers/repositories.md @@ -0,0 +1,73 @@ +# Driver repositories + +Every hardware driver has its own repository. A device repository references the drivers it uses as submodules under `drivers/`. Every driver repository carries the `unixnu` topic. + +## Official drivers + +These repositories are maintained in the UniXNU organization. + +| Driver | Repository | Layer | Page | +| --- | --- | --- | --- | +| NativeAdreno | [UniXNU/NativeAdreno](https://github.com/UniXNU/NativeAdreno) | XNU GPU | [NativeAdreno](/drivers/native-adreno) | +| NativeMetal | [UniXNU/NativeMetal](https://github.com/UniXNU/NativeMetal) | XNU Metal frontend | [NativeMetal](/drivers/native-metal) | +| NativeUfs | [UniXNU/NativeUfs](https://github.com/UniXNU/NativeUfs) | XNU storage | [NativeUfs](/drivers/native-ufs) | +| NativeHidInput | [UniXNU/NativeHidInput](https://github.com/UniXNU/NativeHidInput) | XNU input | [NativeHidInput](/drivers/native-hid-input) | +| NativeRamBlock | [UniXNU/NativeRamBlock](https://github.com/UniXNU/NativeRamBlock) | XNU storage | [NativeRamBlock](/drivers/native-ram-block) | +| NativeMobileDisplay | [UniXNU/NativeMobileDisplay](https://github.com/UniXNU/NativeMobileDisplay) | XNU display | [NativeMobileDisplay](/drivers/native-mobile-display) | +| NativeGeniSpi | [UniXNU/NativeGeniSpi](https://github.com/UniXNU/NativeGeniSpi) | XNU SPI | [NativeGeniSpi](/drivers/native-geni-spi) | +| NativeAES | [UniXNU/NativeAES](https://github.com/UniXNU/NativeAES) | XNU crypto | [NativeAES](/drivers/native-aes) | +| NativeKeyStoreEvents | [UniXNU/NativeKeyStoreEvents](https://github.com/UniXNU/NativeKeyStoreEvents) | XNU keystore | [NativeKeyStoreEvents](/drivers/native-keystore-events) | +| NativeVirtioBlock | [UniXNU/NativeVirtioBlock](https://github.com/UniXNU/NativeVirtioBlock) | XNU storage | [NativeVirtioBlock](/drivers/native-virtio-block) | +| NativeVirtioConsole | [UniXNU/NativeVirtioConsole](https://github.com/UniXNU/NativeVirtioConsole) | XNU console | [NativeVirtioConsole](/drivers/native-virtio-console) | +| NativeNovatekTouch | [UniXNU/NativeNovatekTouch](https://github.com/UniXNU/NativeNovatekTouch) | XNU touch | [NativeNovatekTouch](/drivers/native-novatek-touch) | +| NativePrelink | [UniXNU/NativePrelink](https://github.com/UniXNU/NativePrelink) | Kernel tooling | [NativePrelink](/drivers/native-prelink) | +| NativeWifi | [UniXNU/NativeWifi](https://github.com/UniXNU/NativeWifi) | XNU Wi-Fi | [NativeWifi](/drivers/native-wifi) | +| ArmCpu | [UniXNU/ArmCpu](https://github.com/UniXNU/ArmCpu) | XNU CPU and GIC | [ArmCpu](/drivers/arm-cpu) | +| ArmDTPlatform | [UniXNU/ArmDTPlatform](https://github.com/UniXNU/ArmDTPlatform) | XNU platform expert | [ArmDTPlatform](/drivers/arm-dt-platform) | +| ArmVirtPlatform | [UniXNU/ArmVirtPlatform](https://github.com/UniXNU/ArmVirtPlatform) | XNU platform | [ArmVirtPlatform](/drivers/arm-virt-platform) | +| ArmSmmu4K | [UniXNU/ArmSmmu4K](https://github.com/UniXNU/ArmSmmu4K) | XNU SMMU kit | [ArmSmmu4K](/drivers/arm-smmu4k) | +| AirNir | [UniXNU/AirNir](https://github.com/UniXNU/AirNir) | Compiler kit | [AirNir](/drivers/air-nir) | +| AdrenoPM4 | [UniXNU/AdrenoPM4](https://github.com/UniXNU/AdrenoPM4) | GPU command kit | [AdrenoPM4](/drivers/adreno-pm4) | +| AdrenoFirmware | [UniXNU/AdrenoFirmware](https://github.com/UniXNU/AdrenoFirmware) | GPU firmware kit | [AdrenoFirmware](/drivers/adreno-firmware) | +| DarwinBoot | [UniXNU/DarwinBoot](https://github.com/UniXNU/DarwinBoot) | UEFI loader | [DarwinBoot](/drivers/darwin-boot) | +| VerifiedRoot | [UniXNU/VerifiedRoot](https://github.com/UniXNU/VerifiedRoot) | Root trust tooling | [VerifiedRoot](/drivers/verified-root) | +| ShengPreflight | [UniXNU/ShengPreflight](https://github.com/UniXNU/ShengPreflight) | UEFI preflight | [ShengPreflight](/drivers/sheng-preflight) | + +## Community drivers + +These repositories are maintained by their owners. They are linked from the device repository that uses them. + +| Driver | Device | Repository | Page | +| --- | --- | --- | --- | +| NativeMsdc | Benesse TAB-A04-BR3 (MT8167) | [mouseos/NativeMsdc](https://github.com/mouseos/NativeMsdc) | [NativeMsdc](/drivers/community-native-msdc) | +| NativeAdreno-myron | Redmi K90 Pro Max / Poco F8 Ultra | [zg7681/NativeAdreno-myron](https://github.com/zg7681/NativeAdreno-myron) | [NativeAdreno-myron](/drivers/community-native-adreno-myron) | +| NativeUfs-myron | Redmi K90 Pro Max / Poco F8 Ultra | [zg7681/NativeUfs-myron](https://github.com/zg7681/NativeUfs-myron) | [NativeUfs-myron](/drivers/community-native-ufs-myron) | +| NativeAdreno-fuxi | Xiaomi 13 | [ljhhkx529/NativeAdreno-fuxi](https://github.com/ljhhkx529/NativeAdreno-fuxi) | [NativeAdreno-fuxi](/drivers/community-native-adreno-fuxi) | +| NativeUfs-alioth | Redmi K40 / Poco F3 | [FFT-infra/NativeUfs-alioth](https://github.com/FFT-infra/NativeUfs-alioth) | [NativeUfs-alioth](/drivers/community-native-ufs-alioth) | +| unixnu-nativeufs | Galaxy Tab S7 FE Wi-Fi | [RigoLigoRLC/unixnu-nativeufs](https://github.com/RigoLigoRLC/unixnu-nativeufs) | [unixnu-nativeufs](/drivers/community-unixnu-nativeufs) | +| unixnu-nativemobiledisplay | Galaxy Tab S7 FE Wi-Fi | [RigoLigoRLC/unixnu-nativemobiledisplay](https://github.com/RigoLigoRLC/unixnu-nativemobiledisplay) | [unixnu-nativemobiledisplay](/drivers/community-unixnu-nativemobiledisplay) | +| unixnu-nativeramblock | Galaxy Tab S7 FE Wi-Fi | [RigoLigoRLC/unixnu-nativeramblock](https://github.com/RigoLigoRLC/unixnu-nativeramblock) | [unixnu-nativeramblock](/drivers/community-unixnu-nativeramblock) | + +## Device forks + +These repositories are device forks that track an official driver. They are linked from their device repositories and do not have a separate driver page. + +| Device | Driver | Repository | +| --- | --- | --- | +| Sony Xperia 1 II | NativeAdreno | [chardidathing/NativeAdreno](https://github.com/chardidathing/NativeAdreno) | +| Xiaomi Pad 7 | NativeAdreno, NativeMobileDisplay | [Allenwdk/NativeAdreno](https://github.com/Allenwdk/NativeAdreno), [Allenwdk/NativeMobileDisplay](https://github.com/Allenwdk/NativeMobileDisplay) | +| Nothing Phone (3a) | NativeAdreno, NativeUfs | [rootstockos/NativeAdreno](https://github.com/rootstockos/NativeAdreno), [rootstockos/NativeUfs](https://github.com/rootstockos/NativeUfs) | +| OnePlus 6T | NativeAdreno, NativeMetal | [johnpanos/NativeAdreno](https://github.com/johnpanos/NativeAdreno), [johnpanos/NativeMetal](https://github.com/johnpanos/NativeMetal) | +| Xiaomi 13 Pro | NativeUfs | [pubglite55/NativeUfs](https://github.com/pubglite55/NativeUfs) | +| OnePlus 5 | NativeUfs | [lss717/NativeUfs](https://github.com/lss717/NativeUfs) | +| QEMU virt | NativeAdreno, NativeMetal, NativeMobileDisplay, NativeUfs | [xVanTuring/NativeAdreno](https://github.com/xVanTuring/NativeAdreno), [xVanTuring/NativeMetal](https://github.com/xVanTuring/NativeMetal), [xVanTuring/NativeMobileDisplay](https://github.com/xVanTuring/NativeMobileDisplay), [xVanTuring/NativeUfs](https://github.com/xVanTuring/NativeUfs) | +| Benesse TAB-A04-BR3 | NativeMetal | [mouseos/NativeMetal](https://github.com/mouseos/NativeMetal) | +| Unisoc devices | NativeUfs | [N1709/NativeUfs](https://github.com/N1709/NativeUfs) | + +## Rules + +- One hardware driver per repository. +- `UniXNU-` references each driver as a submodule under `drivers/`. +- A driver for an official device or the generic stack can be contributed to the UniXNU organization. +- Other drivers stay independently maintained and are linked as submodules. +- Every driver repository carries the `unixnu` topic. diff --git a/docs/drivers/sheng-preflight.md b/docs/drivers/sheng-preflight.md new file mode 100644 index 0000000..6064044 --- /dev/null +++ b/docs/drivers/sheng-preflight.md @@ -0,0 +1,15 @@ +# ShengPreflight + +UEFI preflight checks for sheng. Validates the firmware volume, memory map and boot inputs before a build. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [ShengPreflight](https://github.com/UniXNU/ShengPreflight) | [UniXNU](https://github.com/UniXNU) | UEFI preflight checks for sheng. Validates the firmware volume, memory map and boot inputs before a build. | + +## State + +sheng only. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/drivers/verified-root.md b/docs/drivers/verified-root.md new file mode 100644 index 0000000..18f1334 --- /dev/null +++ b/docs/drivers/verified-root.md @@ -0,0 +1,15 @@ +# VerifiedRoot + +Verified root trust tooling. Builds and checks owner-signed root policies. + +| Repository | Maintainer | Scope | +| --- | --- | --- | +| [VerifiedRoot](https://github.com/UniXNU/VerifiedRoot) | [UniXNU](https://github.com/UniXNU) | Verified root trust tooling. Builds and checks owner-signed root policies. | + +## State + +Used by the owner root chain. + +## Build + +Linked into XNU by `unixnu build kernel`, or built by its own script when the repository is a kit or tool. diff --git a/docs/zh/drivers/adreno-firmware.md b/docs/zh/drivers/adreno-firmware.md new file mode 100644 index 0000000..192f138 --- /dev/null +++ b/docs/zh/drivers/adreno-firmware.md @@ -0,0 +1,15 @@ +# AdrenoFirmware + +Adreno GMU 固件和 HFI kit。加载 GMU 固件并使用 HFI 协议。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [AdrenoFirmware](https://github.com/UniXNU/AdrenoFirmware) | [UniXNU](https://github.com/UniXNU) | Adreno GMU 固件和 HFI kit。加载 GMU 固件并使用 HFI 协议。 | + +## 状态 + +NativeAdreno 使用它。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/adreno-pm4.md b/docs/zh/drivers/adreno-pm4.md new file mode 100644 index 0000000..8893ce2 --- /dev/null +++ b/docs/zh/drivers/adreno-pm4.md @@ -0,0 +1,15 @@ +# AdrenoPM4 + +Adreno PM4 数据包编码 kit。构建 NativeAdreno 提交的命令流。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [AdrenoPM4](https://github.com/UniXNU/AdrenoPM4) | [UniXNU](https://github.com/UniXNU) | Adreno PM4 数据包编码 kit。构建 NativeAdreno 提交的命令流。 | + +## 状态 + +NativeAdreno 使用它。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/air-nir.md b/docs/zh/drivers/air-nir.md new file mode 100644 index 0000000..529f961 --- /dev/null +++ b/docs/zh/drivers/air-nir.md @@ -0,0 +1,15 @@ +# AirNir + +离线 AIR 到 NIR 到 IR3 编译器 kit。在没有 GPU 提交的情况下验证 shader 路径。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [AirNir](https://github.com/UniXNU/AirNir) | [UniXNU](https://github.com/UniXNU) | 离线 AIR 到 NIR 到 IR3 编译器 kit。在没有 GPU 提交的情况下验证 shader 路径。 | + +## 状态 + +离线工具。运行时 Metal 路径使用 metal2vulkan 和 Turnip。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/arm-cpu.md b/docs/zh/drivers/arm-cpu.md new file mode 100644 index 0000000..6f45db7 --- /dev/null +++ b/docs/zh/drivers/arm-cpu.md @@ -0,0 +1,15 @@ +# ArmCpu + +ARM64 CPU、GIC 和定时器驱动。发布 CPU、中断控制器和架构定时器。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [ArmCpu](https://github.com/UniXNU/ArmCpu) | [UniXNU](https://github.com/UniXNU) | ARM64 CPU、GIC 和定时器驱动。发布 CPU、中断控制器和架构定时器。 | + +## 状态 + +每个 ARM64 移植使用的通用驱动。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/arm-dt-platform.md b/docs/zh/drivers/arm-dt-platform.md new file mode 100644 index 0000000..e03069c --- /dev/null +++ b/docs/zh/drivers/arm-dt-platform.md @@ -0,0 +1,15 @@ +# ArmDTPlatform + +ARM 设备树平台专家。从 ADT 发布 CPU nub 和每个 `arm-io` 子节点。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [ArmDTPlatform](https://github.com/UniXNU/ArmDTPlatform) | [UniXNU](https://github.com/UniXNU) | ARM 设备树平台专家。从 ADT 发布 CPU nub 和每个 `arm-io` 子节点。 | + +## 状态 + +通用驱动。需要 `/cpus`、`/arm-io`、`/defaults`、`/options` 和 NVRAM proxy。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/arm-smmu4k.md b/docs/zh/drivers/arm-smmu4k.md new file mode 100644 index 0000000..2cc6b59 --- /dev/null +++ b/docs/zh/drivers/arm-smmu4k.md @@ -0,0 +1,15 @@ +# ArmSmmu4K + +ARM SMMUv2 原生 4 KiB 表 kit。构建并编程 stage-1/stage-2 context 表。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [ArmSmmu4K](https://github.com/UniXNU/ArmSmmu4K) | [UniXNU](https://github.com/UniXNU) | ARM SMMUv2 原生 4 KiB 表 kit。构建并编程 stage-1/stage-2 context 表。 | + +## 状态 + +NativeAdreno 和存储驱动使用它。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/arm-virt-platform.md b/docs/zh/drivers/arm-virt-platform.md new file mode 100644 index 0000000..1c7d8b7 --- /dev/null +++ b/docs/zh/drivers/arm-virt-platform.md @@ -0,0 +1,15 @@ +# ArmVirtPlatform + +用于 QEMU 的 ARM 虚拟平台。发布 QEMU virt 平台设备。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [ArmVirtPlatform](https://github.com/UniXNU/ArmVirtPlatform) | [UniXNU](https://github.com/UniXNU) | 用于 QEMU 的 ARM 虚拟平台。发布 QEMU virt 平台设备。 | + +## 状态 + +QEMU 移植使用它。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/community-native-adreno-fuxi.md b/docs/zh/drivers/community-native-adreno-fuxi.md new file mode 100644 index 0000000..55ce997 --- /dev/null +++ b/docs/zh/drivers/community-native-adreno-fuxi.md @@ -0,0 +1,15 @@ +# NativeAdreno-fuxi + +面向小米 13(fuxi,SM8550)的 Adreno 驱动分支。跟随官方驱动。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeAdreno-fuxi](https://github.com/ljhhkx529/NativeAdreno-fuxi) | [ljhhkx529](https://github.com/ljhhkx529) | 面向小米 13(fuxi,SM8550)的 Adreno 驱动分支。跟随官方驱动。 | + +## 状态 + +未记录真机结果。 + +## 维护 + +维护者拥有仓库和发布决定。UniXNU 文档记录驱动及其状态,不接管维护。 diff --git a/docs/zh/drivers/community-native-adreno-myron.md b/docs/zh/drivers/community-native-adreno-myron.md new file mode 100644 index 0000000..0d9e9ba --- /dev/null +++ b/docs/zh/drivers/community-native-adreno-myron.md @@ -0,0 +1,15 @@ +# NativeAdreno-myron + +面向 Redmi K90 Pro Max / Poco F8 Ultra(myron,SM8850)的 Adreno 驱动分支。增加 A8XX 寄存器表、continuation thread 和 user-thread 选择。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeAdreno-myron](https://github.com/zg7681/NativeAdreno-myron) | [zg7681](https://github.com/zg7681) | 面向 Redmi K90 Pro Max / Poco F8 Ultra(myron,SM8850)的 Adreno 驱动分支。增加 A8XX 寄存器表、continuation thread 和 user-thread 选择。 | + +## 状态 + +未记录真机结果。 + +## 维护 + +维护者拥有仓库和发布决定。UniXNU 文档记录驱动及其状态,不接管维护。 diff --git a/docs/zh/drivers/community-native-msdc.md b/docs/zh/drivers/community-native-msdc.md new file mode 100644 index 0000000..a691f51 --- /dev/null +++ b/docs/zh/drivers/community-native-msdc.md @@ -0,0 +1,15 @@ +# NativeMsdc(社区) + +面向 Benesse TAB-A04-BR3 的联发科 MT8167 MSDC eMMC 块驱动。发布根镜像窗口和持久 Data 存储。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeMsdc](https://github.com/mouseos/NativeMsdc) | [mouseos](https://github.com/mouseos) | 面向 Benesse TAB-A04-BR3 的联发科 MT8167 MSDC eMMC 块驱动。发布根镜像窗口和持久 Data 存储。 | + +## 状态 + +可针对 xnu-10063.141.1 头文件编译。寄存器序列已用于早期的 a04br3 XNU 移植;驱动尚未启动。 + +## 维护 + +维护者拥有仓库和发布决定。UniXNU 文档记录驱动及其状态,不接管维护。 diff --git a/docs/zh/drivers/community-native-ufs-alioth.md b/docs/zh/drivers/community-native-ufs-alioth.md new file mode 100644 index 0000000..154d8a7 --- /dev/null +++ b/docs/zh/drivers/community-native-ufs-alioth.md @@ -0,0 +1,15 @@ +# NativeUfs-alioth + +面向 alioth(Redmi K40 / Poco F3 系列)的 UFS 驱动分支。跟随官方控制器和根卷读取路径。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeUfs-alioth](https://github.com/FFT-infra/NativeUfs-alioth) | [FFT-infra](https://github.com/FFT-infra) | 面向 alioth(Redmi K40 / Poco F3 系列)的 UFS 驱动分支。跟随官方控制器和根卷读取路径。 | + +## 状态 + +未记录真机结果。 + +## 维护 + +维护者拥有仓库和发布决定。UniXNU 文档记录驱动及其状态,不接管维护。 diff --git a/docs/zh/drivers/community-native-ufs-myron.md b/docs/zh/drivers/community-native-ufs-myron.md new file mode 100644 index 0000000..8ff2507 --- /dev/null +++ b/docs/zh/drivers/community-native-ufs-myron.md @@ -0,0 +1,15 @@ +# NativeUfs-myron + +面向 myron 的 UFS 驱动分支。跟随官方 NativeUfs 的控制器和根卷读取路径。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeUfs-myron](https://github.com/zg7681/NativeUfs-myron) | [zg7681](https://github.com/zg7681) | 面向 myron 的 UFS 驱动分支。跟随官方 NativeUfs 的控制器和根卷读取路径。 | + +## 状态 + +未记录真机结果。 + +## 维护 + +维护者拥有仓库和发布决定。UniXNU 文档记录驱动及其状态,不接管维护。 diff --git a/docs/zh/drivers/community-unixnu-nativemobiledisplay.md b/docs/zh/drivers/community-unixnu-nativemobiledisplay.md new file mode 100644 index 0000000..7e5dadc --- /dev/null +++ b/docs/zh/drivers/community-unixnu-nativemobiledisplay.md @@ -0,0 +1,15 @@ +# unixnu-nativemobiledisplay + +面向三星 Galaxy Tab S7 FE Wi-Fi(SM-T733)的 CPU 软件显示、framebuffer 复制和呈现。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [unixnu-nativemobiledisplay](https://github.com/RigoLigoRLC/unixnu-nativemobiledisplay) | [RigoLigoRLC](https://github.com/RigoLigoRLC) | 面向三星 Galaxy Tab S7 FE Wi-Fi(SM-T733)的 CPU 软件显示、framebuffer 复制和呈现。 | + +## 状态 + +CPU 和 GPU scanout 路径工作。GOP scanout 没有 vblank 中断;`sheng-vsync` 提供定时器。 + +## 维护 + +维护者拥有仓库和发布决定。UniXNU 文档记录驱动及其状态,不接管维护。 diff --git a/docs/zh/drivers/community-unixnu-nativeramblock.md b/docs/zh/drivers/community-unixnu-nativeramblock.md new file mode 100644 index 0000000..f3f7e21 --- /dev/null +++ b/docs/zh/drivers/community-unixnu-nativeramblock.md @@ -0,0 +1,15 @@ +# unixnu-nativeramblock + +面向三星 Galaxy Tab S7 FE Wi-Fi(SM-T733)的持久 Data 存储和显式复位处理。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [unixnu-nativeramblock](https://github.com/RigoLigoRLC/unixnu-nativeramblock) | [RigoLigoRLC](https://github.com/RigoLigoRLC) | 面向三星 Galaxy Tab S7 FE Wi-Fi(SM-T733)的持久 Data 存储和显式复位处理。 | + +## 状态 + +用于内存 Data 卷和可选的持久 overlay。 + +## 维护 + +维护者拥有仓库和发布决定。UniXNU 文档记录驱动及其状态,不接管维护。 diff --git a/docs/zh/drivers/community-unixnu-nativeufs.md b/docs/zh/drivers/community-unixnu-nativeufs.md new file mode 100644 index 0000000..e7102de --- /dev/null +++ b/docs/zh/drivers/community-unixnu-nativeufs.md @@ -0,0 +1,15 @@ +# unixnu-nativeufs + +面向三星 Galaxy Tab S7 FE Wi-Fi(SM-T733)的 SM7325 UFS、SMMU 和根存储支持。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [unixnu-nativeufs](https://github.com/RigoLigoRLC/unixnu-nativeufs) | [RigoLigoRLC](https://github.com/RigoLigoRLC) | 面向三星 Galaxy Tab S7 FE Wi-Fi(SM-T733)的 SM7325 UFS、SMMU 和根存储支持。 | + +## 状态 + +已实现控制器选择、GCC 诊断和可配置 SMMU 地址。固件到 XNU 的交接仍需真机执行。 + +## 维护 + +维护者拥有仓库和发布决定。UniXNU 文档记录驱动及其状态,不接管维护。 diff --git a/docs/zh/drivers/darwin-boot.md b/docs/zh/drivers/darwin-boot.md new file mode 100644 index 0000000..cb1333f --- /dev/null +++ b/docs/zh/drivers/darwin-boot.md @@ -0,0 +1,15 @@ +# DarwinBoot + +UEFI 启动加载器。安装 loader 协议,把内核、ADT、trust cache 和 ramdisk 交给 XNU。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [DarwinBoot](https://github.com/UniXNU/DarwinBoot) | [UniXNU](https://github.com/UniXNU) | UEFI 启动加载器。安装 loader 协议,把内核、ADT、trust cache 和 ramdisk 交给 XNU。 | + +## 状态 + +不是驱动。每个 XNU 启动路径都使用它。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-aes.md b/docs/zh/drivers/native-aes.md new file mode 100644 index 0000000..52cdc85 --- /dev/null +++ b/docs/zh/drivers/native-aes.md @@ -0,0 +1,15 @@ +# NativeAES + +原生 AES 加速器驱动。把原始加速器类绑定到记录的 XNU ABI。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeAES](https://github.com/UniXNU/NativeAES) | [UniXNU](https://github.com/UniXNU) | 原生 AES 加速器驱动。把原始加速器类绑定到记录的 XNU ABI。 | + +## 状态 + +板级启用对应静态库时链接进 XNU。没有独立真机结果。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-geni-spi.md b/docs/zh/drivers/native-geni-spi.md new file mode 100644 index 0000000..be29991 --- /dev/null +++ b/docs/zh/drivers/native-geni-spi.md @@ -0,0 +1,15 @@ +# NativeGeniSpi + +高通 GENI 串行引擎 SPI 主机,用于触控控制器和其他 SPI 设备。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeGeniSpi](https://github.com/UniXNU/NativeGeniSpi) | [UniXNU](https://github.com/UniXNU) | 高通 GENI 串行引擎 SPI 主机,用于触控控制器和其他 SPI 设备。 | + +## 状态 + +用于 sheng 触控路径。驱动没有独立的真机结果。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-hid-input.md b/docs/zh/drivers/native-hid-input.md new file mode 100644 index 0000000..e6a3483 --- /dev/null +++ b/docs/zh/drivers/native-hid-input.md @@ -0,0 +1,15 @@ +# NativeHidInput + +HID 输入驱动。通过原始 IOHID 栈发布触控和硬件按键。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeHidInput](https://github.com/UniXNU/NativeHidInput) | [UniXNU](https://github.com/UniXNU) | HID 输入驱动。通过原始 IOHID 栈发布触控和硬件按键。 | + +## 状态 + +sheng 和多个设备移植使用它。驱动没有独立的真机结果。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-keystore-events.md b/docs/zh/drivers/native-keystore-events.md new file mode 100644 index 0000000..2db0a88 --- /dev/null +++ b/docs/zh/drivers/native-keystore-events.md @@ -0,0 +1,15 @@ +# NativeKeyStoreEvents + +AppleKeyStore 状态客户端。回答原始用户态发出的 keystore 状态查询。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeKeyStoreEvents](https://github.com/UniXNU/NativeKeyStoreEvents) | [UniXNU](https://github.com/UniXNU) | AppleKeyStore 状态客户端。回答原始用户态发出的 keystore 状态查询。 | + +## 状态 + +虚拟机和设备移植使用它。没有独立真机结果。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-metal.md b/docs/zh/drivers/native-metal.md new file mode 100644 index 0000000..895eb79 --- /dev/null +++ b/docs/zh/drivers/native-metal.md @@ -0,0 +1,15 @@ +# NativeMetal + +Metal API 前端。通过 `MTLAddDevice` 发布 Metal 设备,用 metal2vulkan 翻译 AIR,再经 Turnip 和 NativeAdreno 提交。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeMetal](https://github.com/UniXNU/NativeMetal) | [UniXNU](https://github.com/UniXNU) | Metal API 前端。通过 `MTLAddDevice` 发布 Metal 设备,用 metal2vulkan 翻译 AIR,再经 Turnip 和 NativeAdreno 提交。 | + +## 状态 + +sheng 上 GPU 合成的桌面已运行。首次 shader 编译较慢,没有完整的预编译 UI 包。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-mobile-display.md b/docs/zh/drivers/native-mobile-display.md new file mode 100644 index 0000000..9728ebd --- /dev/null +++ b/docs/zh/drivers/native-mobile-display.md @@ -0,0 +1,15 @@ +# NativeMobileDisplay + +移动显示驱动和 GPU scanout 交接。校验 swap、回收帧并驱动固件 framebuffer。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeMobileDisplay](https://github.com/UniXNU/NativeMobileDisplay) | [UniXNU](https://github.com/UniXNU) | 移动显示驱动和 GPU scanout 交接。校验 swap、回收帧并驱动固件 framebuffer。 | + +## 状态 + +CPU 和 GPU scanout 路径工作。GOP scanout 没有 vblank 中断;`sheng-vsync` 提供定时器。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-prelink.md b/docs/zh/drivers/native-prelink.md new file mode 100644 index 0000000..4c45bb5 --- /dev/null +++ b/docs/zh/drivers/native-prelink.md @@ -0,0 +1,15 @@ +# NativePrelink + +内核预链接发射器和工具。把原生内核绑定到原始 kext,并写出预链接方案。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativePrelink](https://github.com/UniXNU/NativePrelink) | [UniXNU](https://github.com/UniXNU) | 内核预链接发射器和工具。把原生内核绑定到原始 kext,并写出预链接方案。 | + +## 状态 + +每次内核构建使用它。ABI 必须匹配固定的 kernelcache。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-ram-block.md b/docs/zh/drivers/native-ram-block.md new file mode 100644 index 0000000..a1dbc3a --- /dev/null +++ b/docs/zh/drivers/native-ram-block.md @@ -0,0 +1,15 @@ +# NativeRamBlock + +RAM 块存储驱动。从内存提供块设备,并支持可选的持久 Data overlay。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeRamBlock](https://github.com/UniXNU/NativeRamBlock) | [UniXNU](https://github.com/UniXNU) | RAM 块存储驱动。从内存提供块设备,并支持可选的持久 Data overlay。 | + +## 状态 + +用于内存 Data 卷和持久 overlay。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-ufs.md b/docs/zh/drivers/native-ufs.md new file mode 100644 index 0000000..60bdbe7 --- /dev/null +++ b/docs/zh/drivers/native-ufs.md @@ -0,0 +1,15 @@ +# NativeUfs + +原生 UFS 存储驱动。负责主机控制器、SMMU、队列和根卷读取路径。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeUfs](https://github.com/UniXNU/NativeUfs) | [UniXNU](https://github.com/UniXNU) | 原生 UFS 存储驱动。负责主机控制器、SMMU、队列和根卷读取路径。 | + +## 状态 + +原生 UFS 根卷在 sheng 上工作。支持 SM8550 和 SM7325 寄存器路径。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-virtio-block.md b/docs/zh/drivers/native-virtio-block.md new file mode 100644 index 0000000..ff41210 --- /dev/null +++ b/docs/zh/drivers/native-virtio-block.md @@ -0,0 +1,15 @@ +# NativeVirtioBlock + +Virtio 块驱动。向 XNU 发布 virtio 磁盘,可选用 verified root 路径。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeVirtioBlock](https://github.com/UniXNU/NativeVirtioBlock) | [UniXNU](https://github.com/UniXNU) | Virtio 块驱动。向 XNU 发布 virtio 磁盘,可选用 verified root 路径。 | + +## 状态 + +QEMU 和 DroidVM 使用它。QEMU 移植已到 iPadOS 主屏幕。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-virtio-console.md b/docs/zh/drivers/native-virtio-console.md new file mode 100644 index 0000000..6fe42ea --- /dev/null +++ b/docs/zh/drivers/native-virtio-console.md @@ -0,0 +1,15 @@ +# NativeVirtioConsole + +Virtio 控制台传输,用于日志和有界离线仪器。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeVirtioConsole](https://github.com/UniXNU/NativeVirtioConsole) | [UniXNU](https://github.com/UniXNU) | Virtio 控制台传输,用于日志和有界离线仪器。 | + +## 状态 + +QEMU 和虚拟机移植使用它。没有独立真机结果。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/native-wifi.md b/docs/zh/drivers/native-wifi.md new file mode 100644 index 0000000..85e38d5 --- /dev/null +++ b/docs/zh/drivers/native-wifi.md @@ -0,0 +1,15 @@ +# NativeWifi + +Wi-Fi 驱动仓库。仓库仍是脚手架,README 和驱动代码尚未发布。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [NativeWifi](https://github.com/UniXNU/NativeWifi) | [UniXNU](https://github.com/UniXNU) | Wi-Fi 驱动仓库。仓库仍是脚手架,README 和驱动代码尚未发布。 | + +## 状态 + +没有记录驱动代码或真机结果。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/overview.md b/docs/zh/drivers/overview.md index eaca05f..6dd90db 100644 --- a/docs/zh/drivers/overview.md +++ b/docs/zh/drivers/overview.md @@ -62,6 +62,7 @@ OSData *reg = OSDynamicCast(OSData, provider->getProperty("reg")); ## 下一步 +- [驱动仓库](/zh/drivers/repositories) - [UEFI 驱动](/zh/drivers/uefi-drivers) - [XNU 驱动](/zh/drivers/xnu-drivers) - [Adreno 740 驱动](/zh/drivers/native-adreno) diff --git a/docs/zh/drivers/repositories.md b/docs/zh/drivers/repositories.md new file mode 100644 index 0000000..de6c82e --- /dev/null +++ b/docs/zh/drivers/repositories.md @@ -0,0 +1,73 @@ +# 驱动仓库 + +每个硬件驱动单独一个仓库。设备仓库用 `drivers/` 下的子模块引用需要的驱动。每个驱动仓库都带 `unixnu` topic。 + +## 官方驱动 + +这些仓库由 UniXNU 组织维护。 + +| 驱动 | 仓库 | 层 | 页面 | +| --- | --- | --- | --- | +| NativeAdreno | [UniXNU/NativeAdreno](https://github.com/UniXNU/NativeAdreno) | XNU GPU | [NativeAdreno](/zh/drivers/native-adreno) | +| NativeMetal | [UniXNU/NativeMetal](https://github.com/UniXNU/NativeMetal) | XNU Metal 前端 | [NativeMetal](/zh/drivers/native-metal) | +| NativeUfs | [UniXNU/NativeUfs](https://github.com/UniXNU/NativeUfs) | XNU 存储 | [NativeUfs](/zh/drivers/native-ufs) | +| NativeHidInput | [UniXNU/NativeHidInput](https://github.com/UniXNU/NativeHidInput) | XNU 输入 | [NativeHidInput](/zh/drivers/native-hid-input) | +| NativeRamBlock | [UniXNU/NativeRamBlock](https://github.com/UniXNU/NativeRamBlock) | XNU 存储 | [NativeRamBlock](/zh/drivers/native-ram-block) | +| NativeMobileDisplay | [UniXNU/NativeMobileDisplay](https://github.com/UniXNU/NativeMobileDisplay) | XNU 显示 | [NativeMobileDisplay](/zh/drivers/native-mobile-display) | +| NativeGeniSpi | [UniXNU/NativeGeniSpi](https://github.com/UniXNU/NativeGeniSpi) | XNU SPI | [NativeGeniSpi](/zh/drivers/native-geni-spi) | +| NativeAES | [UniXNU/NativeAES](https://github.com/UniXNU/NativeAES) | XNU 加密 | [NativeAES](/zh/drivers/native-aes) | +| NativeKeyStoreEvents | [UniXNU/NativeKeyStoreEvents](https://github.com/UniXNU/NativeKeyStoreEvents) | XNU keystore | [NativeKeyStoreEvents](/zh/drivers/native-keystore-events) | +| NativeVirtioBlock | [UniXNU/NativeVirtioBlock](https://github.com/UniXNU/NativeVirtioBlock) | XNU 存储 | [NativeVirtioBlock](/zh/drivers/native-virtio-block) | +| NativeVirtioConsole | [UniXNU/NativeVirtioConsole](https://github.com/UniXNU/NativeVirtioConsole) | XNU 控制台 | [NativeVirtioConsole](/zh/drivers/native-virtio-console) | +| NativeNovatekTouch | [UniXNU/NativeNovatekTouch](https://github.com/UniXNU/NativeNovatekTouch) | XNU 触控 | [NativeNovatekTouch](/zh/drivers/native-novatek-touch) | +| NativePrelink | [UniXNU/NativePrelink](https://github.com/UniXNU/NativePrelink) | 内核工具 | [NativePrelink](/zh/drivers/native-prelink) | +| NativeWifi | [UniXNU/NativeWifi](https://github.com/UniXNU/NativeWifi) | XNU Wi-Fi | [NativeWifi](/zh/drivers/native-wifi) | +| ArmCpu | [UniXNU/ArmCpu](https://github.com/UniXNU/ArmCpu) | XNU CPU 和 GIC | [ArmCpu](/zh/drivers/arm-cpu) | +| ArmDTPlatform | [UniXNU/ArmDTPlatform](https://github.com/UniXNU/ArmDTPlatform) | XNU 平台专家 | [ArmDTPlatform](/zh/drivers/arm-dt-platform) | +| ArmVirtPlatform | [UniXNU/ArmVirtPlatform](https://github.com/UniXNU/ArmVirtPlatform) | XNU 平台 | [ArmVirtPlatform](/zh/drivers/arm-virt-platform) | +| ArmSmmu4K | [UniXNU/ArmSmmu4K](https://github.com/UniXNU/ArmSmmu4K) | XNU SMMU kit | [ArmSmmu4K](/zh/drivers/arm-smmu4k) | +| AirNir | [UniXNU/AirNir](https://github.com/UniXNU/AirNir) | 编译器 kit | [AirNir](/zh/drivers/air-nir) | +| AdrenoPM4 | [UniXNU/AdrenoPM4](https://github.com/UniXNU/AdrenoPM4) | GPU 命令 kit | [AdrenoPM4](/zh/drivers/adreno-pm4) | +| AdrenoFirmware | [UniXNU/AdrenoFirmware](https://github.com/UniXNU/AdrenoFirmware) | GPU 固件 kit | [AdrenoFirmware](/zh/drivers/adreno-firmware) | +| DarwinBoot | [UniXNU/DarwinBoot](https://github.com/UniXNU/DarwinBoot) | UEFI 加载器 | [DarwinBoot](/zh/drivers/darwin-boot) | +| VerifiedRoot | [UniXNU/VerifiedRoot](https://github.com/UniXNU/VerifiedRoot) | 根信任工具 | [VerifiedRoot](/zh/drivers/verified-root) | +| ShengPreflight | [UniXNU/ShengPreflight](https://github.com/UniXNU/ShengPreflight) | UEFI 预检 | [ShengPreflight](/zh/drivers/sheng-preflight) | + +## 社区驱动 + +这些仓库由各自维护者维护,由使用它的设备仓库链接。 + +| 驱动 | 设备 | 仓库 | 页面 | +| --- | --- | --- | --- | +| NativeMsdc | Benesse TAB-A04-BR3(MT8167) | [mouseos/NativeMsdc](https://github.com/mouseos/NativeMsdc) | [NativeMsdc](/zh/drivers/community-native-msdc) | +| NativeAdreno-myron | Redmi K90 Pro Max / Poco F8 Ultra | [zg7681/NativeAdreno-myron](https://github.com/zg7681/NativeAdreno-myron) | [NativeAdreno-myron](/zh/drivers/community-native-adreno-myron) | +| NativeUfs-myron | Redmi K90 Pro Max / Poco F8 Ultra | [zg7681/NativeUfs-myron](https://github.com/zg7681/NativeUfs-myron) | [NativeUfs-myron](/zh/drivers/community-native-ufs-myron) | +| NativeAdreno-fuxi | 小米 13 | [ljhhkx529/NativeAdreno-fuxi](https://github.com/ljhhkx529/NativeAdreno-fuxi) | [NativeAdreno-fuxi](/zh/drivers/community-native-adreno-fuxi) | +| NativeUfs-alioth | Redmi K40 / Poco F3 | [FFT-infra/NativeUfs-alioth](https://github.com/FFT-infra/NativeUfs-alioth) | [NativeUfs-alioth](/zh/drivers/community-native-ufs-alioth) | +| unixnu-nativeufs | Galaxy Tab S7 FE Wi-Fi | [RigoLigoRLC/unixnu-nativeufs](https://github.com/RigoLigoRLC/unixnu-nativeufs) | [unixnu-nativeufs](/zh/drivers/community-unixnu-nativeufs) | +| unixnu-nativemobiledisplay | Galaxy Tab S7 FE Wi-Fi | [RigoLigoRLC/unixnu-nativemobiledisplay](https://github.com/RigoLigoRLC/unixnu-nativemobiledisplay) | [unixnu-nativemobiledisplay](/zh/drivers/community-unixnu-nativemobiledisplay) | +| unixnu-nativeramblock | Galaxy Tab S7 FE Wi-Fi | [RigoLigoRLC/unixnu-nativeramblock](https://github.com/RigoLigoRLC/unixnu-nativeramblock) | [unixnu-nativeramblock](/zh/drivers/community-unixnu-nativeramblock) | + +## 设备分支 + +这些仓库是跟随官方驱动的设备分支,由对应设备仓库链接,不单独建驱动页。 + +| 设备 | 驱动 | 仓库 | +| --- | --- | --- | +| Sony Xperia 1 II | NativeAdreno | [chardidathing/NativeAdreno](https://github.com/chardidathing/NativeAdreno) | +| 小米平板 7 | NativeAdreno、NativeMobileDisplay | [Allenwdk/NativeAdreno](https://github.com/Allenwdk/NativeAdreno)、[Allenwdk/NativeMobileDisplay](https://github.com/Allenwdk/NativeMobileDisplay) | +| Nothing Phone (3a) | NativeAdreno、NativeUfs | [rootstockos/NativeAdreno](https://github.com/rootstockos/NativeAdreno)、[rootstockos/NativeUfs](https://github.com/rootstockos/NativeUfs) | +| 一加 6T | NativeAdreno、NativeMetal | [johnpanos/NativeAdreno](https://github.com/johnpanos/NativeAdreno)、[johnpanos/NativeMetal](https://github.com/johnpanos/NativeMetal) | +| 小米 13 Pro | NativeUfs | [pubglite55/NativeUfs](https://github.com/pubglite55/NativeUfs) | +| 一加 5 | NativeUfs | [lss717/NativeUfs](https://github.com/lss717/NativeUfs) | +| QEMU virt | NativeAdreno、NativeMetal、NativeMobileDisplay、NativeUfs | [xVanTuring/NativeAdreno](https://github.com/xVanTuring/NativeAdreno)、[xVanTuring/NativeMetal](https://github.com/xVanTuring/NativeMetal)、[xVanTuring/NativeMobileDisplay](https://github.com/xVanTuring/NativeMobileDisplay)、[xVanTuring/NativeUfs](https://github.com/xVanTuring/NativeUfs) | +| Benesse TAB-A04-BR3 | NativeMetal | [mouseos/NativeMetal](https://github.com/mouseos/NativeMetal) | +| Unisoc 设备 | NativeUfs | [N1709/NativeUfs](https://github.com/N1709/NativeUfs) | + +## 规则 + +- 每个硬件驱动单独一个仓库。 +- `UniXNU-` 用 `drivers/` 子模块引用驱动。 +- 官方机型或通用栈的驱动可以贡献到 UniXNU 组织。 +- 其他驱动由维护者独立维护,以子模块链接。 +- 每个驱动仓库都带 `unixnu` topic。 diff --git a/docs/zh/drivers/sheng-preflight.md b/docs/zh/drivers/sheng-preflight.md new file mode 100644 index 0000000..462ed5a --- /dev/null +++ b/docs/zh/drivers/sheng-preflight.md @@ -0,0 +1,15 @@ +# ShengPreflight + +sheng 的 UEFI 预检。构建前校验固件卷、内存图和启动输入。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [ShengPreflight](https://github.com/UniXNU/ShengPreflight) | [UniXNU](https://github.com/UniXNU) | sheng 的 UEFI 预检。构建前校验固件卷、内存图和启动输入。 | + +## 状态 + +仅用于 sheng。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。 diff --git a/docs/zh/drivers/verified-root.md b/docs/zh/drivers/verified-root.md new file mode 100644 index 0000000..bce1e15 --- /dev/null +++ b/docs/zh/drivers/verified-root.md @@ -0,0 +1,15 @@ +# VerifiedRoot + +Verified root 信任工具。构建并检查 owner 签名的根策略。 + +| 仓库 | 维护者 | 范围 | +| --- | --- | --- | +| [VerifiedRoot](https://github.com/UniXNU/VerifiedRoot) | [UniXNU](https://github.com/UniXNU) | Verified root 信任工具。构建并检查 owner 签名的根策略。 | + +## 状态 + +owner 根链使用它。 + +## 构建 + +通过 `unixnu build kernel` 链接进 XNU;kit 或工具仓库用自己的脚本构建。