I have an odd problem with dmidecode on a Panasonic CF-SZ6 laptop running 
7.6-release.

kern.allowkmem=1 is set.

# dmidecode 3.6
Scanning /dev/mem for entry point.
# No SMBIOS nor DMI entry point found, sorry.

But in dmesg I have an SMBIOS entry point found:

bios0 at mainbus0: SMBIOS rev. 3.0 @   (36 entries)
bios0: vendor American Megatrends Inc. version "V2.00L32" date 11/27/2023
bios0: Panasonic Corporation CFSZ6-2
efi0 at bios0: UEFI 2.5
acpi0 at bios0: ACPI 6.1

I have examined /dev/mem with hexdump -C -s  0xa4df8000 | less 

a4df8000  00 18 00 00 01 02 00 f0  03 ff 80 9a 09 49 01 00  |.............I..|
a4df8010  00 00 03 0f 02 00 01 00  41 6d 65 72 69 63 61 6e  |........American|
a4df8020  20 4d 65 67 61 74 72 65  6e 64 73 20 49 6e 63 2e  | Megatrends Inc.|
a4df8030  00 56 32 2e 30 30 4c 33  32 00 31 31 2f 32 37 2f  |.V2.00L32.11/27/|
a4df8040  32 30 32 33 00 00 01 1b  01 00 01 02 03 04 39 a3  |2023..........9.|
a4df8050  0a 3c 73 18 7c 53 90 68  7c 86 f0 c4 d7 78 01 05  |.<s.|S.h|....x..|
a4df8060  06 50 61 6e 61 73 6f 6e  69 63 20 43 6f 72 70 6f  |.Panasonic Corpo|
a4df8070  72 61 74 69 6f 6e 00 43  46 53 5a 36 2d 32 00 30  |ration.CFSZ6-2.0|
a4df8080  30 32 00 37 4b 4b 53 41  34 35 30 37 32 00 43 46  |02.7KKSA45072.CF|
a4df8090  2d 53 5a 36 59 31 35 56  53 00 4c 65 74 27 73 6e  |-SZ6Y15VS.Let'sn|
a4df80a0  6f 74 65 2f 54 4f 55 47  48 42 4f 4f 4b 00 00 02  |ote/TOUGHBOOK...|
a4df80b0  13 02 00 01 02 03 04 05  09 06 03 00 0a 02 10 00  |................|
(etc)

and the entry point (which are pointed to in EFI variables) at
a4dfa000  5f 53 4d 33 5f 23 18 03  00 00 01 00 22 0b 00 00  |_SM3_#......"...|
a4dfa010  00 80 df a4 00 00 00 00  7d da 43 20 65 b9 cf 21  |........}.C e..!|

- which has the _SM3_ string Dmidecode is supposed to be looking for. 

I am wondering why dmidecode can't find the entry point on this machine. 
On my Thinkpad X220 (also 7.6-release) it works. And booting a Linux USB stick 
with the same version of dmidecode (3.6) on this machine also works, both using 
the Linux sysfs and the entry points in EFI veriables (dmidecode --no-sysfs).

The source code for finding the entry point isn't modified in the port, so I am 
baffled why it doesn't work.

Anyone got any ideas? I was hoping to use the output to enable a driver quirk.

-- 
Chris Billington

Reply via email to