rhboot / fwupdate

System firmware update support for UEFI machines
99 stars 47 forks source link

fwupdate can't find Dell XPS 13 9360 (2018) BIOS update #115

Closed tapir closed 6 years ago

tapir commented 6 years ago

dmidecode gives this

Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
    Vendor: Dell Inc.
    Version: 2.5.0
    Release Date: 12/12/2017
    Address: 0xF0000
    Runtime Size: 64 kB
    ROM Size: 16 MB
    Characteristics:
        PCI is supported
        PNP is supported
        BIOS is upgradeable
        BIOS shadowing is allowed
        Boot from CD is supported
        Selectable boot is supported
        EDD is supported
        Japanese floppy for NEC 9800 1.2 MB is supported (int 13h)
        5.25"/1.2 MB floppy services are supported (int 13h)
        3.5"/720 kB floppy services are supported (int 13h)
        3.5"/2.88 MB floppy services are supported (int 13h)
        Print screen service is supported (int 5h)
        8042 keyboard services are supported (int 9h)
        Serial services are supported (int 14h)
        Printer services are supported (int 17h)
        ACPI is supported
        USB legacy is supported
        Smart battery is supported
        BIOS boot specification is supported
        Function key-initiated network boot is supported
        Targeted content distribution is supported
        UEFI is supported
    BIOS Revision: 2.5

and fwupdmgr get-devices gives this

Intel AMT [unprovisioned]
  DeviceId:             088df415cdee883ec89563e41e6d495924250174
  Guid:                 2800f812-b7b4-2d4b-aca8-46e0ff65814c
  Summary:              Hardware and firmware technology for remote out-of-band management
  Plugin:               amt
  Flags:                internal|registered
  Vendor:               Intel Corporation
  Version:              11.8.50
  VersionBootloader:    11.8.50
  Icon:                 computer
  Created:              2018-06-04

XPS 13 9360 TPM 2.0
  DeviceId:             3368246a16d77193e42a2fea8d95439b38f01670
  Guid:                 2e513587-0d9b-50e6-8e15-1845d44e88eb
  Summary:              Platform TPM device
  Plugin:               dell
  Flags:                internal|require-ac|registered
  Vendor:               Dell Inc.
  Version:              1.3.2.8
  Icon:                 computer
  Created:              2018-06-04

UHD Graphics 620
  DeviceId:             8de6c7959053fd5798006dcc63590d33fa5e51cb
  Guid:                 8eb8bd2e-0fca-5aba-9aa8-f341e0aa4482
  Plugin:               udev
  Flags:                internal|registered
  Vendor:               Intel Corporation
  VendorId:             PCI:0x8086
  Icon:                 audio-card
  Created:              2018-06-04

I see that there is a BIOS update 2.6.2 which is not recognized by fwupdmgr

tapir commented 6 years ago

Sorry it's probably related to this

[josh@collin Downloads]$ fwupdate --supported
Firmware updates are not supported on this machine.
[josh@collin Downloads]$ sudo fwupdate --enable
Firmware updates can not be enabled on this machine from this tool.

Any way to enable it?

superm1 commented 6 years ago

Which model XPS is this? You may need to go into BIOS setup to turn on UEFI capsule updates if it's not already on.

tapir commented 6 years ago

I thought it was an XPS 9365 because it's the 2018 model but not the newest design (old case) but looks like it's 9360 from what I see on system messages

superm1 commented 6 years ago

If it's an 9360 yes it's supported. You should just need to go into BIOS setup to turn on UEFI capsule updates.

tapir commented 6 years ago

Bad news then. With dmidecode I've confirmed that it's an 9360

[josh@collin ~]$  sudo dmidecode | grep XPS
[josh@collin ~]$  Product Name: XPS 13 9360
[josh@collin ~]$  Family: XPS

But UEFI Capsule updates are already enabled in BIOS. Any other ideas?

PS: This model has a 8th generation Intel CPU, does that make a difference?

superm1 commented 6 years ago

No that shouldn't make any difference.

What OS are you running? Do you have ESRT enabled in your kernel?

tapir commented 6 years ago

I'm using arch linux

[josh@collin ~]$ lsmod | grep esrt
[josh@collin ~]$ lsmod | grep ESRT
[josh@collin ~]$ 

looks like I'm not, is it just a matter of doing

modprobe esrt

?

superm1 commented 6 years ago

Can you please check your kernel config? You should have CONFIG_EFI_ESRT set to something.

You can also check if you have a /sys/firmware/efi/esrt directory. If you don't have that, that would explain fwupdate's lack of working.

tapir commented 6 years ago

I'm using the default arch kernel so I've searched the config file here: https://git.archlinux.org/svntogit/packages.git/tree/trunk/config?h=packages/linux

CONFIG_EFI_ESRT=y
CONFIG_EFI_RUNTIME_MAP=y

yet I don't have the /sys/firmware/efi directory at all let alone .../esrt

ArchangeGabriel commented 6 years ago

Are you booting in EFI mode at all?

tapir commented 6 years ago

Good question :) How can I check that?

ArchangeGabriel commented 6 years ago

In your BIOS, Boot Options or something like that. But the absence of /sys/firmware/efi is generally a good indicator that’s not the case. Also, you should by the way you installed Arch, especially your bootloader.

superm1 commented 6 years ago

Agreed, it really looks to me that this isn't UEFI mode and that fully explains all of this behavior.

tapir commented 6 years ago

I'm actually using Antergos so the installation was automatic. Thanks for diagnostics!

superm1 commented 6 years ago

So in that case you probably selected the wrong option when you booted off your USB disk the first time to do installation. If you had legacy option rom enabled in BIOS setup it might not have been clear in the F12 boot menu what you picked (your USB disk will show up in UEFI or under legacy both).

As for how to get in UEFI mode? It really depends if you created a GPT partition table or MBR partition table. If you did an MBR table you'll probably need to reinstall so that you can create an EFI system partition and load an EFI bootloader. If you've done GPT you can probably find a way to resize one of your partitions so you've got enough free space on the disk that you can make one there.

ArchangeGabriel commented 6 years ago

There might also be an already existing ESP depending on how the installation happened. Assuming there was some OEM system installed in the first place, there likely was an ESP at that time, and it might still exist. The output of fdisk -l could be interesting in that purpose (as well to check about GPT).

tapir commented 6 years ago
sudo parted -l
Partition Table: msdos

In that case I think I'll just use the F12 - USB BIOS Flash instead Thank you both