Could the absence of battery details resulting from "dmidecode -t 22" be caused by Fedora?

Hello. Knowledge about portable battery manufacturing date, among other details about the battery that are not retrieved by other tools is needed. That’s a job for dmidecode.

$ dmidecode -t 22
# dmidecode 3.6
/sys/firmware/dmi/tables/smbios_entry_point: Permission denied
Scanning /dev/mem for entry point.
Can’t read memory from /dev/mem
$ sudo !!
sudo dmidecode -t 22
# dmidecode 3.6
Getting SMBIOS data from sysfs.
SMBIOS 3.0.0 present.

Then no details, also illustrating that dmidecode may not include battery details, since it is able to include them on some systems.

Is it caused by

  • DMI table missing battery details
  • system lacking necessary support
  • system limitation, itself either caused by the Linux kernel or Fedora
  • Fedora improper configuration
$ sudo dmidecode | grep -iE ‘battery|bat’ | awk ‘$1=$1’
Smart battery is supported

Hard to tell, but my F43 laptop happily shows the information:

$ sudo dmidecode -t 22
# dmidecode 3.6
Getting SMBIOS data from sysfs.
SMBIOS 3.3.0 present.

Handle 0x001F, DMI type 22, 26 bytes
Portable Battery
        Location: Rear
        Manufacturer: Sunwoda
        Name: 5B11M90029
        Design Capacity: 52500 mWh
        Design Voltage: 15480 mV
        SBDS Version: 03.01
        Maximum Error: Unknown
        SBDS Serial Number: [redacted]
        SBDS Manufacture Date: 2023-12-23
        SBDS Chemistry: LiP
        OEM-specific Information: 0x00000000

In my case, Lenovo, the DMI table is just not populated (type 22), (which seems common for many Lenovo’s and other laptops). “upower -i $(upower -e | grep battery)” provides the correct info (in my case) via the smart battery interface.

‘cat /sys/firmware/dmi/tables/DMI | strings | grep -i battery’ is usually conclusive (no output) and kind of reliably rules out Fedora/Kernel issues. Else, run a Live USB with another distro to be 100% sure.

1 Like