lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <76366b180812172353o4f4fce30taac753a52a2a6e3e@mail.gmail.com>
Date:	Thu, 18 Dec 2008 02:53:18 -0500
From:	"Andrew Paprocki" <andrew@...iboo.com>
To:	"Andrew Morton" <akpm@...ux-foundation.org>
Cc:	LKML <linux-kernel@...r.kernel.org>, dz@...ian.org,
	"Federico Heinz" <fheinz@...libre.org.ar>,
	"Andy Spencer" <spenceal@...e-hulman.edu>
Subject: Re: i8k: fails to detect Dell XPS M1530, fails to get SMM BIOS version with force=1

On Thu, Dec 18, 2008 at 1:22 AM, Andrew Morton
<akpm@...ux-foundation.org> wrote:
>> The same message prints for (at least one of) those as well:
>>
>> i8k: unable to get SMM BIOS version
>
> hm.  But the driver works OK anyway?

It appears to work.

I tried to figure out why the SMM message is printing out. I can't
find any reference for the #defined values in i8k.c. The only prior
source code I can find mentioning some of them appears to be from the
Windows fanio driver inside the i8kfangui source code
(i8kfangui31-src.zip). Those constants seem to have been reverse
engineered by disassembling the nbsvc.mdm (really an MS-DOS
executable) that Dell puts in the first partition of the laptop hard
drive.

Is there a valid reference for how this SMM mechanism works and what
the inputs/outputs are? There must be some other snippets of code
around because there are a few values in i8k.c which are not in
i8kfangui31-src.zip. I could help with this code if anyone has a
reliable source for this information. The i8kfangui31 source mentions
V1266, and if I strings my copy of nbsvc.mdm, I see V1323. I'm not
sure how this (incomplete) table was derived.

--- begin paste

  According to the module NBSVC.MDM the following SMM (System
Management Mode) functions are currently available (V1266):

  cmd     function
  0x00a3  get current speed indicator of a fan (args: fan)
  0x01a3  set speed of a fan (args: fan & speed)
  0x02a3  get RPM of a fan (args: fan)
  0x03a3  ??? (1 byte)
  0x04a3  get nominal fan speed (2 args)
  0x05a3  get fan tolerance speed (2 args)
  0x10a3  get sensor temperature (1 arg: sensor#)
  0x11a3  ???
  0x12a3  arg 0x0003=NBSVC-Query
          arg 0x0000=NBSVC-Clear
          arg 0x122=NBSVC-Start Trend
          arg 0x0100=NBSVC-Stop Trend
          arg 0x02??=NBSVC-Read
  0x21a3  ??? (2 args: 1 byte (oder 0x16) + 1 byte)
  0x22a3  get charger info (1 arg)
  0x23a3  ??? (4 args: 2x 1 byte, 1xword, 1xdword)
  0x24a3  get adaptor info status (1 arg oder 0x03)
  0x30a3  ??? (no args)
  0x31a3  ??? (no args)
  0x32a3  ??? (no args)
  0x33a3  ??? (no args)
  0x36a3  get hotkey scancode list (args see diags)
  0x37a3  ??? (no args)
  0x40a3  get docking state (no args)
  0xf0a3  ??? (2 args)
  0xfea3  check SMBIOS version (1 arg)
  0xffa3  check SMBIOS interface (returns:"DELLDIAG")
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