libhd  5.0
bios.h
Go to the documentation of this file.
1 #define BIOS_ROM_START 0xc0000
2 #define BIOS_ROM_SIZE 0x40000
3 
4 #define BIOS_RAM_START 0x400
5 #define BIOS_RAM_SIZE 0x100
6 
smbios_any_t::handle
int handle
handle, unique 16 bit number
Definition: hd.h:552
bios_info_t::apm_ver
unsigned apm_ver
Definition: hd.h:1336
get_cmd_param
char * get_cmd_param(hd_data_t *hd_data, int field)
Definition: hd.c:3631
hd_log_hex
void hd_log_hex(hd_data_t *hd_data, int with_ascii, unsigned data_len, unsigned char *data)
Definition: hd.c:2377
read_file
str_list_t * read_file(char *file_name, unsigned start_line, unsigned lines)
Definition: hd.c:2527
mod_bios
@ mod_bios
Definition: hd_int.h:75
u_hd_smbios_t::processor
smbios_processor_t processor
Definition: hd.h:956
res_phys_mem_t::type
enum resource_types type
Definition: hd.h:1698
hd_data_t::bios_ram
memory_range_t bios_ram
(Internal) BIOS 0x00400 - 0x004ff
Definition: hd.h:2705
s_hd_t::base_class
hd_id_t base_class
Base class (id and name).
Definition: hd.h:2231
smbios_sysinfo_t::product
char * product
product name
Definition: hd.h:582
bios_info_t::ser_port3
unsigned ser_port3
Definition: hd.h:1342
bios_info_t::name
char * name
Definition: hd.h:1362
bios_info_t::vbe
vbe_info_t vbe
Definition: hd.h:1352
vbe_info_t::mode
vbe_mode_info_t * mode
video mode list
Definition: hd.h:496
DEV_MEM
#define DEV_MEM
Definition: hd_int.h:33
res_framebuffer_t::colorbits
unsigned colorbits
4, 8, 15, 16, 24, 32
Definition: hd.h:1782
smbios_sysinfo_t::version
char * version
version
Definition: hd.h:583
bios_info_t::scroll_lock
unsigned scroll_lock
Definition: hd.h:1375
smp_info_t::mpfp
unsigned mpfp
MP Floating Pointer struct.
Definition: hd.h:450
hd_data_t::hd
hd_t * hd
Current hardware list.
Definition: hd.h:2610
bios32_info_t::ok
unsigned ok
data are valid
Definition: hd.h:516
smbios_mouse_t::interface
hd_id_t interface
interface type
Definition: hd.h:894
hd_data_t::bios_ebda
memory_range_t bios_ebda
(Internal) EBDA
Definition: hd.h:2706
smbios_mouse_t::buttons
unsigned buttons
number of buttons
Definition: hd.h:895
u_hd_smbios_t::any
smbios_any_t any
Definition: hd.h:951
remove_hd_entries
void remove_hd_entries(hd_data_t *hd_data)
Definition: hd.c:2711
bios_info_t::par_port2
unsigned par_port2
Definition: hd.h:1343
hd_is_sgi_altix
int hd_is_sgi_altix(hd_data_t *hd_data)
Definition: hd.c:3138
smbios_add_entry
hd_smbios_t * smbios_add_entry(hd_smbios_t **sm, hd_smbios_t *new_sm)
Definition: smbios.c:1098
canon_str
char * canon_str(char *s, int len)
Definition: hd.c:2191
vbe_mode_info_s::width
unsigned width
Definition: hd.h:467
res_framebuffer
@ res_framebuffer
Definition: hd.h:1637
bios_info_t::pnp_id
unsigned pnp_id
Definition: hd.h:1347
hd_scan_bios
void hd_scan_bios(hd_data_t *hd_data)
bios_info_t::lba_support
unsigned lba_support
Definition: hd.h:1348
res_mem
@ res_mem
Definition: hd.h:1635
new_str
char * new_str(const char *s)
Definition: hd.c:1577
smbios_free
hd_smbios_t * smbios_free(hd_smbios_t *sm)
Definition: smbios.c:1109
PROGRESS
#define PROGRESS(a, b, c)
Definition: hd_int.h:61
HD_DEB_BIOS
#define HD_DEB_BIOS
Definition: hd.h:44
hd_data_t::pci_config_type
unsigned pci_config_type
(Internal) PCI config type (1 or 2), 0: unknown
Definition: hd.h:2726
hd_detail_t::type
enum hd_detail_type type
Definition: hd.h:2142
bios_info_t::bus
unsigned bus
Definition: hd.h:1368
hd_detail_bios
@ hd_detail_bios
Definition: hd.h:2065
hd_data_t::bios_rom
memory_range_t bios_rom
(Internal) BIOS 0xc0000 - 0xfffff
Definition: hd.h:2704
s_str_list_t::next
struct s_str_list_t * next
Link to next member.
Definition: hd.h:407
bios_info_t::smp
smp_info_t smp
Definition: hd.h:1351
bios_info_t::width
unsigned width
Definition: hd.h:1357
bios_info_t::type
char * type
Definition: hd.h:1367
u_hd_smbios_t::next
union u_hd_smbios_t * next
Definition: hd.h:950
bios_info_t::ysize
unsigned ysize
Definition: hd.h:1360
smbios.h
hw_vbe
@ hw_vbe
Definition: hd.h:145
bios_info_t::low_mem_size
unsigned low_mem_size
Definition: hd.h:1350
smbios_any_t::type
hd_smbios_type_t type
BIOS info type.
Definition: hd.h:548
bios_info_t::bios32
bios32_info_t bios32
Definition: hd.h:1380
hex
int hex(char *s, int n)
Definition: hd.c:2219
height
unsigned short height
Definition: ibm-notebooks.h:3
hd_data_t::flag_struct::vbox
unsigned vbox
running in virtual box
Definition: hd.h:2661
smbios_parse
void smbios_parse(hd_data_t *hd_data)
Definition: smbios.c:654
bios_info_t::par_port1
unsigned par_port1
Definition: hd.h:1343
s_hd_t
Individual hardware item.
Definition: hd.h:2196
res_mem_t::type
enum resource_types type
Definition: hd.h:1688
bios_info_t::mouse
struct bios_info_t::@6 mouse
BIOS_RAM_SIZE
#define BIOS_RAM_SIZE
Definition: bios.h:5
vbe_info_t::modes
unsigned modes
number of supported video modes
Definition: hd.h:495
bios_info_t::height
unsigned height
Definition: hd.h:1358
bios_info_t::compat_vend
unsigned compat_vend
Definition: hd.h:1369
u_hd_res_t
libhd resource union
Definition: hd.h:1822
vendor
@ vendor
Definition: isdn_cdb_def.h:5
res_framebuffer_t::bytes_p_line
unsigned bytes_p_line
line length in bytes (do not confuse with 'width')
Definition: hd.h:1781
hd_detail_bios_t::data
bios_info_t * data
Definition: hd.h:2097
vbe_mode_info_s::height
unsigned height
mode size
Definition: hd.h:467
s_hd_t::next
struct s_hd_t * next
Link to next hardware item.
Definition: hd.h:2197
res_framebuffer_t::width
unsigned width
Definition: hd.h:1780
bios_info_t::apm_supported
unsigned apm_supported
Definition: hd.h:1334
bios.h
smbios_any_t::data_len
int data_len
formatted section length
Definition: hd.h:549
acc_rw
@ acc_rw
read/write
Definition: hd.h:1656
s_hd_t::device
hd_id_t device
Device id and name.
Definition: hd.h:2259
res_mem_t::range
uint64_t range
Definition: hd.h:1689
memory_range_t::size
unsigned size
base address & size
Definition: hd.h:439
bios_info_t::vbe_ver
unsigned vbe_ver
Definition: hd.h:1339
bios_info_t::apm_subver
unsigned apm_subver
Definition: hd.h:1336
s_str_list_t::free_str_list
str_list_t * free_str_list(str_list_t *list)
Definition: hd.c:2493
bios32_info_t::entry
unsigned entry
entry point
Definition: hd.h:517
u_hd_smbios_t::sysinfo
smbios_sysinfo_t sysinfo
Definition: hd.h:953
memory_range_t::start
unsigned start
Definition: hd.h:439
klog.h
bus_ps2
@ bus_ps2
outside the range of the PCI values
Definition: hd.h:297
smp_info_t::cpus_en
unsigned cpus_en
number of cpus & ennabled cpus
Definition: hd.h:457
smp_info_t
smp info according to Intel smp spec (ia32)
Definition: hd.h:447
smbios_mouse_t::mtype
hd_id_t mtype
mouse type
Definition: hd.h:893
bios_info_t::is_pnp_bios
unsigned is_pnp_bios
The id is still in big endian format!
Definition: hd.h:1346
pr_bios_acpi
@ pr_bios_acpi
Definition: hd.h:122
hd_data_t::module
unsigned module
(Internal) the current probing module we are in
Definition: hd.h:2681
bios_info_t::ok
unsigned ok
Definition: hd.h:1374
bios32_info_t::compaq
unsigned compaq
is compaq system
Definition: hd.h:518
bios32_info_t
Definition: hd.h:515
bios_info_t::compat_dev
unsigned compat_dev
Definition: hd.h:1370
get_vbe_info
void get_vbe_info(hd_data_t *hd_data, vbe_info_t *vbe)
ADD2LOG
#define ADD2LOG(a...)
Definition: hd_int.h:62
s_str_list_t
String list type.
Definition: hd.h:406
hd_set_hw_class
void hd_set_hw_class(hd_t *hd, hd_hw_item_t hw_class)
Definition: hd.c:5238
smp_info_t::rev
unsigned rev
MP spec revision.
Definition: hd.h:449
smp_info_t::feature
unsigned char feature[5]
MP feature info.
Definition: hd.h:454
u_hd_res_t::mem
res_mem_t mem
Definition: hd.h:1826
s_hd_t::detail
hd_detail_t * detail
Special info associated with this hardware.
Definition: hd.h:2433
hd_data_t::flags
struct hd_data_t::flag_struct flags
vbe_info_t::ok
unsigned ok
data are valid
Definition: hd.h:486
sm_sysinfo
@ sm_sysinfo
Definition: hd.h:532
ibm-notebooks.h
add_hd_entry
hd_t * add_hd_entry(hd_data_t *hd_data, unsigned line, unsigned count)
Definition: hd.c:1777
read_klog
void read_klog(hd_data_t *hd_data)
Definition: klog.c:50
bios_info_t::apm_enabled
unsigned apm_enabled
Definition: hd.h:1335
res_framebuffer_t::type
enum resource_types type
Definition: hd.h:1779
hd_data_t::debug
unsigned debug
Debug flags.
Definition: hd.h:2635
bios_info_t::smbios_ver
unsigned smbios_ver
Definition: hd.h:1354
smp_info_t::ok
unsigned ok
data are valid
Definition: hd.h:448
bios_info_t::caps_lock
unsigned caps_lock
Definition: hd.h:1377
bios_info_t::num_lock
unsigned num_lock
Definition: hd.h:1376
smbios_any_t::data
unsigned char * data
formatted section
Definition: hd.h:550
u_hd_res_t::framebuffer
res_framebuffer_t framebuffer
Definition: hd.h:1837
vbe_mode_info_s::attributes
unsigned attributes
mode attributes
Definition: hd.h:466
hd_probe_feature
int hd_probe_feature(hd_data_t *hd_data, enum probe_feature feature)
Definition: hd.c:579
BIOS_RAM_START
#define BIOS_RAM_START
Definition: bios.h:4
smbios_any_t::strings
str_list_t * strings
strings taken from the unformed section
Definition: hd.h:551
MAKE_ID
#define MAKE_ID(tag, id_val)
Combine tag and id value.
Definition: hd.h:102
tp_db
static unsigned tp_db[56639]
Definition: ibm-notebooks.h:44
u_hd_res_t::phys_mem
res_phys_mem_t phys_mem
Definition: hd.h:1827
u_hd_smbios_t
SMBIOS list item.
Definition: hd.h:949
sm_mouse
@ sm_mouse
Definition: hd.h:537
vbe_mode_info_s::bytes_p_line
unsigned bytes_p_line
line length
Definition: hd.h:468
smbios_sysinfo_t::manuf
char * manuf
manufacturer
Definition: hd.h:581
BIOS_ROM_START
#define BIOS_ROM_START
Definition: bios.h:1
bios_info_t::xsize
unsigned xsize
Definition: hd.h:1359
hd_id_t::id
unsigned id
Numeric id.
Definition: hd.h:397
vbe_mode_info_s::number
unsigned number
mode number
Definition: hd.h:465
hd.h
memory_range_t
for memory areas
Definition: hd.h:438
bc_framebuffer
@ bc_framebuffer
Definition: hd.h:167
PROC_APM
#define PROC_APM
Definition: hd_int.h:27
res_framebuffer_t::mode
unsigned mode
mode number for kernel
Definition: hd.h:1783
tp_values
static struct @19 tp_values[35]
res_mem_t::base
uint64_t base
Definition: hd.h:1689
smp_info_t::mpconfig_ok
unsigned mpconfig_ok
MP config table valid.
Definition: hd.h:451
s_hd_t::res
hd_res_t * res
Device resources.
Definition: hd.h:2427
s_hd_t::sub_class
hd_id_t sub_class
Sub class (id and name).
Definition: hd.h:2236
smp_info_t::cpus
unsigned cpus
Definition: hd.h:457
BIOS_ROM_SIZE
#define BIOS_ROM_SIZE
Definition: bios.h:2
vbe_mode_info_s::pixel_size
unsigned pixel_size
bits per pixel
Definition: hd.h:469
vbe_info_t::version
unsigned version
vbe version
Definition: hd.h:487
pr_bios_vesa
@ pr_bios_vesa
Definition: hd.h:120
bios_info_t::apm_bios_flags
unsigned apm_bios_flags
Definition: hd.h:1337
hd_read_mmap
int hd_read_mmap(hd_data_t *hd_data, char *name, unsigned char *buf, off_t start, unsigned size)
Definition: hd.c:5866
s_hd_t::sub_vendor
hd_id_t sub_vendor
Subvendor id and name.
Definition: hd.h:2267
memory_range_t::data
unsigned char * data
actual data
Definition: hd.h:440
s_hd_t::vendor
hd_id_t vendor
Vendor id and name.
Definition: hd.h:2249
hd_id_t::name
char * name
Name (if any) that corresponds to hd_id_t::id.
Definition: hd.h:398
res_mem_t::access
unsigned access
enum access_flags
Definition: hd.h:1692
hd_int.h
vbe_mode_info_s::fb_start
unsigned fb_start
frame buffer start address (if any)
Definition: hd.h:470
res_phys_mem
@ res_phys_mem
Definition: hd.h:1635
bios_info_t::ser_port0
unsigned ser_port0
Definition: hd.h:1342
vbe_info_t::product_name
char * product_name
product name
Definition: hd.h:493
pr_bios
@ pr_bios
Definition: hd.h:111
smp_info_t::prod_id
char prod_id[13]
product id
Definition: hd.h:456
hd_data
static hd_data_t * hd_data
Definition: pppoe.c:29
vbe_info_t::memory
unsigned memory
in bytes
Definition: hd.h:489
bios_info_t::lcd
struct bios_info_t::@5 lcd
vbe_info_t::product_revision
char * product_revision
product revision
Definition: hd.h:494
hd_data_t::smbios
hd_smbios_t * smbios
(Internal) smbios data
Definition: hd.h:2717
bios_info_t::vendor
char * vendor
Definition: hd.h:1361
vbe_info_t
VESA BIOS extensions information Also includes a VESA mode list.
Definition: hd.h:485
add_res_entry
hd_res_t * add_res_entry(hd_res_t **res, hd_res_t *new_res)
Definition: hd.c:1769
vbe_info_t::oem_name
char * oem_name
oem name
Definition: hd.h:491
xsize
unsigned short xsize
Definition: ibm-notebooks.h:4
detect_smp_bios
int detect_smp_bios(hd_data_t *hd_data)
bios_info_t::ser_port2
unsigned ser_port2
Definition: hd.h:1342
hd_data_t::klog
str_list_t * klog
(Internal) kernel log
Definition: hd.h:2695
bios_info_t
bios data (ix86)
Definition: hd.h:1333
s_hd_t::revision
hd_id_t revision
Revision id or string.
Definition: hd.h:2282
vbe_info_t::fb_start
unsigned fb_start
!= 0 if framebuffer is supported
Definition: hd.h:490
res_phys_mem_t::range
uint64_t range
Definition: hd.h:1699
res_mem_t::enabled
unsigned enabled
0: disabled, 1 enabled
Definition: hd.h:1691
s_str_list_t::add_str_list
str_list_t * add_str_list(str_list_t **sl, char *str)
Definition: hd.c:2479
smbios_processor_t::pr_type
hd_id_t pr_type
processor type
Definition: hd.h:649
sm_end
@ sm_end
Definition: hd.h:541
bios_info_t::ser_port1
unsigned ser_port1
Definition: hd.h:1342
TAG_SPECIAL
#define TAG_SPECIAL
Internally used ids.
Definition: hd.h:86
sc_int_bios
@ sc_int_bios
Definition: hd.h:222
vbe_info_t::vendor_name
char * vendor_name
vendor name
Definition: hd.h:492
smp_info_t::mpconfig
unsigned mpconfig
MP config table.
Definition: hd.h:452
bios_info_t::vbe_video_mem
unsigned vbe_video_mem
Definition: hd.h:1340
res_framebuffer_t::height
unsigned height
in pixel
Definition: hd.h:1780
bios_info_t::led
struct bios_info_t::@7 led
hd_data_t
Holds all data accumulated during hardware probing.
Definition: hd.h:2604
new_mem
void * new_mem(size_t size)
Definition: hd.c:1535
u_hd_smbios_t::mouse
smbios_mouse_t mouse
Definition: hd.h:970
sc_fb_vesa
@ sc_fb_vesa
Definition: hd.h:188
smp_info_t::oem_id
char oem_id[9]
oem id
Definition: hd.h:455
width
unsigned short width
Definition: ibm-notebooks.h:2
bios_info_t::par_port0
unsigned par_port0
Definition: hd.h:1343
smbios_processor_t::cpu_status
hd_id_t cpu_status
cpu status
Definition: hd.h:657
s_str_list_t::str
char * str
Some string data.
Definition: hd.h:408
free_mem
void * free_mem(void *p)
Definition: hd.c:1594
hd_detail_t::bios
hd_detail_bios_t bios
Definition: hd.h:2148
bc_internal
@ bc_internal
Definition: hd.h:164
vbe_mode_info_s
VESA BIOS mode information item.
Definition: hd.h:464
smp_info_t::mpconfig_size
unsigned mpconfig_size
dto, size
Definition: hd.h:453
ysize
unsigned short ysize
Definition: ibm-notebooks.h:5
sm_processor
@ sm_processor
Definition: hd.h:533