OpenCores
URL https://opencores.org/ocsvn/hf-risc/hf-risc/trunk

Subversion Repositories hf-risc

[/] [hf-risc/] [trunk/] [tools/] [riscv-gnu-toolchain-master/] [linux-headers/] [include/] [linux/] [pci.h] - Blame information for rev 13

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 13 serginhofr
/*
2
 *      pci.h
3
 *
4
 *      PCI defines and function prototypes
5
 *      Copyright 1994, Drew Eckhardt
6
 *      Copyright 1997--1999 Martin Mares <mj@ucw.cz>
7
 *
8
 *      For more information, please consult the following manuals (look at
9
 *      http://www.pcisig.com/ for how to get them):
10
 *
11
 *      PCI BIOS Specification
12
 *      PCI Local Bus Specification
13
 *      PCI to PCI Bridge Specification
14
 *      PCI System Design Guide
15
 */
16
 
17
#ifndef LINUX_PCI_H
18
#define LINUX_PCI_H
19
 
20
#include <linux/pci_regs.h>     /* The pci register defines */
21
 
22
/*
23
 * The PCI interface treats multi-function devices as independent
24
 * devices.  The slot/function address of each device is encoded
25
 * in a single byte as follows:
26
 *
27
 *      7:3 = slot
28
 *      2:0 = function
29
 */
30
#define PCI_DEVFN(slot, func)   ((((slot) & 0x1f) << 3) | ((func) & 0x07))
31
#define PCI_SLOT(devfn)         (((devfn) >> 3) & 0x1f)
32
#define PCI_FUNC(devfn)         ((devfn) & 0x07)
33
 
34
/* Ioctls for /proc/bus/pci/X/Y nodes. */
35
#define PCIIOC_BASE             ('P' << 24 | 'C' << 16 | 'I' << 8)
36
#define PCIIOC_CONTROLLER       (PCIIOC_BASE | 0x00)    /* Get controller for PCI device. */
37
#define PCIIOC_MMAP_IS_IO       (PCIIOC_BASE | 0x01)    /* Set mmap state to I/O space. */
38
#define PCIIOC_MMAP_IS_MEM      (PCIIOC_BASE | 0x02)    /* Set mmap state to MEM space. */
39
#define PCIIOC_WRITE_COMBINE    (PCIIOC_BASE | 0x03)    /* Enable/disable write-combining. */
40
 
41
#endif /* LINUX_PCI_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.