Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
pci-octeon.c File Reference
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/pci.h>
#include <linux/interrupt.h>
#include <linux/time.h>
#include <linux/delay.h>
#include <linux/swiotlb.h>
#include <asm/time.h>
#include <asm/octeon/octeon.h>
#include <asm/octeon/cvmx-npi-defs.h>
#include <asm/octeon/cvmx-pci-defs.h>
#include <asm/octeon/pci-octeon.h>
#include <dma-coherence.h>

Go to the source code of this file.

Data Structures

union  octeon_pci_address
 

Macros

#define USE_OCTEON_INTERNAL_ARBITER
 
#define OCTEON_PCI_IOSPACE_BASE   0x80011a0400000000ull
 
#define OCTEON_PCI_IOSPACE_SIZE   (1ull<<32)
 
#define OCTEON_PCI_MEMSPACE_OFFSET   (0x00011b0000000000ull)
 

Functions

int __init pcibios_map_irq (const struct pci_dev *dev, u8 slot, u8 pin)
 
int pcibios_plat_dev_init (struct pci_dev *dev)
 
const charocteon_get_pci_interrupts (void)
 
int __init octeon_pci_pcibios_map_irq (const struct pci_dev *dev, u8 slot, u8 pin)
 
 arch_initcall (octeon_pci_setup)
 

Variables

u64 octeon_bar1_pci_phys
 
int __initconst(* octeon_pcibios_map_irq )(const struct pci_dev *dev, u8 slot, u8 pin)
 
enum octeon_dma_bar_type octeon_dma_bar_type = OCTEON_DMA_BAR_TYPE_INVALID
 

Macro Definition Documentation

#define OCTEON_PCI_IOSPACE_BASE   0x80011a0400000000ull

Definition at line 32 of file pci-octeon.c.

#define OCTEON_PCI_IOSPACE_SIZE   (1ull<<32)

Definition at line 33 of file pci-octeon.c.

#define OCTEON_PCI_MEMSPACE_OFFSET   (0x00011b0000000000ull)

Definition at line 36 of file pci-octeon.c.

#define USE_OCTEON_INTERNAL_ARBITER

Definition at line 25 of file pci-octeon.c.

Function Documentation

arch_initcall ( octeon_pci_setup  )
const char* octeon_get_pci_interrupts ( void  )

Return the mapping of PCI device number to IRQ line. Each character in the return string represents the interrupt line for the device at that position. Device 1 maps to the first character, etc. The characters A-D are used for PCI interrupts.

Returns PCI interrupt mapping

Definition at line 183 of file pci-octeon.c.

int __init octeon_pci_pcibios_map_irq ( const struct pci_dev dev,
u8  slot,
u8  pin 
)

Map a PCI device to the appropriate interrupt line

: The Linux PCI device structure for the device to map : The slot number for this device on BUS 0. Linux enumerates through all the bridges and figures out the slot on Bus 0 where this device eventually hooks to. : The PCI interrupt pin read from the device, then swizzled as it goes through each bridge. Returns Interrupt number for the device

Definition at line 234 of file pci-octeon.c.

int __init pcibios_map_irq ( const struct pci_dev dev,
u8  slot,
u8  pin 
)

Map a PCI device to the appropriate interrupt line

: The Linux PCI device structure for the device to map : The slot number for this device on BUS 0. Linux enumerates through all the bridges and figures out the slot on Bus 0 where this device eventually hooks to. : The PCI interrupt pin read from the device, then swizzled as it goes through each bridge. Returns Interrupt number for the device

Definition at line 76 of file pci-octeon.c.

int pcibios_plat_dev_init ( struct pci_dev dev)

Definition at line 88 of file pci-octeon.c.

Variable Documentation

u64 octeon_bar1_pci_phys

Definition at line 38 of file pci-octeon.c.

Definition at line 63 of file pci-octeon.c.

int __initconst(* octeon_pcibios_map_irq)(const struct pci_dev *dev, u8 slot, u8 pin)

Definition at line 61 of file pci-octeon.c.