Smbios Type9 "slot type" show x16 PCI Express x16

Asked by Kevin Yu

Type9 "Type" value also show "DataBusWidth" value

# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.5.0 present.

Handle 0x003B, DMI type 9, 28 bytes
System Slot Information
Designation: Slot 2
Type: x16 PCI Express x16
Current Usage: Available
Length: Long
ID: 2
Characteristics:
3.3 V is provided
PME signal is supported
Bus Address: 0000:00:01.1
Data Bus Width: 0
Peer Devices: 0
Height: Not applicable

Handle 0x003C, DMI type 9, 28 bytes
System Slot Information
Designation: Slot 1
Type: x16 PCI Express x16
Current Usage: Available
Length: Long
ID: 1
Characteristics:
3.3 V is provided
PME signal is supported
Bus Address: 0000:40:01.1
Data Bus Width: 0
Peer Devices: 0
Height: Not applicable

Handle 0x003D, DMI type 9, 28 bytes
System Slot Information
Designation: Slot 3
Type: x8 PCI Express x8
Current Usage: Available
Length: Long
ID: 3
Characteristics:
3.3 V is provided
PME signal is supported
Bus Address: 0000:80:01.1
Data Bus Width: 0
Peer Devices: 0
Height: Not applicable

Handle 0x003E, DMI type 9, 28 bytes
System Slot Information
Designation: Slot 4
Type: x8 PCI Express x8
Current Usage: Available
Length: Long
ID: 4
Characteristics:
3.3 V is provided
PME signal is supported
Bus Address: 0000:80:01.2
Data Bus Width: 0
Peer Devices: 0
Height: Not applicable

Question information

Language:
English Edit question
Status:
Answered
For:
Ubuntu dmidecode Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Kevin Yu (ykevin) said :
#1

Hi team,

Why "DataBusWidth" value show in "Type", it should be "PCI Express x16", not "x16 PCI Express x16".

KevinYu

Revision history for this message
Manfred Hampl (m-hampl) said (last edit ):
#2

This output (with the slot bus width shown separately and as part of the slot type text) is defined in the upstream original source of dmidecode. So this is not Ubuntu-related, but seems to be valid for all operating systems that use that source.

Snippet of dmidecode.c from http://download.savannah.gnu.org/releases/dmidecode/dmidecode-3.5.tar.xz
...
static void dmi_slot_type_with_width(u8 type, u8 width)
{
 const char *type_str, *width_str;

 type_str = dmi_slot_type(type);
 width_str = dmi_slot_bus_width(width, 1);

 if (width_str)
  pr_attr("Type", "%s %s", width_str, type_str);
 else
  pr_attr("Type", "%s", type_str);
}
...

If you see the need to have that changed, then please contact http://savannah.nongnu.org/projects/dmidecode

Revision history for this message
Kevin Yu (ykevin) said :
#3

dmidecode 3.3 source code:

case 9: /* 7.10 System Slots */
   pr_handle_name("System Slot Information");
   if (h->length < 0x0C) break;
   pr_attr("Designation", "%s",
    dmi_string(h, data[0x04]));
   pr_attr("Type", "%s%s",
    dmi_slot_bus_width(data[0x06]),
    dmi_slot_type(data[0x05]));
   pr_attr("Current Usage", "%s",
    dmi_slot_current_usage(data[0x07]));
   pr_attr("Length", "%s",
    dmi_slot_length(data[0x08]));
   dmi_slot_id(data[0x09], data[0x0A], data[0x05]);
   if (h->length < 0x0D)
    dmi_slot_characteristics("Characteristics", data[0x0B], 0x00);
   else
    dmi_slot_characteristics("Characteristics", data[0x0B], data[0x0C]);
   if (h->length < 0x11) break;
   dmi_slot_segment_bus_func(WORD(data + 0x0D), data[0x0F], data[0x10]);
   if (h->length < 0x13) break;
   pr_attr("Data Bus Width", "%u", data[0x11]);
   pr_attr("Peer Devices", "%u", data[0x12]);
   if (h->length - 0x13 >= data[0x12] * 5)
    dmi_slot_peers(data[0x12], data + 0x13);
   break;

Revision history for this message
Kevin Yu (ykevin) said :
#4

you can see for Data Bus Width, no any out put value for it, like this: dmi_slot_bus_width(data[0x06]),

Revision history for this message
Manfred Hampl (m-hampl) said :
#5

Before going into details, which Ubuntu release and which version of dmidecode are you running?
What is the output of the following commands (to be executed in a terminal windiw)

uname -a
lsb_release -crid
apt policy dmidecode

Can you help with this problem?

Provide an answer of your own, or ask Kevin Yu for more information if necessary.

To post a message you must log in.