ดาวน์โหลดสถาปัตยกรรมส่วนประกอบ ACPI (รุ่นก่อนหน้า 2013)

774555
3/27/2023

บทนำ

เพิ่มการตรวจสอบตารางราก XSDT หากมี แพลตฟอร์มเก่าบางตัวมี XSDT ที่ไม่เป็นรูปแบบที่ไม่ถูกต้องหรือไม่ถูกต้อง (เช่น มีบางรายการหรือทั้งหมดที่เป็นตัวชี้ NULL)

การดาวน์โหลดที่พร้อมให้บริการ

  • Unix*
  • ขนาด: 1.3 MB
  • SHA1: C92345E921355E9D8D732387AA1EFE37DB5B1AA9
  • Unix*
  • ขนาด: 1.2 MB
  • SHA1: 4C9F421C4F1744F047E036A3579CEB5F8D952146
  • Microsoft Windows*
  • ขนาด: 1.3 MB
  • SHA1: 1ED0A06EB278EC38E1C81FB119C3D20C1BF3C31B
  • Microsoft Windows*
  • ขนาด: 2.2 MB
  • SHA1: 4B6EF4914CEAFF39BC68351A2DE923A5E451055E
  • Unix*
  • ขนาด: 1.9 MB
  • SHA1: 22DFE60E668A7860AC7B637E1AC87C22504F30C6
  • Microsoft Windows*
  • ขนาด: 3.4 MB
  • SHA1: FF8B64BF4F8E258AC38A165AC6990F96D8A139DC

คำอธิบายโดยละเอียด

18 ธันวาคม 2013 สรุปการเปลี่ยนแปลงสําหรับเวอร์ชัน 20131218:

รุ่นนี้พร้อมให้บริการที่ https://acpica.org/downloads

หมายเหตุทั่วโลก: ข้อมูลจําเพาะของ ACPI 5.0A ได้เปิดตัวในเดือนนี้ ไม่มีการเปลี่ยนแปลงที่จําเป็นสําหรับ ACPICA เนื่องจาก ACPI รุ่นนี้เป็นรีลีส errata/clarification

1) ระบบย่อยของเคอร์เนล-ที่มีใน ACPICA:

เพิ่มการตรวจสอบตารางราก XSDT หากมี แพลตฟอร์มเก่าบางตัวมี XSDT ที่ไม่เป็นรูปแบบที่ไม่ถูกต้องหรือไม่ถูกต้อง (เช่น มีบางรายการหรือทั้งหมดที่เป็นตัวชี้ NULL) การเปลี่ยนแปลงนี้จะเพิ่มฟังก์ชันใหม่เพื่อตรวจสอบ XSDT ก่อนที่จะใช้งานจริง หากพบว่า XSDT ไม่ถูกต้อง ACPICA จะย้อนกลับไปใช้ RSDT แทนโดยอัตโนมัติ การปรับใช้ดั้งเดิมโดย Zhao Yakui พอร์ตไปยัง ACPICA และปรับปรุงโดย Lv Zheng และ Bob Moore

เพิ่มตัวเลือกรันไทม์เพื่อละเว้น XSDT และบังคับใช้ RSDT การเปลี่ยนแปลงนี้จะเพิ่มตัวเลือกรันไทม์ที่จะบังคับให้ ACPICA ใช้ RSDT แทน XSDT (AcpiGbl_DoNotUseXsdt) แม้ว่าข้อมูลจําเพาะของ ACPI จะต้องใช้ XSDT แทน RSDT แต่พบว่า XSDT เกิดความเสียหายหรือเกิดความเสียหายในบางเครื่อง Lv Zheng

