#ifndef SBUS_PROBE_H
#define SBUS_PROBE_H


/* these are the types of devices we can probe */
enum sbusClass {SBUS_ETHERNET, SBUS_SCSI, SBUS_VIDEO, SBUS_OTHER, SBUS_UNSET};

struct sbusFB {
    int                width;
    int               height;
    int                 freq;
    int              monitor;
};

struct sbusDevice {
    enum sbusClass     class;      /* type */
    int                nhits;      /* number of matches in vendor/dev id db */
    char              **name;      /* array of names of SBUS cards - malloc! */
    char            **module;      /* array of modules to try - malloc! */
    struct sbusFB        *fb;	   /* array of framebuffer infos - malloc! */
};

void sbusFreeDevice( struct sbusDevice *p );
int sbusProbeDevice(enum sbusClass type, struct sbusDevice ***devs);

#endif
