Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to execute some smbios commands on Linux 6.11 #147

Open
insiderser opened this issue Oct 6, 2024 · 4 comments
Open

Unable to execute some smbios commands on Linux 6.11 #147

insiderser opened this issue Oct 6, 2024 · 4 comments

Comments

@insiderser
Copy link

insiderser commented Oct 6, 2024

❯ sudo smbios-thermal-ctl --set-thermal-mode=balanced
Helper function to Set Thermal Mode
ERROR: Could not execute SMI.

Common problems are:

    -- 'SMM Mitigations' is enabled in BIOS setup.
        Run kernel 4.15 or later with 
        dell-smbios-wmi enabled.
         or 
        Disable 'SMM mitigations' in BIOS setup.

    -- Insufficient permissions to perform operation.
       Try running as a more privileged account.
          Linux  : run as 'root' user
          Windows: run as 'administrator' user

    -- dell-smbios-wmi driver not loaded 
       Try loading the dell-smbios-wmi driver 
          Linux : modprobe dell-smbios-wmi 

    -- Call filtered by Linux kernel 
       Some functionality is natively supported 
       by the Linux kernel 

    -- dcdbas device driver not loaded.
       Try loading the dcdbas driver
          Linux  : modprobe dcdbas
❯ sudo modprobe dell-smbios-wmi
modprobe: FATAL: Module dell-smbios-wmi not found in directory /lib/modules/6.11.2-arch1-1

Commands that output this error:

  • smbios-thermal-ctl
  • smbios-lcd-brightness
  • smbios-wireless-ctl

Commands that seem to work (or at least they don't show this error):

  • smbios-battery-ctl
  • smbios-wakeup-ctl

smbios-thermal-ctl works on Linux 6.6.52 LTS. Doesn't work on 6.11.1 and 6.11.2. Worked on Linux 6.10 with BIOS 1.30.0.

❯ sudo smbios-sys-info-lite
Libsmbios:    2.4.3
System ID:    0x098F
Service Tag:  DJ6FF63
Express Service Code: 29457824907
Asset Tag:  Not Specified
Product Name: XPS 17 9700
BIOS Version: 1.31.0
Vendor:       Dell Inc.
Is Dell:      1
OEM String 1: Dell System
OEM String 2: 1[098F]
OEM String 3: 3[1.0]
OEM String 4: 12[www.dell.com]
OEM String 5: 14[1]
OEM String 6: 15[11]
OEM String 7: 27[29457824907]

Might be related to https://www.phoronix.com/news/Dell-PC-Driver-For-Linux-6.11. But sudo modprobe dell-pc doesn't fix this issue.

@Alan-J-Bibins
Copy link

Alan-J-Bibins commented Oct 7, 2024

I also have the exact same issue on my arch system, it is specific to the 6.11 kernel since I had no issues on the 6.6.52 lts kernel, or the prior 6.10 kernel.

> sudo smbios-sys-info-lite
Libsmbios:    2.4.3
System ID:    0x0BF7
Service Tag:  1V15PY3
Express Service Code: 4053180315
Asset Tag:  Not Specified
Product Name: Dell G15 5530
BIOS Version: 1.19.0
Vendor:       Dell Inc.
Is Dell:      1
OEM String 1: Dell System
OEM String 2: 1[0BF7]
OEM String 3: 3[1.0]
OEM String 4: 12[www.dell.com]
OEM String 5: 14[1]
OEM String 6: 15[0]
OEM String 7: 27[4053180315]

@freudFlintstone
Copy link

Same issue on a XPS 13 9320, running Ubuntu 24.10 with kernel 6.11.0-8

@Excigma
Copy link

Excigma commented Oct 28, 2024

I believe functionality for smbios-thermal-ctl has been merged into the kernel. You can use sysfs to change the settings instead: under /sys/firmware/acpi/, see platform_profile and platform_profile_choices.

Previously, I had a script calling smbios-thermal-ctl when I changed the profile in tuned so that the fan/thermal profile would change, however, it seems to be automatically done now :)

Note the error message saying:

    -- Call filtered by Linux kernel 
       Some functionality is natively supported 
       by the Linux kernel

It's filtered here: https://github.com/torvalds/linux/blame/ae90f6a6170d7a7a1aa4fddf664fbd093e3023bc/drivers/platform/x86/dell/dell-smbios-base.c#L80

It was added in this commit: torvalds/linux@996ad41

I'm not sure about smbios-lcd-brightness or smbios-wireless-ctl, as I don't use it. Searching in the Kernel's code seems to show that smbios-wireless-ctl's functionality is implemented here: https://github.com/torvalds/linux/blob/81983758430957d9a5cb3333fe324fd70cf63e7e/drivers/platform/x86/dell/dell-laptop.c#L399

@fivento
Copy link

fivento commented Dec 18, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants