Yêu cầu về nhân lõi

Android 8.0 trở lên bắt buộc phải có phiên bản hạt nhân và cấu hình hạt nhân tối thiểu, được xác minh bằng Bộ kiểm tra nhà cung cấp (VTS) và các bản cập nhật qua mạng (OTA). Nhân thiết bị Android phải kích hoạt hỗ trợ kernel .config và tùy chọn đọc cấu hình kernel khi chạy thông qua hệ thống tệp procfs .

Hỗ trợ hạt nhân .config

Tất cả các hạt nhân của thiết bị phải kích hoạt toàn bộ android-base.cfg , phải bao gồm các tùy chọn kernel-config sau (hoặc phiên bản kernel tương đương của chúng):

CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y

Phiên bản hạt nhân

Đối với Android 9, yêu cầu phiên bản kernel Hỗ trợ dài hạn (LTS) tối thiểu là 4.4.107, 4.9.84 và 4.14.42.

  • Tất cả các SoC được sản xuất vào năm 2018 phải khởi chạy với kernel 4.9.84 trở lên.
  • Tất cả các SoC khác chạy thiết bị Android chạy Android 9 đều phải sử dụng kernel 4.4.107 trở lên.
  • Nhân thiết bị dựa trên 4.14 phải bao gồm bản phát hành LTS 4.14.42 trở lên.
  • Bất kể ngày ra mắt, tất cả các SoC có thiết bị khởi chạy trên Android 8.0 trở lên vẫn phải tuân theo những thay đổi về kernel cần thiết để bật Treble.
  • Các thiết bị Android cũ hơn nâng cấp lên Android 8.0 trở lên có thể tiếp tục sử dụng phiên bản kernel cơ sở ban đầu của chúng.

Để biết chi tiết về hạt nhân LTS, hãy xem Hạt nhân ổn định lâu dàiHạt nhân phổ biến của Android

Hỗ trợ thiết bị

Nếu nền tảng không hỗ trợ đặc tả Cấu hình nâng cao và Giao diện nguồn (ACPI) , hỗ trợ cây thiết bị trong hạt nhân phải được bật và bộ tải khởi động phải chuyển mô tả phần cứng dưới dạng cây thiết bị tới hạt nhân. Cây thiết bị cũng phải có sẵn để Android đọc và nó phải có khả năng chuyển các tham số dành riêng cho nhà cung cấp và ODM cho Android. CONFIG_OF là bắt buộc, cùng với tất cả các tùy chọn cấu hình kernel CONFIG_OF_* dành riêng cho thiết bị và hệ thống con cụ thể khác.

Sử dụng DebugFS

Việc triển khai giao diện nhà cung cấp không thể dựa vào hệ thống tệp DebugFS để truy cập thông tin gỡ lỗi. Đó là vì trong Android 7.0–10, DebugFS có thể được bật nhưng việc kiểm tra VTS có thể được thực hiện khi chưa ngắt kết nối DebugFS .

Trong Android 11, DebugFS không thể truy cập hoặc gắn trên các thiết bị sản xuất nên nhà sản xuất thiết bị phải loại bỏ nó. Trước Android 11, số liệu thống kê về chất kết dính đã truy cập dumpstate từ DebugFS . Vì các bản dựng của người dùng khởi chạy bằng Android 11 trở lên không thể truy cập DebugFS , nên dumpstate truy cập số liệu thống kê về chất liên kết từ binderfs . Để bật Binderfs , hãy bật cấu hình kernel CONFIG_ANDROID_BINDERFS .

Trong Android 11, VTS thực thi hai yêu cầu sau:

  • CONFIG_DEBUG_FS chưa được bật trong cấu hình kernel của thiết bị.
  • DebugFS không được liệt kê trong /proc/filesystems .

Gỡ lỗiFS trong Android 11

Bảng sau đây mô tả cách hỗ trợ từng danh mục trong số ba danh mục này trong Android 11. Lưu ý rằng nội dung sau chỉ áp dụng cho các bản dựng userdebug vì không thể gắn DebugFS trong các bản dựng người dùng. Không bao giờ gắn DebugFS vào bản dựng của người dùng đối với các thiết bị khởi chạy trên Android 11.

Trường hợp sử dụng Bản dựng gỡ lỗi người dùng Android 11
Khởi tạo tệp DebugFS một lần, trong khi khởi động . Quyền truy cập này chỉ xảy ra một lần trong thời gian khởi động. Nhà cung cấp init thực hiện việc này.
Tạo báo cáo lỗi : HAL dumpstate đọc các tệp DebugFS , tệp này trở thành một phần của báo cáo lỗi. Được thực hiện bởi dumpstate HAL trong DumpstateBoard() khi được gọi bằng công cụ dumpstate.
Kiểm tra và xác nhận dành riêng cho thiết bị Adb gốc và vỏ