smapi(4)

NAME

smapi - System Management Application Program Interface
driver

DESCRIPTION

Many IBM Thinkpad laptops utilize a special software inter
face known as
SMAPI (System Management Application Program Interface).
This interface
controls various aspects of the system including:
+o System Interface (the BIOS can store system information
such as the
system identifier),
+o System Configuration (where devices such as the display
can be con
figured),
+o Power Management (software can interact with the SMAPI
BIOS for Power
Management control).
Client software must locate a ``header image'' stored in the
F000 segment
in the Thinkpad ROM (read-only memory), which resides at the
16-byte
boundary. This is considered the ``Entry Point'' for the
service.
The ``header image'' stores information like:
+o signature,
+o SMAPI version (major and minor),
+o header image length,
+o checksum information (which verifies the image),
+o an Information Word (used to identify the BIOS service
level),
+o Real Mode Entry Point (where clients using the Real/V86
mode for the
far-call value),
+o and finally a 16-bit/32-bit Protected Mode Entry Point:
base code
address which specifies the BIOS physical address. The
client must
prepare a 64 kilobyte selector for this BIOS).
To invoke the SMAPI BIOS, a far-call must be used on the en
try point
specified in the header file. All other information should
be stored in
the client data area. The client is required to prepare
both an input
and output parameter in a data area of its own. This area
can be
``informed'' by pushing those pointers into its stack before
the farcalls.
The SMAPI BIOS uses the stack and data areas with the selec
tor during a
BIOS invocation, thus the caller must define the same privi
lege area as
the BIOS.
The parameter structure will be made up by using the input
and output
fields prepared by the caller. The input field will specify
the function
request to the BIOS. The BIOS will then drop a return value
into the
output field. These fields are made up of three parts. The
first holds
parameters, function numbers, and return codes. The next
will contain an
offset in hexadecimal. Finally a length field which is com
prised of
Byte, Word, or Double Word.

SEE ALSO

IBM Thinkpad 560/560E Technical Reference, 06J0536
S76H-7587-01.
IBM Thinkpad 560Z Technical Reference, xxxxxxx xxxx-xxxx-xx.
IBM Thinkpad 600 Technical Reference, xxxxxxx xxxx-xxxx-xx.
IBM Thinkpad 760XD/760XL/765D/765L Technical Reference,
06J0537
S30H-2433-02.
IBM Thinkpad 770 Technical Reference, 05L1739 S05L-1739-00.

AUTHORS

The smapi driver was written by Matthew N. Dodd
<mdodd@FreeBSD.org>.
This manual page was written by Tom Rhodes <trhodes@FreeB
SD.org> and
Matthew N. Dodd <mdodd@FreeBSD.org>.
BSD April 1, 2003
Copyright © 2010-2025 Platon Technologies, s.r.o.           Index | Man stránky | tLDP | Dokumenty | Utilitky | O projekte
Design by styleshout