struktur PNP_SERIAL_BUS_DESCRIPTOR (reshub.h)

Struktur PNP_SERIAL_BUS_DESCRIPTOR menjelaskan koneksi fisik perangkat target ke bus serial (I2C, SPI, atau UART).

Sintaks

typedef struct _PNP_SERIAL_BUS_DESCRIPTOR {
  UCHAR  Tag;
  USHORT Length;
  UCHAR  RevisionId;
  UCHAR  ResourceSourceIndex;
  UCHAR  SerialBusType;
  UCHAR  GeneralFlags;
  USHORT TypeSpecificFlags;
  UCHAR  TypeSpecificRevisionId;
  USHORT TypeDataLength;
} PNP_SERIAL_BUS_DESCRIPTOR, *PPNP_SERIAL_BUS_DESCRIPTOR;

Anggota

Tag

Jenis bus serial. Anggota ini diatur ke 0x8e untuk koneksi bus serial (I2C, SPI, atau UART). Untuk informasi selengkapnya, lihat deskripsi pendeskripsi koneksi bus serial dalam spesifikasi ACPI 5.0.

Length

Panjang, dalam byte, dari pendeskripsi koneksi bus serial. Agar konsisten dengan spesifikasi ACPI 5.0, jumlah byte dalam anggota Panjang struktur PNP_SERIAL_BUS_DESCRIPTOR sama dengan ukuran struktur, dikurangi tiga byte dalam anggota Tag dan Panjang di awal struktur, ditambah jumlah byte data khusus jenis bus dan string Sumber Daya yang mengikuti struktur. String Sumber Daya, yang merupakan bidang wajib, memiliki ukuran minimum dua byte (untuk nama Sumber Daya satu karakter dan null yang mengakhiri). Dengan demikian, nilai Panjang minimum yang valid adalah 11. Untuk informasi selengkapnya, lihat spesifikasi ACPI 5.0.

RevisionId

ID revisi pendeskripsi koneksi bus serial. Anggota ini diatur ke konstanta SERIAL_BUS_DESCRIPTOR_REVISION, yang didefinisikan dalam file header Reshub.h.

ResourceSourceIndex

Disiapkan untuk penggunaan masa mendatang. Anggota ini tidak digunakan dan diatur ke nol.

SerialBusType

Jenis bus serial. Anggota ini diatur ke 1 (untuk I2C), 2 (untuk SPI), atau 3 (untuk UART). Nilai lain dicadangkan untuk digunakan di masa mendatang, atau didefinisikan oleh vendor perangkat keras. Untuk informasi selengkapnya, lihat spesifikasi ACPI 5.0.

GeneralFlags

Bendera yang umum untuk semua jenis bus serial. Bit 0 adalah bendera mode bawahan. Jika bit ini diatur ke 1, komunikasi koneksi ini dimulai oleh pengontrol bus; jika tidak, komunikasi dimulai oleh perangkat target. Bit 1 adalah bendera konsumen/produsen, dan selalu diatur ke 1. Tidak ada bit bendera lain yang saat ini ditentukan. Untuk informasi selengkapnya, lihat spesifikasi ACPI 5.0.

TypeSpecificFlags

Bendera yang khusus untuk jenis bus serial. Untuk bus I2C, bit 0 diatur jika koneksi menggunakan alamat 10-bit; jika tidak, koneksi menggunakan alamat 7-bit. Tidak ada bit bendera lain yang saat ini ditentukan untuk I2C. Untuk informasi selengkapnya, lihat spesifikasi ACPI 5.0.

TypeSpecificRevisionId

ID revisi varian struktur ini yang digunakan untuk jenis bus serial (I2C, SPI, dan UART) yang ditentukan oleh anggota Tag . Setiap jenis bus serial memperluas struktur PNP_SERIAL_BUS_DESCRIPTOR dengan menambahkan bidang yang khusus untuk jenis bus. Untuk informasi selengkapnya, lihat spesifikasi ACPI 5.0.

TypeDataLength

Panjang, dalam byte, dari data khusus jenis bus yang mengikuti struktur PNP_SERIAL_BUS_DESCRIPTOR . Nilai panjang ini mencakup data antara akhir anggota TypeDataLength dan awal string Sumber Daya, tetapi tidak menyertakan string Sumber Daya. Untuk informasi selengkapnya, lihat spesifikasi ACPI 5.0.

Keterangan

Struktur ini mendefinisikan bidang data dalam deskriptor koneksi bus serial, seperti yang dijelaskan dalam bagian 6.4.3.8.2 dari spesifikasi ACPI 5.0. Deskriptor ini menjelaskan koneksi bus ke perangkat target yang terhubung ke bus serial (I2C, SPI, atau UART).

Misalnya, untuk perangkat pada bus I2C, struktur PNP_SERIAL_BUS_DESCRIPTOR (dan ekstensi khusus jenis busnya) menentukan alamat bus perangkat, mode alamat (7-bit atau 10-bit), dan frekuensi untuk menjalankan jam bus saat perangkat diakses. Untuk contoh kode yang menunjukkan bagaimana driver pengontrol I2C mengekstrak informasi ini dari struktur, lihat Cara Mendapatkan Pengaturan Koneksi untuk Perangkat.

Definisi struktur PNP_SERIAL_BUS_DESCRIPTOR dalam file header Reshub.h didahului oleh pernyataan sertakan untuk file header Pshpack1.h, yang mengonfigurasi pengkompilasi untuk mengemas anggota struktur yang berdekatan dengan batas byte, tanpa mengintervensi celah. Perangkat lunak kemudian dapat melapisi struktur yang dikemas di atas gambar memori pendeskripsi koneksi bus serial untuk mengakses bidang individual deskriptor ini. Anggota USHORT struktur mungkin tidak selaras dengan bahkan batas byte dalam memori. Byte dalam anggota USHORT disimpan dalam urutan little-endian untuk arsitektur prosesor x86, x64, dan ARM.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung dimulai dengan Windows 8.
Header reshub.h