hd_data_t Struct Reference
[Public interface]

Holds all data accumulated during hardware probing. More...

#include <hd.h>


Data Fields

hd_thd
 Current hardware list.
void(* progress )(char *pos, char *msg)
 A progress indicator.
char * log
 Log messages.
unsigned debug
 Debug flags.
struct hd_data_t::flag_struct flags
 Special flags.
str_list_tonly
 Concentrate on these devices.
unsigned char probe [(pr_all+7)/8]
 (Internal) bitmask of probing features.
unsigned char probe_set [(pr_all+7)/8]
 (Iternal) bitmask of probing features that will always be set.
unsigned char probe_clr [(pr_all+7)/8]
 (Internal) bitmask of probing features that will always be reset.
unsigned last_idx
 (Internal) index of the last hd entry generated
unsigned module
 (Internal) the current probing module we are in
enum boot_arch boot
 (Internal) boot method
hd_told_hd
 (Internal) old (outdated) entries (if you scan more than once)
pci_tpci
 (Internal) raw PCI data
isapnp_tisapnp
 (Internal) raw ISA-PnP data
cdrom_info_tcdrom
 (Internal) CDROM devs from PROC_CDROM_INFO
str_list_tnet
 (Internal) list of network interfaces
str_list_tfloppy
 (Internal) contents of PROC_NVRAM, used by the floppy module
misc_tmisc
 (Internal) data gathered in the misc module
serial_tserial
 (Internal) /proc's serial info
scsi_tscsi
 (Internal) raw SCSI data
ser_device_tser_mouse
 (Internal) info about serial mice
ser_device_tser_modem
 (Internal) info about serial modems
str_list_tcpu
 (Internal) /proc/cpuinfo
str_list_tklog
 (Internal) kernel log
str_list_tproc_usb
 (Internal) /proc/bus/usb info
usb_tusb
 (Internal) usb info
modinfo_tmodinfo_ext
 (Internal) external module info
modinfo_tmodinfo
 (Internal) module info
hddb2_data_thddb2 [2]
 (Internal) hardware database
str_list_tkmods
 (Internal) list of active kernel modules
uint64_t used_irqs
 (Internal) irq usage
uint64_t assigned_irqs
 (Internal) irqs automatically assigned by libhd (for driver info)
memory_range_t bios_rom
 (Internal) BIOS 0xc0000 - 0xfffff
memory_range_t bios_ram
 (Internal) BIOS 0x00400 - 0x004ff
memory_range_t bios_ebda
 (Internal) EBDA
unsigned display
 (Internal) hd_idx of the active (vga) display
unsigned color_code
 (Internal) color, if any
char * cmd_line
 (Internal) kernel command line
str_list_txtra_hd
 (Internal) fake hd entries (for testing)
devtree_tdevtree
 (Internal) prom device tree on ppc
unsigned kernel_version
 (Internal) kernel version
hd_tmanual
 (Internal) hardware config info
str_list_tdisks
 (Internal) disks according to /proc/partitions
str_list_tpartitions
 (Internal) dto, partitions
str_list_tcdroms
 (Internal) cdroms according to PROC_CDROM_INFO
hd_smbios_tsmbios
 (Internal) smbios data
