.. _pi_uefi_acpi:
==================
树莓派UEFI+ACPI
==================
我在 :ref:`edge_cloud` 上部署 :ref:`alpine_linux` , :ref:`pi_acpid_crashed` 发现,常规树莓派firmware并没有支持ACPI,无法实现ARM的Server Base Boot Requirement (SBBR)规范:
- 由于系统没有 ``/dev/input/event0`` 设备而导致 ``acpid`` 服务 ``crashed`` 。
- 缺少 ``/sys/class/backlight/`` 设备目录及控制文件,无法通过 ``ACPI`` 接口调整 :ref:`linux_backlight`
ARM SBSA和SBBR
=================
随着ARM进入服务器市场,ARM需要实现不需要修改或hack系统就能够启动标准操作系统,就像x86服务器上启动操作系统一样。所以,在2014年,ARM公司发布了 `Server Base System Architecture (SBSA) `_ 规范来帮助所有单一操作系统镜像(single OS image)能够运行在所有ARMv8-A服务器上。
随后,ARM发布了服务器基础启动要求(Server Base Boot Requirement, `SBBR `_ )规格来描述服务器的标准firmware接口,包括了 UEFI, ACPI 和 SMBIOS 工业标准,并且在 2018 年引入了ARM服务器的ARM服务器就绪认证程序( `Arm Serverready compliance program `_ )。
树莓派UEFI firmware
====================
上述规范都是面向ARM服务器,现在开发者也在实现将SBBR兼容引入ARM个人电脑,并且有一个 `Making Pi ServerReady `_ 项目专注于 :ref:`pi_4` SBBR-compliant (UEFI+ACPI) AArch64 firmware 开发,为树莓派进入服务器领域提供支持。
这个树莓派UEFI firmware是从 `64位 Tiano Core UEFI firmware `_ port到 :ref:`pi_4` 的,目前持续活跃开发。不过,需要注意, :ref:`pi_4` UEFI firmware依然是试验行的,所以有可能还存在bug
:ref:`pi_3` 也有对应的 `64-bit Tiano Core UEFI firmware for the Raspberry Pi 3B `_ 。`
.. note::
`Alternate Guide – Running Windows 10 on the Pi 4 `_ 介绍了在UEFI模式下树莓派可以用来安装Windows 10 ARM版本,详细的操作可以参考:
- `How to Install Windows 10 on Raspberry Pi 4 [Full Guide] [Clone Disk] `_
- `How to Install Windows 10 on a Raspberry Pi 4 `_
参考
=====
- `Raspberry Pi 4 UEFI+ACPI Firmware Aims to Make the Board SBBR-Compliant `_
- `Making Pi ServerReady `_