Annotation of embedaddon/pciutils/lspci.h, revision 1.1

1.1     ! misho       1: /*
        !             2:  *     The PCI Utilities -- List All PCI Devices
        !             3:  *
        !             4:  *     Copyright (c) 1997--2010 Martin Mares <mj@ucw.cz>
        !             5:  *
        !             6:  *     Can be freely distributed and used under the terms of the GNU GPL.
        !             7:  */
        !             8: 
        !             9: #define PCIUTILS_LSPCI
        !            10: #include "pciutils.h"
        !            11: 
        !            12: /*
        !            13:  *  If we aren't being compiled by GCC, use xmalloc() instead of alloca().
        !            14:  *  This increases our memory footprint, but only slightly since we don't
        !            15:  *  use alloca() much.
        !            16:  */
        !            17: #if defined (__FreeBSD__) || defined (__NetBSD__) || defined (__OpenBSD__) || defined (__DragonFly__)
        !            18: /* alloca() is defined in stdlib.h */
        !            19: #elif defined(__GNUC__) && !defined(PCI_OS_WINDOWS)
        !            20: #include <alloca.h>
        !            21: #else
        !            22: #undef alloca
        !            23: #define alloca xmalloc
        !            24: #endif
        !            25: 
        !            26: /*** Options ***/
        !            27: 
        !            28: extern int verbose;
        !            29: extern struct pci_filter filter;
        !            30: extern char *opt_pcimap;
        !            31: 
        !            32: /*** PCI devices and access to their config space ***/
        !            33: 
        !            34: struct device {
        !            35:   struct device *next;
        !            36:   struct pci_dev *dev;
        !            37:   unsigned int config_cached, config_bufsize;
        !            38:   byte *config;                                /* Cached configuration space data */
        !            39:   byte *present;                       /* Maps which configuration bytes are present */
        !            40: };
        !            41: 
        !            42: extern struct device *first_dev;
        !            43: extern struct pci_access *pacc;
        !            44: 
        !            45: struct device *scan_device(struct pci_dev *p);
        !            46: void show_device(struct device *d);
        !            47: 
        !            48: int config_fetch(struct device *d, unsigned int pos, unsigned int len);
        !            49: u32 get_conf_long(struct device *d, unsigned int pos);
        !            50: word get_conf_word(struct device *d, unsigned int pos);
        !            51: byte get_conf_byte(struct device *d, unsigned int pos);
        !            52: 
        !            53: void get_subid(struct device *d, word *subvp, word *subdp);
        !            54: 
        !            55: /* Useful macros for decoding of bits and bit fields */
        !            56: 
        !            57: #define FLAG(x,y) ((x & y) ? '+' : '-')
        !            58: #define BITS(x,at,width) (((x) >> (at)) & ((1 << (width)) - 1))
        !            59: #define TABLE(tab,x,buf) ((x) < sizeof(tab)/sizeof((tab)[0]) ? (tab)[x] : (sprintf((buf), "??%d", (x)), (buf)))
        !            60: 
        !            61: /* ls-vpd.c */
        !            62: 
        !            63: void cap_vpd(struct device *d);
        !            64: 
        !            65: /* ls-caps.c */
        !            66: 
        !            67: void show_caps(struct device *d);
        !            68: 
        !            69: /* ls-ecaps.c */
        !            70: 
        !            71: void show_ext_caps(struct device *d);
        !            72: 
        !            73: /* ls-kernel.c */
        !            74: 
        !            75: void show_kernel_machine(struct device *d UNUSED);
        !            76: void show_kernel(struct device *d UNUSED);
        !            77: 
        !            78: /* ls-tree.c */
        !            79: 
        !            80: void show_forest(void);
        !            81: 
        !            82: /* ls-map.c */
        !            83: 
        !            84: void map_the_bus(void);

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>