MTL IoT FSP does not set up DPR

Đang mở
#116 6 bình luận 5 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
38/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
c
Lĩnh vực
embedded-iot

Hướng nghiên cứu

Bắt đầu với các tham số FSP_M_CONFIG và FSP_S_CONFIG trong báo cáo, sau đó so sánh MTL IoT FSP 4122_56 với hành vi của ADL FSP và kiểm tra DPR của coreboot. Xác định đường dẫn triển khai và xác thực, đồng thời coi issue là hoàn tất khi FSP lập trình base TSEG và kích thước DPR trước khi khóa chúng, để quá trình khởi tạo Intel TXT không còn báo cáo rằng cơ chế bảo vệ DPR đang không hoạt động.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

The MTL IoT FSP 4122_56 does not program the host bridge DPR register. When attempting to initialize Intel TXT with the aforementioned FSP, the DPR check in coreboot yields an error that DPR is not programmed:

[DEBUG]  TEE-TXT: MCH DPR 0x00000001
[DEBUG]  TEE-TXT: MCH DPR base @ 0x00000000 size 0 MiB
[ERROR]  TEE-TXT: MCH DPR protection not active.

Parameters passed to FSP:

FSP_M_CONFIG->VmxEnable = 1;
FSP_M_CONFIG->TxtImplemented = 1;
FSP_M_CONFIG->Txt = 1;
FSP_M_CONFIG->SinitMemorySize = 0x50000;
FSP_M_CONFIG->TxtHeapMemorySize = 0xf0000;
FSP_M_CONFIG->TxtDprMemorySize = 4 << 20;
FSP_M_CONFIG->TxtDprMemoryBase = 1;
FSP_M_CONFIG->BiosAcmBase = acm_base; // 256K aligned address of S-ACM in CBFS
FSP_M_CONFIG->BiosAcmSize = acm_size;
FSP_M_CONFIG->ApStartupBase = 1;
FSP_S_CONFIG->TxtEnable = 1;

Older versions of the FSP also do not program DPR. It is simply being locked without programming the TSEG base and DPR size into it. For comparison ADL FSP did program DPR correctly. Currently it is impossible to initialize Intel TXT properly without making workarounds in host firmware that will program DPR before FSP MemoryInit with last known good TSEG base and requested DPR size, assuming that configuration does not change.

Ngôn ngữ chính
C
Star
366
Fork
143
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của intel/FSP

Tất cả issue của intel/FSP

Issue tương tự

Thêm issue về C

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.