Bagikan melalui


Menyiapkan penelusuran kesalahan mode kernel melalui kabel USB 3.0

Alat Debugging untuk Windows mendukung penelusuran kesalahan mode kernel melalui kabel USB 3.0. Artikel ini menjelaskan cara menyiapkan penelusuran kesalahan USB 3.0 secara manual.

Komputer yang menjalankan debugger disebut komputer host, dan komputer yang sedang di-debug disebut komputer target.

Penelusuran kesalahan melalui kabel USB 3.0 memerlukan perangkat keras berikut:

  • Kabel debug USB 3.0, yang merupakan kabel crossover A-A yang memiliki dua colokan tipe-A pria dan tanpa koneksi Vbus
  • Pada komputer host, pengontrol host xHCI (USB 3.0)
  • Pada komputer target, pengontrol host xHCI (USB 3.0) yang mendukung penelusuran kesalahan

Untuk menyederhanakan pemecahan masalah, sambungkan kabel langsung antara target dan komputer host, hindari hub atau stasiun docking apa pun.

Menyiapkan komputer target

  1. Pada komputer target, luncurkan alat UsbView . Alat UsbView disertakan dalam Alat Debugging untuk Windows.

  2. Di UsbView, temukan semua pengontrol host xHCI.

  3. Di UsbView, perluas simpul pengontrol host xHCI. Cari indikasi bahwa port pada pengontrol host mendukung penelusuran kesalahan.

    [Port1]
    
    Is Port User Connectable:         yes
    Is Port Debug Capable:            yes
    Companion Port Number:            3
    Companion Hub Symbolic Link Name: USB#ROOT_HUB30#5&32bab638&0&0#{...}
    Protocols Supported:
     USB 1.1:                         no
     USB 2.0:                         no
     USB 3.0:                         yes
    
  4. Catat nomor bus, perangkat, dan fungsi untuk pengontrol xHCI yang ingin Anda gunakan untuk penelusuran kesalahan. UsbView menampilkan angka-angka ini. Dalam contoh berikut, nomor bus adalah 48, nomor perangkat adalah 0, dan nomor fungsi adalah 0.

    USB xHCI Compliant Host Controller
    ...
    DriverKey: {36fc9e60-c465-11cf-8056-444553540000}\0020
    ...
    Bus.Device.Function (in decimal): 48.0.0
    
  5. Setelah Anda mengidentifikasi pengontrol xHCI yang mendukung penelusuran kesalahan, langkah selanjutnya adalah menemukan konektor USB fisik yang terkait dengan port pada pengontrol xHCI. Untuk menemukan konektor fisik, colokkan perangkat USB 3.0 apa pun ke konektor USB apa pun di komputer target. Refresh UsbView untuk melihat lokasi perangkat Anda. Jika UsbView menunjukkan perangkat Anda terhubung ke pengontrol host xHCI pilihan Anda, maka Anda telah menemukan konektor USB fisik yang dapat Anda gunakan untuk penelusuran kesalahan USB 3.0.

Penting

Sebelum menggunakan bcdedit untuk mengubah informasi boot, Anda mungkin perlu menangguhkan sementara fitur keamanan Windows seperti BitLocker dan Boot Aman pada PC pengujian. Aktifkan kembali fitur keamanan ini saat pengujian selesai dan kelola PC pengujian dengan tepat saat fitur keamanan dinonaktifkan.

  1. Pada komputer target, buka jendela Wantian Perintah sebagai Administrator, dan masukkan perintah ini:

    bcdedit /debug on
    bcdedit /dbgsettings usb targetname:<TargetName>
    

    TargetName adalah nama yang Anda buat untuk komputer target. Perhatikan bahwa TargetName tidak harus menjadi nama resmi komputer target; dapat berupa string apa pun yang Anda buat selama memenuhi batasan ini:

    • String tidak boleh berisi "debug" di mana pun di TargetName dalam kombinasi huruf besar atau kecil apa pun. Misalnya jika Anda menggunakan "DeBuG" atau "DEBUG" di mana saja di nama target Anda, penelusuran kesalahan tidak berfungsi dengan benar.
    • Satu-satunya karakter dalam string adalah tanda hubung (-), garis bawah(_), digit 0 hingga 9, dan huruf A hingga Z (huruf besar atau kecil).
    • Panjang maksimum string adalah 24 karakter.
  2. Di Manajer Perangkat, temukan Pengontrol USB yang ingin Anda gunakan untuk penelusuran kesalahan. Di bawah Lokasi pada tab Umum , bus, perangkat, dan nomor fungsi ditampilkan. Masukkan perintah ini:

    bcdedit /set "{dbgsettings}" busparams <b.d.f>
    

    B, d, dan f adalah bus, perangkat, dan nomor fungsi untuk pengontrol host USB. Nomor bus, perangkat, dan fungsi harus dalam format desimal.

    Contoh:

    bcdedit /set "{dbgsettings}" busparams 48.0.0
    
  3. Reboot komputer target.

Menonaktifkan manajemen daya

Dalam beberapa kasus, transisi daya dapat mengganggu penelusuran kesalahan melalui USB 3.0. Untuk menghindari masalah ini, nonaktifkan penangguhan selektif untuk pengontrol host xHCI, dan hub akarnya, yang Anda gunakan untuk penelusuran kesalahan.

  1. Di Manajer Perangkat, navigasikan ke simpul untuk pengontrol host xHCI. Klik kanan simpul, dan pilih Properti. Jika ada tab Power Management , buka tab , dan kosongkan kotak centang Izinkan komputer menonaktifkan perangkat ini untuk menyimpan daya .

  2. Di Manajer Perangkat, navigasikan ke simpul untuk hub akar pengontrol host xHCI. Klik kanan simpul, dan pilih Properti. Jika ada tab Manajemen Daya , buka tab , dan kosongkan kotak centang Izinkan komputer menonaktifkan perangkat ini untuk menyimpan daya .

Setelah Anda selesai menggunakan pengontrol host xHCI untuk penelusuran kesalahan, aktifkan kembali penangguhan selektif untuk pengontrol host xHCI.

Memulai sesi penelusuran kesalahan untuk pertama kalinya

  1. Sambungkan kabel debug USB 3.0 ke port USB 3.0 yang Anda pilih untuk penelusuran kesalahan pada host dan komputer target.
  2. Tentukan bitness (32-bit atau 64-bit) Windows yang berjalan di komputer host.
  3. Di komputer host, buka versi WinDbg (sebagai Administrator) yang cocok dengan bitness Windows yang berjalan di komputer host. Misalnya, jika komputer host menjalankan Windows versi 64-bit, buka WinDbg versi 64-bit sebagai Administrator.
  4. Pada menu File , pilih Debug Kernel. Dalam kotak dialog Penelusuran Kesalahan Kernel, buka tab USB . Masukkan nama target yang Anda buat saat menyiapkan komputer target. Klik OK.

Pada titik ini, driver debug USB akan diinstal pada komputer host, itulah sebabnya penting untuk mencocokkan bitness WinDbg dengan bitness Windows. Setelah driver debug USB diinstal, Anda dapat menggunakan WinDbg versi 32-bit atau 64-bit untuk sesi debugging berikutnya.

Memulai sesi penelusuran kesalahan

Menggunakan WinDbg

Di komputer host, buka WinDbg. Pada menu File , pilih Debug Kernel. Dalam kotak dialog Penelusuran Kesalahan Kernel, buka tab USB . Masukkan nama target yang Anda buat saat menyiapkan komputer target. PilihOK.

Anda juga dapat memulai sesi dengan WinDbg dengan memasukkan perintah berikut di jendela Prompt Perintah, di mana TargetName adalah nama target yang Anda buat saat menyiapkan komputer target:

windbg /k usb:targetname=<TargetName>

Menggunakan KD

Di komputer host, buka jendela Wantian Perintah dan masukkan perintah berikut, di mana TargetName adalah nama target yang Anda buat saat menyiapkan komputer target:

kd /k usb:targetname=<TargetName>

Reboot komputer target

Setelah debugger tersambung, reboot komputer target. Salah satu cara untuk melakukan boot ulang PC, adalah dengan menggunakan shutdown -r -t 0 perintah dari prompt perintah administrator.

Setelah PC target dimulai ulang, debugger akan terhubung secara otomatis.

Pemecahan Masalah

Perangkat USB tidak dikenali

Jika pemberitahuan jendela muncul di host dengan perangkat USB teks yang tidak dikenali saat Anda memasukkan kabel debug, ada kemungkinan bahwa masalah kompatibilitas USB 3.1 hingga 3.1 yang diketahui sedang ditemui. Masalah ini memengaruhi konfigurasi debug ketika kabel debug terhubung ke pengontrol USB 3.1 pada host dan pengontrol USB Intel (Ice Lake atau Tiger Lake) 3.1 pada target.

Untuk informasi selengkapnya dan daftar model prosesor, lihat Ice Lake (microprocessor) dan atau Tiger Lake (microprocessor). Untuk menemukan model prosesor komputer target, buka aplikasi Pengaturan dan buka Sistem lalu Tentang. Prosesor tercantum di bawah Spesifikasi perangkat.

Untuk memverifikasi masalah ini, buka Manajer Perangkat dan cari Perangkat Koneksi Debug USB di bawah pengontrol Universal Serial Bus. Jika perangkat ini tidak dapat ditemukan, periksa perangkat Yang Tidak Diketahui di bawah Perangkat lain. Klik kanan pada perangkat untuk membuka halaman propertinya. Kotak teks status perangkat akan memiliki teks Windows telah menghentikan perangkat ini karena telah melaporkan masalah (Kode 43) dan perangkat USB mengembalikan deskriptor USB BOS yang tidak valid.

Untuk mengatasi masalah ini, jalankan perintah ini dari perintah administrator untuk membuat perubahan pada registri:

reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags\349500E00000 /v SkipBOSDescriptorQuery /t REG_DWORD /d 1 /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags\045E06560000 /v SkipBOSDescriptorQuery /t REG_DWORD /d 1 /f

Kemudian, lepaskan dan masukkan kembali kabel debug.

Lihat juga

Menyiapkan penelusuran kesalahan mode kernel secara manual