Sorry, you need to enable JavaScript to visit this website.

HuC Loads, GuC does not

6 posts / 0 new
Night's picture
Starter
Night

Oct 21, 2017 - 06:54am

  • I'm not sure exactly where to post this, but I'll try here...

    I'm running Ubuntu 17.10.  I recently found that the HuC nor GuC were not loaded by default despite the firmware being present.  I guess I thought this was something that was done automatically with newer kernels.  But even after making the necessary changes to load the HuC and GuC, the HuC loads fine, but the GuC is failing.

    I add the following kernel boot parameters:

    • i915.enable_guc_loading=1 i915.enable_guc_submission=1

    I successfully ran:

    • update-initramfs -u -k all
    • update-grub

    I then rebooted and checked again.

    • sudo cat /sys/kernel/debug/dri/0/i915_guc_load_status
     
    GuC firmware status:
    path: i915/kbl_guc_ver9_14.bin
    fetch: FAIL
    load: NONE
    version wanted: 9.14
    version found: 0.0
    header: offset is 0; size = 0
    uCode: offset is 0; size = 0
    RSA: offset is 0; size = 0
     
    GuC status 0x00000001:
    Bootrom status = 0x0
    uKernel status = 0x0
    MIA Core status = 0x0
     
    Scratch registers:
    0: 0x0
    1: 0x0
    2: 0x0
    3: 0x0
    4: 0x0
    5: 0x0
    6: 0x0
    7: 0x0
    8: 0x0
    9: 0x0
    10: 0x0
    11: 0x0
    12: 0x0
    13: 0x0
    14: 0x0
    15: 0x0
     
    • sudo cat /sys/kernel/debug/dri/0/i915_huc_load_status
     
    HuC firmware status:
    path: i915/kbl_huc_ver02_00_1810.bin
    fetch: SUCCESS
    load: SUCCESS
    version wanted: 2.0
    version found: 2.0
    header: offset is 0; size = 128
    uCode: offset is 128; size = 218304
    RSA: offset is 218432; size = 256
     
    HuC status 0x00006000:
     
    • dmesg
     
    [    1.052879] hidraw: raw HID events driver (C) Jiri Kosina
    [    1.056426] wmi_bus wmi_bus-PNP0C14:01: WQBC data block query control method not found
    [    1.080320] rtsx_pci 0000:3b:00.0: enabling device (0000 -> 0002)
    [    1.082308] nvme nvme0: pci function 0000:3c:00.0
    [    1.095073] Setting dangerous option enable_guc_loading - tainting kernel
    [    1.095075] Setting dangerous option enable_guc_submission - tainting kernel
    [    1.097867] [drm] Memory usable by graphics device = 4078M
    [    1.097869] checking generic (90000000 1fb0000) vs hw (90000000 10000000)
    [    1.097869] fb: switching to inteldrmfb from EFI VGA
    [    1.097899] Console: switching to colour dummy device 80x25
    [    1.098049] [drm] Replacing VGA console driver
    [    1.104157] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
    [    1.104157] [drm] Driver supports precise vblank timestamp query.
    [    1.112506] [drm] Finished loading DMC firmware i915/kbl_dmc_ver1_01.bin (v1.1)
    [    1.113055] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
    [    1.284194] usb 1-1: new low-speed USB device number 2 using xhci_hcd
    [    1.298572]  nvme0n1: p1 p2
    [    1.433241] usb 1-1: New USB device found, idVendor=0d62, idProduct=001c
    [    1.433242] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [    1.433243] usb 1-1: Product: USB+PS2 Keyboard
    [    1.433244] usb 1-1: Manufacturer: Generic
    [    1.446460] usbcore: registered new interface driver usbhid
    [    1.446461] usbhid: USB HID core driver
    [    1.448067] input: Generic USB+PS2 Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/0003:0D62:001C.0001/input/input7
    [    1.508451] hid-generic 0003:0D62:001C.0001: input,hidraw0: USB HID v1.10 Keyboard [Generic USB+PS2 Keyboard] on usb-0000:00:14.0-1/input0
    [    1.508541] input: Generic USB+PS2 Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.1/0003:0D62:001C.0002/input/input8
    [    1.552213] usb 1-2: new full-speed USB device number 3 using xhci_hcd
    [    1.568448] hid-generic 0003:0D62:001C.0002: input,hidraw1: USB HID v1.10 Device [Generic USB+PS2 Keyboard] on usb-0000:00:14.0-1/input1
    [    1.695655] usb 1-2: New USB device found, idVendor=046d, idProduct=c52b
    [    1.695656] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [    1.695657] usb 1-2: Product: USB Receiver
    [    1.695658] usb 1-2: Manufacturer: Logitech
    [    1.702641] logitech-djreceiver 0003:046D:C52B.0005: hiddev0,hidraw2: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-2/input2
    [    1.820317] usb 1-3: new full-speed USB device number 4 using xhci_hcd
    [    1.835948] input: Logitech M510 as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.2/0003:046D:C52B.0005/0003:046D:4051.0006/input/input9
    [    1.836129] logitech-hidpp-device 0003:046D:4051.0006: input,hidraw3: USB HID v1.11 Mouse [Logitech M510] on usb-0000:00:14.0-2:1
    [    1.838085] input: Logitech K750 as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.2/0003:046D:C52B.0005/0003:046D:4002.0007/input/input10
    [    1.838283] logitech-hidpp-device 0003:046D:4002.0007: input,hidraw4: USB HID v1.11 Keyboard [Logitech K750] on usb-0000:00:14.0-2:2
    [    1.896270] psmouse serio1: synaptics: queried max coordinates: x [..5666], y [..4734]
    [    1.927267] psmouse serio1: synaptics: queried min coordinates: x [1276..], y [1118..]
    [    1.927271] psmouse serio1: synaptics: Your touchpad (PNP: DLL075b PNP0f13) says it can support a different bus. If i2c-hid and hid-rmi are not used, you might want to try setting psmouse.synaptics_intertouch to 1 and report this to linux-input@vger.kernel.org.
    [    1.938732] i915 0000:00:02.0: Direct firmware load for i915/kbl_guc_ver9_14.bin failed with error -2
    [    1.938733] [drm] Failed to fetch valid uC firmware from i915/kbl_guc_ver9_14.bin (error -2)
    [    1.944000] [drm:intel_uc_init_hw [i915]] *ERROR* GuC init failed
    [    1.944027] [drm] Falling back from GuC submission to execlist mode
    [    1.944027] [drm] GuC firmware loading disabled
    [    1.944746] [drm] Initialized i915 1.6.0 20170619 for 0000:00:02.0 on minor 0
    [    1.948280] clocksource: Switched to clocksource tsc
    [    1.955378] ACPI: Video Device [GFX0] (multi-head: yes  rom: no  post: no)
    [    1.956112] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input11
    [    1.961603] usb 1-3: New USB device found, idVendor=0cf3, idProduct=e301
    [    1.961604] usb 1-3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
     
    Why is GuC failing to load, but HuC succeed?  The GuC binary is there, and I've verified it matches the md5 listed on 01.org:
     
    ls -al /lib/firmware/i915/kbl_*
     
    -rw-r--r-- 1 root root   8616 Aug 17 11:08 /lib/firmware/i915/kbl_dmc_ver1_01.bin
    lrwxrwxrwx 1 root root     19 Aug 17 11:08 /lib/firmware/i915/kbl_dmc_ver1.bin -> kbl_dmc_ver1_01.bin
    -rw-r--r-- 1 root root 142656 Oct 20 21:12 /lib/firmware/i915/kbl_guc_ver9_14.bin
    -rw-r--r-- 1 root root 218688 Aug 17 11:09 /lib/firmware/i915/kbl_huc_ver02_00_1810.bin
     

     

    Oct 21, 2017 - 06:54am