Subversion Repositories Kolibri OS

Rev

Rev 5270 | Rev 6102 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5270 Rev 6082
Line 23... Line 23...
23
#include 
23
#include 
Line 24... Line 24...
24
 
24
 
25
#include 	/* The pci register defines */
25
#include 	/* The pci register defines */
Line -... Line 26...
-
 
26
#include 
-
 
27
 
-
 
28
#include 
-
 
29
 
-
 
30
#if 0
-
 
31
struct device
-
 
32
{
-
 
33
    struct device   *parent;
-
 
34
    void            *driver_data;
-
 
35
};
Line 26... Line 36...
26
#include 
36
 
27
 
37
#endif
Line 202... Line 212...
202
 * devices.  The slot/function address of each device is encoded
212
 * devices.  The slot/function address of each device is encoded
203
 * in a single byte as follows:
213
 * in a single byte as follows:
204
 *
214
 *
205
 *	7:3 = slot
215
 *	7:3 = slot
206
 *	2:0 = function
216
 *	2:0 = function
-
 
217
 *
-
 
218
 * PCI_DEVFN(), PCI_SLOT(), and PCI_FUNC() are defined in uapi/linux/pci.h.
-
 
219
 * In the interest of not exposing interfaces to user-space unnecessarily,
-
 
220
 * the following kernel-only defines are being added here.
207
 */
221
 */
208
#define PCI_DEVFN(slot, func)  ((((slot) & 0x1f) << 3) | ((func) & 0x07))
222
#define PCI_DEVFN(slot, func)  ((((slot) & 0x1f) << 3) | ((func) & 0x07))
209
#define PCI_SLOT(devfn)        (((devfn) >> 3) & 0x1f)
223
#define PCI_SLOT(devfn)        (((devfn) >> 3) & 0x1f)
210
#define PCI_FUNC(devfn)        ((devfn) & 0x07)
224
#define PCI_FUNC(devfn)        ((devfn) & 0x07)
Line 425... Line 439...
425
	unsigned int	wakeup_prepared:1;
439
	unsigned int	wakeup_prepared:1;
426
	unsigned int	runtime_d3cold:1;	/* whether go through runtime
440
	unsigned int	runtime_d3cold:1;	/* whether go through runtime
427
						   D3cold, not set for devices
441
						   D3cold, not set for devices
428
						   powered on/off by the
442
						   powered on/off by the
429
						   corresponding bridge */
443
						   corresponding bridge */
-
 
444
	unsigned int	ignore_hotplug:1;	/* Ignore hotplug events */
430
	unsigned int	d3_delay;	/* D3->D0 transition time in ms */
445
	unsigned int	d3_delay;	/* D3->D0 transition time in ms */
431
	unsigned int	d3cold_delay;	/* D3cold->D0 transition time in ms */
446
	unsigned int	d3cold_delay;	/* D3cold->D0 transition time in ms */
Line 432... Line 447...
432
 
447
 
433
#ifdef CONFIG_PCIEASPM
448
#ifdef CONFIG_PCIEASPM
434
	struct pcie_link_state	*link_state;	/* ASPM link state. */
449
	struct pcie_link_state	*link_state;	/* ASPM link state */
Line 435... Line 450...
435
#endif
450
#endif
436
 
451
 
Line 444... Line 459...
444
     * directly, use the values stored here. They might be different!
459
     * directly, use the values stored here. They might be different!
445
     */
460
     */
446
    unsigned int    irq;
461
    unsigned int    irq;
447
    struct resource resource[DEVICE_COUNT_RESOURCE]; /* I/O and memory regions + expansion ROMs */
462
    struct resource resource[DEVICE_COUNT_RESOURCE]; /* I/O and memory regions + expansion ROMs */
Line -... Line 463...
-
 
463
 
448
 
464
	bool match_driver;		/* Skip attaching driver */
449
    /* These fields are used by common fixups */
465
    /* These fields are used by common fixups */
450
    unsigned int    transparent:1;  /* Transparent PCI bridge */
466
	unsigned int	transparent:1;	/* Subtractive decode PCI bridge */
451
    unsigned int    multifunction:1;/* Part of multi-function device */
467
    unsigned int    multifunction:1;/* Part of multi-function device */
452
    /* keep track of device state */
468
    /* keep track of device state */
453
    unsigned int    is_added:1;
469
    unsigned int    is_added:1;
454
    unsigned int    is_busmaster:1; /* device is busmaster */
470
    unsigned int    is_busmaster:1; /* device is busmaster */
-
 
471
    unsigned int    no_msi:1;   /* device may not use msi */
455
    unsigned int    no_msi:1;   /* device may not use msi */
472
	unsigned int	no_64bit_msi:1; /* device may only use 32-bit MSIs */
456
	unsigned int	block_cfg_access:1;	/* config space access is blocked */
473
	unsigned int	block_cfg_access:1;	/* config space access is blocked */
457
    unsigned int    broken_parity_status:1; /* Device generates false positive parity */
474
    unsigned int    broken_parity_status:1; /* Device generates false positive parity */
458
    unsigned int    irq_reroute_variant:2;  /* device needs IRQ rerouting variant */
475
    unsigned int    irq_reroute_variant:2;  /* device needs IRQ rerouting variant */
459
    unsigned int    msi_enabled:1;
476
    unsigned int    msi_enabled:1;
460
    unsigned int    msix_enabled:1;
477
    unsigned int    msix_enabled:1;
461
	unsigned int	ari_enabled:1;	/* ARI forwarding */
478
	unsigned int	ari_enabled:1;	/* ARI forwarding */
462
    unsigned int    is_managed:1;
-
 
463
	unsigned int	is_pcie:1;	/* Obsolete. Will be removed.
-
 
464
					   Use pci_is_pcie() instead */
479
    unsigned int    is_managed:1;
465
	unsigned int    needs_freset:1; /* Dev requires fundamental reset */
480
	unsigned int    needs_freset:1; /* Dev requires fundamental reset */
466
    unsigned int    state_saved:1;
481
    unsigned int    state_saved:1;
467
    unsigned int    is_physfn:1;
482
    unsigned int    is_physfn:1;
468
    unsigned int    is_virtfn:1;
483
    unsigned int    is_virtfn:1;