diff options
Diffstat (limited to 'mdk-stage1/probing.h')
| -rw-r--r-- | mdk-stage1/probing.h | 39 |
1 files changed, 33 insertions, 6 deletions
diff --git a/mdk-stage1/probing.h b/mdk-stage1/probing.h index d2bf1e567..702c9d056 100644 --- a/mdk-stage1/probing.h +++ b/mdk-stage1/probing.h @@ -1,7 +1,7 @@ /* - * Guillaume Cottenceau (gc@mandrakesoft.com) + * Guillaume Cottenceau (gc) * - * Copyright 2000 MandrakeSoft + * Copyright 2000 Mandriva * * This software may be freely redistributed under the terms of the GNU * public license. @@ -24,13 +24,40 @@ enum media_type { CDROM, DISK, FLOPPY, TAPE, UNKNOWN_MEDIA }; -enum driver_type { SCSI_ADAPTERS, NETWORK_DEVICES, USB_CONTROLLERS, ANY_DRIVER_TYPE }; +enum driver_type { MEDIA_ADAPTERS, NETWORK_DEVICES, USB_CONTROLLERS, + VIRTIO_DEVICES, ANY_DRIVER_TYPE }; -void get_medias(enum media_type media, char *** names, char *** models); +enum media_bus { BUS_IDE, BUS_SCSI, BUS_USB, BUS_PCMCIA, BUS_ANY }; + +#define VIRTIO_PCI_VENDOR 0x1af4 +#define VIRTIO_ID_NET 0x0001 +#define VIRTIO_ID_BLOCK 0x0002 +#define VIRTIO_ID_BALLOON 0x0005 + +void find_media(enum media_bus bus); +void get_medias(enum media_type media, char *** names, char *** models, enum media_bus bus); char ** get_net_devices(void); -void net_discovered_interface(char * intf_name); char * get_net_intf_description(char * intf_name); -void prepare_intf_descr(const char * intf_descr); +void probe_that_type(enum driver_type type, enum media_bus bus); + +/* Make sure the MATCH_ALL value is greater than all possible values + for subvendor & subdevice: this simplifies the orderer */ +#define PCITABLE_MATCH_ALL 0x10000 +struct pcitable_entry { + /* some bits stolen from pci-resource/pci-ids.h + * FIXME: split pci-ids.h into pci-ids.c and pci-ids.h so that the header can be re-used + */ + unsigned short vendor; /* PCI vendor id */ + unsigned short device; /* PCI device id */ + unsigned int subvendor; /* PCI subvendor id */ + unsigned int subdevice; /* PCI subdevice id */ + char module[20]; /* module to load */ + char description[100]; /* PCI human readable description */ +}; +extern struct pcitable_entry *detected_devices; +extern int detected_devices_len; +void probing_detect_devices(); +void probing_destroy(void); #endif |