เพิ่มตัวเลือกรันไทม์เพื่อเพิ่มที่อยู่การลงทะเบียน FADT 32 บิตผ่านที่อยู่ 64 บิต การเปลี่ยนแปลงนี้จะเพิ่มตัวเลือกในการปรับปรุงที่อยู่ FADT 32 บิตเมื่อมีข้อขัดแย้งกันระหว่างการลงทะเบียนเดียวกันเวอร์ชัน 32 บิตและ 64 บิต รูปแบบการทํางานตั้งต้นคือการใช้เวอร์ชั่น 64 บิตตามข้อมูลจําเพาะของ ACPI ซึ่งสามารถแทนที่ได้ผ่านทางแฟลก AcpiGbl_Use32BitFadtAddresses ACPICA BZ 885 Lv Zheng

ในระหว่างการเปลี่ยนแปลงข้างต้น มีการผสานรวมฟังก์ชัน "Convert FADT" และ "Verify FADT" ภายในเพื่อลดความซับซ้อนของโค้ด เพื่อช่วยให้เข้าใจและบํารุงรักษาได้ง่ายขึ้น ACPICA BZ 933

ปรับปรุงการรายงานและการจัดการข้อยกเว้นสําหรับการติดตั้ง GPE Block ส่งคืนสถานะจริงจาก AcpiEvGetGpeXruptBlock และอย่าโคลนสถานะเมื่อออกจาก AcpiEvInstallGpeBlock ACPICA BZ 1019

เพิ่มมาโครตัวช่วยเหลือเพื่อดึงหมายเลขบัส/เซกเมนต์จากตาราง HEST การเปลี่ยนแปลงนี้จะเพิ่มมาโครสองตัวเพื่อแยกหมายเลขบัสที่เข้ารหัสและหมายเลขเซกเมนต์จากฟิลด์ HEST Bus - ACPI_HEST_BUS และ ACPI_HEST_SEGMENT เบ็ตตี ดัล

ลบมาโคร ACPI_FREE_BUFFER ที่ไม่ได้ใช้ ACPICA ไม่ได้ใช้มาโครนี้อีกต่อไป ไม่ใช่มาโครสาธารณะ ดังนั้นจึงไม่มีผลกระทบต่อโค้ด OSV ที่มีอยู่ Lv Zheng

ตัวอย่างรหัสและขนาดข้อมูล: นี่เป็นขนาดสําหรับ acpica.lib ที่ไม่ขึ้นกับระบบปฏิบัติการที่ผลิตโดยคอมไพเลอร์ Microsoft Visual C++ 9.0 32 บิต เวอร์ชันดีบักของรหัสรวมถึงกลไกการติดตามเอาต์พุตดีบักและมีรหัสและขนาดข้อมูลที่ใหญ่กว่ามาก

รีลีสปัจจุบัน:
เวอร์ชันที่ไม่ใช่ดีบัก: รหัส 96.1K, ข้อมูล 27.0K, 123.1K ทั้งหมด
เวอร์ชันดีบัก: รหัส 185.6K, ข้อมูล 77.3K, 262.9K ทั้งหมด
รุ่นก่อนหน้า:
เวอร์ชันที่ไม่ใช่ดีบัก: รหัส 95.9K, ข้อมูล 27.0K, 122.9K ทั้งหมด
เวอร์ชันดีบัก: รหัส 185.1K, ข้อมูล 77.2K, 262.3K ทั้งหมด

2) iASL Compiler/Disassembler และเครื่องมือ:

Disassembler: รองรับชื่อพาธที่ดีขึ้นสําหรับรายงานภายนอก() ที่ส่ง การเปลี่ยนแปลงนี้จะเพิ่มการรองรับชื่อพาธแบบเต็มสําหรับชื่อภายนอกที่ได้รับการแก้ไขภายในโดยการรวมตาราง ACPI เพิ่มเติม (ผ่านตัวเลือก iASL -e) หากไม่มีการเปลี่ยนแปลงนี้ Disassembler สามารถส่งข้อมูลภายนอกหลายตัวไปยังวัตถุเดียวกันหรือสับสนเมื่อใช้ตัวดําเนินการ Scope() กับวัตถุภายนอก โดยรวมแล้ว ช่วยเพิ่มความสามารถในการคอมไพล์โค้ด ASL ที่ส่งออกมาจริงอีกครั้งเมื่อวัตถุที่อ้างอิงผ่านตาราง ACPI หลายตาราง รายงานโดย Michael Tsirkin (mst@redhat.com(ลิงก์ส่งอีเมล))

การทดสอบ/ASLTS: ชุดการควบคุมฟังก์ชันที่อัปเดตเพื่อดําเนินการโดยไม่มีข้อผิดพลาด David Box แก้ไขข้อผิดพลาดหลายอย่างที่เกี่ยวข้องกับการทดสอบโหมดสแลคล่าม Lv Zheng

iASL: การสนับสนุนเพิ่มเติมเพื่อตรวจหาชื่อที่ถูกประกาศภายในวิธีการควบคุม แต่ไม่ได้ใช้ (นี่เป็นชื่อชั่วคราวที่ถูกต้องเฉพาะในช่วงเวลาที่วิธีการดําเนินการเท่านั้น) มีการออกหมายเหตุสําหรับกรณีเหล่านี้ ACPICA BZ 1022

iASL: เพิ่มการสนับสนุนเต็มรูปแบบสําหรับตาราง DBG2 เพิ่มการรองรับ Disassembler, คอมไพเลอร์ตาราง และตัวสร้างเทมเพลตเต็มรูปแบบสําหรับตาราง DBG2 (ตาราง Debug Port 2)

iASL: เพิ่มการสนับสนุนเต็มรูปแบบสําหรับตาราง PCCT อัปเดตคํานิยามตาราง อัปเดตคํานิยามตาราง PCCT ในส่วนหัว actbl3.h และเพิ่มการสนับสนุนคอมไพเลอร์ตารางและตัวสร้างเทมเพลต

iASL: เพิ่มตัวเลือกในการส่งเฉพาะข้อความแสดงข้อผิดพลาด (ไม่มีคําเตือน/หมายเหตุ) ตัวเลือก -ve จะเปิดใช้งานเฉพาะข้อความแสดงข้อผิดพลาด คําเตือน และหมายเหตุเท่านั้นที่ถูกระงับ ซึ่งช่วยให้การดีบักง่ายขึ้นเมื่อข้อผิดพลาดมีความสําคัญเท่านั้น เช่น เมื่อตาราง ACPI ถูกถอดประกอบและมีคําเตือนและหมายเหตุมากมาย แต่มีข้อผิดพลาดจริงเท่านั้นที่มีความสําคัญอย่างแท้จริง

ตัวอย่างโค้ด ACPICA (source/tools/examples): อัปเดตโค้ดตัวอย่างเพื่อให้โปรแกรมสร้างขึ้นมายังโปรแกรมที่ทํางานได้จริง ไม่ใช่เพียงแค่โค้ดตัวอย่างเท่านั้น เพิ่มตาราง ACPI และการดําเนินการของวิธีการควบคุมตัวอย่างใน DSDT เพิ่มการสนับสนุน makefile สําหรับเจนเนอเรชั่น Unix

วัน:
18 ธันวาคม 2013

เนื้อหาในหน้านี้เป็นการผสมผสานระหว่างการแปลเนื้อหาต้นฉบับภาษาอังกฤษโดยมนุษย์และคอมพิวเตอร์ เนื้อหานี้จัดทำขึ้นเพื่อความสะดวกของคุณและเพื่อเป็นข้อมูลทั่วไปเท่านั้นและไม่ควรอ้างอิงว่าสมบูรณ์หรือถูกต้อง หากมีความขัดแย้งใด ๆ ระหว่างเวอร์ชันภาษาอังกฤษของหน้านี้กับคำแปล เวอร์ชันภาษาอังกฤษจะมีผลเหนือกว่าและควบคุม ดูเวอร์ชันภาษาอังกฤษของหน้านี้