Manpage for new BIOS functionality.
(Skeletal, could do with some extra references.)
This commit is contained in:
parent
97564a75d4
commit
a1dadd1000
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=27820
114
share/man/man9/bios.9
Normal file
114
share/man/man9/bios.9
Normal file
@ -0,0 +1,114 @@
|
||||
.\" $Id$
|
||||
.\"
|
||||
.\" Copyright (c) 1997 Michael Smith
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
.\" SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd Aug 1, 1997
|
||||
.Dt FETCH 9
|
||||
.Os FreeBSD
|
||||
.Sh NAME
|
||||
.Nm bios_sigsearch ,
|
||||
.Nm bios32_SDlookup ,
|
||||
.Nm bios32
|
||||
.Nd Interact with PC BIOS.
|
||||
.Sh SYNOPSIS
|
||||
.Fd #include <machine/pc/bios.h>
|
||||
.Ft u_int32_t
|
||||
.Fn bios_sigsearch "u_int32_t start" "u_char *sig" "int siglen" "int paralen" "int sigofs"
|
||||
.Ft int
|
||||
.Fn bios32_SDlookup "struct bios32_SDentry *ent"
|
||||
.Ft void
|
||||
.Fn bios32 "caddr_t entry" "struct bios32_args *args"
|
||||
.Fn BIOS_PADDRTOVADDR "addr"
|
||||
.Fn BIOS_VADDRTOPADDR "addr"
|
||||
.Ft extern struct bios32_SDentry PCIbios;
|
||||
.Ft extern struct SMBIOS_table SMBIOStable;
|
||||
.Ft extern struct DMI_table DMItable;
|
||||
.Sh DESCRIPTION
|
||||
These functions provide a general-purpose interface for dealing with
|
||||
the BIOS functions and data encountered on x86 PC-architecture systems.
|
||||
.Bl -tag -width 20n
|
||||
.It Fn bios_sigsearch
|
||||
Searches the BIOS address space for a service signature, usually an
|
||||
uppercase ASCII sequence surrounded by underscores. The search begins
|
||||
at
|
||||
.Fa start ,
|
||||
or at the beginning of the BIOS if
|
||||
.Fa start
|
||||
is zero.
|
||||
.Fa siglen
|
||||
bytes of the BIOS image and
|
||||
.Fa sig
|
||||
are compared at
|
||||
.Fa sigofs
|
||||
bytes offset from the current location. If no match is found, the
|
||||
current location is incremented by
|
||||
.Fa paralen
|
||||
bytes and the search repeated. If the signature is found, its effective
|
||||
physical address is returned. If no signature is found, zero is returned.
|
||||
.It Fn BIOS_VADDRTOPADDR
|
||||
Returns the effective physical address which corresponds to the kernel
|
||||
virtual address
|
||||
.Fa addr .
|
||||
.It Fn BIOS_VADDRTOPADDR
|
||||
Returns the kernel virtual address which corresponds to the effective
|
||||
physical address
|
||||
.Fa addr .
|
||||
.It SMBIOStable
|
||||
If not NULL, points to a
|
||||
.Ft struct SMBIOS_table
|
||||
structure containing information read from the System Management BIOS table
|
||||
during system startup.
|
||||
.It DMItable
|
||||
If not NULL, points to a
|
||||
.Ft struct DMI_table
|
||||
structure containing information read from the Desktop Management Interface
|
||||
parameter table during system startup.
|
||||
.El
|
||||
.Sh BIOS32
|
||||
At system startup, the BIOS is scanned for the BIOS32 Service Directory
|
||||
(part of the PCI specification), and the existence of the directory is
|
||||
recorded. This can then be used to locate other services.
|
||||
.Bl -tag -width 20n
|
||||
.It Fn bios32_SDlookup
|
||||
Attempts to locate the BIOS32 service matching the 4-byte identifier
|
||||
passed in the
|
||||
.Fa ident
|
||||
field of the
|
||||
.Fa ent
|
||||
argument.
|
||||
.It Fn bios32
|
||||
Calls a bios32 function. This presumes that the function is capable of
|
||||
working within the kernel segment (normally the case). The virtual address
|
||||
of the entrypoint is supplied in
|
||||
.Fa entry
|
||||
and the register arguments to the function are supplied in
|
||||
.Fa args .
|
||||
.It PCIbios
|
||||
If not NULL, points to a
|
||||
.Ft struct bios32_SDentry
|
||||
structure describing the PCI BIOS entrypoint which was found during system
|
||||
startup.
|
||||
.El
|
||||
|
Loading…
Reference in New Issue
Block a user