struct {
   unsigned   ok:1
   unsigned   size
   unsigned   used
   void *   data
   int   id
   int   updated
shm
 (Internal) our shm segment
unsigned pci_config_type
 (Internal) PCI config type (1 or 2), 0: unknown
hd_udevinfo_tudevinfo
 (Internal) udev info
hd_sysfsdrv_tsysfsdrv
 (Internal) sysfs driver info
uint64_t sysfsdrv_id
 (Internal) sysfs driver info id
str_list_tscanner_db
 (Internal) list of scanner modules
edd_info_t edd [0x80]
 (Internal) enhanced disk drive data
hal_device_thal
 (Internal) HAL data (if any)

Data Structures

struct  flag_struct
 Special flags. More...


Detailed Description

Holds all data accumulated during hardware probing.

Field Documentation

Current hardware list.

The list of all currently probed hardware. This is not identical with the result of hd_list(). (But a superset of it.)

Referenced by add_hd_entry(), add_input_dev(), add_kma(), add_monitor(), add_pci(), add_pci_data(), add_uml(), add_xpnet(), do_lp(), do_zip(), exists_hd_entry(), free_devtree(), get_block_devs(), get_generic_scsi_devs(), get_input_devices(), get_printer_devs(), get_scsi_tape(), get_serial_devs(), get_serial_modem(), get_serial_mouse(), get_usb_devs(), has_something_attached(), hd_apm_enabled(), hd_base_class_list(), hd_boot_disk(), hd_bus_list(), hd_color(), hd_cpu_arch(), hd_display_adapter(), hd_find_sysfs_id(), hd_find_sysfs_id_devname(), hd_free_hd_data(), hd_get_device_by_id(), hd_get_device_by_idx(), hd_has_pcmcia(), hd_is_uml(), hd_list(), hd_list2(), hd_list_with_status(), hd_list_with_status2(), hd_scan(), hd_scan_braille(), hd_scan_cpu(), hd_scan_dsl(), hd_scan_fb(), hd_scan_floppy(), hd_scan_hal_assign_udi(), hd_scan_int(), hd_scan_isdn(), hd_scan_manual(), hd_scan_manual2(), hd_scan_misc(), hd_scan_misc2(), hd_scan_monitor(), hd_scan_net(), hd_scan_no_hal(), hd_scan_pppoe(), hd_scan_serial(), hd_scan_with_hal(), hd_scan_wlan(), hd_scan_xtra(), hd_sub_class_list(), hd_usb_support(), int_add_driver_modules(), int_cdrom(), int_devicenames(), int_find_parent(), int_fix_usb_scsi(), int_floppy(), int_hotplug(), int_media_check(), int_modem(), int_mouse(), int_udev(), int_wlan(), kbd_driver(), pcmcia_ctrl_read_data(), read_properties(), remove_hd_entries(), remove_tagged_hd_entries(), and update_irq_usage().

void(* hd_data_t::progress)(char *pos, char *msg)

A progress indicator.

If this callback function is not NULL, it is called at various points and can be used to give some user feedback what we are actually doing. If the debug flag HD_DEB_PROGRESS is set, progress messages are logged.

Parameters:
pos Indicates where we are.
msg Indicates what we are going to do.

Referenced by progress().

unsigned hd_data_t::debug

Debug flags.

Although there exist some debug flag defines this scheme is currently not followed consistently. It is guaranteed however that -1 will give the most log messages and 0 the least.

See also:
Debug flags

Referenced by add_edid_info(), at_cmd(), do_lp(), do_zip(), dump_normal(), get_cmdline(), get_kernel_version(), get_serial_info(), get_serial_modem(), hd_boot_disk(), hd_dump_entry(), hd_scan(), hd_scan_floppy(), hd_scan_misc(), hd_scan_misc2(), hd_scan_modem(), hd_scan_mouse(), hd_scan_serial(), hd_scan_sysfs_pci(), progress(), read_cdroms(), read_cpuinfo(), and read_partitions().

Concentrate on these devices.

List of sysfs ids for devices to look for.

Referenced by hd_free_hd_data(), hd_report_this(), and hd_scan().

unsigned char hd_data_t::probe[(pr_all+7)/8]

unsigned char hd_data_t::probe_set[(pr_all+7)/8]

(Iternal) bitmask of probing features that will always be set.

Referenced by fix_probe_features(), and set_probe_feature().

unsigned char hd_data_t::probe_clr[(pr_all+7)/8]

(Internal) bitmask of probing features that will always be reset.

Referenced by fix_probe_features(), and set_probe_feature().

(Internal) index of the last hd entry generated

Referenced by add_hd_entry(), hd_free_hd_data(), hd_read_config(), and hd_scan().

(Internal) boot method

Referenced by hd_boot_arch(), and read_cpuinfo().

(Internal) old (outdated) entries (if you scan more than once)

Referenced by free_old_hd_entries(), hd_free_hd_data(), and remove_tagged_hd_entries().

(Internal) raw PCI data

Referenced by add_pci(), add_pci_data(), add_pci_entry(), dump_pci_data(), and hd_scan_sysfs_pci().

(Internal) raw ISA-PnP data

Referenced by hd_free_hd_data().

(Internal) CDROM devs from PROC_CDROM_INFO

Referenced by add_cdrom_info(), hd_scan_sysfs_block(), and read_cdroms().

(Internal) list of network interfaces

Referenced by hd_free_hd_data(), and hd_scan_net().

(Internal) contents of PROC_NVRAM, used by the floppy module

Referenced by dump_floppy_data(), hd_free_hd_data(), and hd_scan_floppy().

(Internal) data gathered in the misc module

Referenced by dump_misc_data(), dump_misc_proc_data(), hd_free_hd_data(), hd_scan_misc(), hd_scan_misc2(), and update_irq_usage().

(Internal) /proc's serial info

Referenced by dump_serial_data(), get_serial_info(), and hd_scan_serial().

(Internal) raw SCSI data

(Internal) /proc/cpuinfo

Referenced by dump_cpu_data(), hd_free_hd_data(), hd_scan_cpu(), hd_scan_sys(), and read_cpuinfo().

(Internal) /proc/bus/usb info

Referenced by hd_free_hd_data(), and hd_scan_sysfs_usb().

(Internal) usb info

Referenced by hd_scan_sysfs_usb().

(Internal) external module info

Referenced by hd_free_hd_data(), hddb_add_info(), and hddb_init_pci().

(Internal) module info

Referenced by hd_free_hd_data(), hddb_add_info(), and hddb_init_pci().

(Internal) hardware database

Referenced by hd_free_hd_data(), hd_read_config(), hddb_init(), hddb_init_external(), and hddb_search().

(Internal) list of active kernel modules

Referenced by hd_free_hd_data(), hd_scan(), and read_kmods().

(Internal) irq usage

Referenced by hd_scan(), isdn_driver(), and update_irq_usage().

(Internal) irqs automatically assigned by libhd (for driver info)

Referenced by isdn_driver().

(Internal) BIOS 0xc0000 - 0xfffff

Referenced by hd_free_hd_data(), and isdn_driver().

(Internal) BIOS 0x00400 - 0x004ff

Referenced by hd_free_hd_data(), and hd_smp_support().

(Internal) EBDA

Referenced by hd_free_hd_data().

(Internal) hd_idx of the active (vga) display

Referenced by hd_display_adapter(), and hd_scan_misc2().

(Internal) color, if any

Referenced by hd_color(), and read_cpuinfo().

(Internal) kernel command line

Referenced by get_cmdline(), and hd_free_hd_data().

(Internal) fake hd entries (for testing)

Referenced by get_probe_env(), hd_free_hd_data(), and hd_scan_xtra().

(Internal) prom device tree on ppc

Referenced by free_devtree(), hd_free_hd_data(), hd_scan_monitor(), and hd_smp_support().

(Internal) kernel version

Referenced by do_lp(), and get_kernel_version().

(Internal) hardware config info

Referenced by hd_free_hd_data(), and hd_scan_manual().

(Internal) disks according to /proc/partitions

Referenced by get_block_devs(), hd_free_hd_data(), hd_scan_sysfs_block(), and read_partitions().

(Internal) dto, partitions

Referenced by add_partitions(), hd_free_hd_data(), hd_scan_sysfs_block(), and read_partitions().

(Internal) cdroms according to PROC_CDROM_INFO

Referenced by get_block_devs(), hd_free_hd_data(), hd_scan_sysfs_block(), read_cdroms(), and read_partitions().

(Internal) smbios data

Referenced by hd_free_hd_data(), smbios_dump(), and smbios_parse().

unsigned hd_data_t::ok

unsigned hd_data_t::size

Referenced by hd_shm_add(), and hd_shm_init().

unsigned hd_data_t::used

Referenced by hd_shm_init().

Referenced by hd_fork(), and hd_shm_clean().

struct { ... } hd_data_t::shm

(Internal) PCI config type (1 or 2), 0: unknown

(Internal) udev info

Referenced by hd_free_hd_data(), int_udev(), and read_udevinfo().

(Internal) sysfs driver info id

Referenced by hd_sysfs_driver_list().

(Internal) list of scanner modules

Referenced by get_usb_devs(), and hd_free_hd_data().

(Internal) enhanced disk drive data

Referenced by hd_free_hd_data().


The documentation for this struct was generated from the following file: