Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
tsi108_pci.c File Reference
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/pci.h>
#include <linux/irq.h>
#include <linux/interrupt.h>
#include <asm/byteorder.h>
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/uaccess.h>
#include <asm/machdep.h>
#include <asm/pci-bridge.h>
#include <asm/tsi108.h>
#include <asm/tsi108_pci.h>
#include <asm/tsi108_irq.h>
#include <asm/prom.h>

Go to the source code of this file.

Macros

#define DBG(x...)
 
#define tsi_mk_config_addr(bus, devfunc, offset)   ((((bus)<<16) | ((devfunc)<<8) | (offset & 0xfc)) + tsi108_pci_cfg_base)
 
#define __tsi108_read_pci_config(x, addr, op)
 

Functions

u32 get_vir_csrbase (void)
 
u32 tsi108_read_reg (u32 reg_offset)
 
void tsi108_write_reg (u32 reg_offset, u32 val)
 
int tsi108_direct_write_config (struct pci_bus *bus, unsigned int devfunc, int offset, int len, u32 val)
 
void tsi108_clear_pci_error (u32 pci_cfg_base)
 
int tsi108_direct_read_config (struct pci_bus *bus, unsigned int devfn, int offset, int len, u32 *val)
 
void tsi108_clear_pci_cfg_error (void)
 
int __init tsi108_setup_pci (struct device_node *dev, u32 cfg_phys, int primary)
 
void __init tsi108_pci_int_init (struct device_node *node)
 
void tsi108_irq_cascade (unsigned int irq, struct irq_desc *desc)
 

Variables

u32 tsi108_pci_cfg_base
 
u32 tsi108_csr_vir_base
 

Macro Definition Documentation

#define __tsi108_read_pci_config (   x,
  addr,
  op 
)
Value:
__asm__ __volatile__( \
" "op" %0,0,%1\n" \
"1: eieio\n" \
"2:\n" \
".section .fixup,\"ax\"\n" \
"3: li %0,-1\n" \
" b 2b\n" \
".section __ex_table,\"a\"\n" \
" .align 2\n" \
" .long 1b,3b\n" \
".text" \
: "=r"(x) : "r"(addr))

Definition at line 132 of file tsi108_pci.c.

#define DBG (   x...)

Definition at line 45 of file tsi108_pci.c.

#define tsi_mk_config_addr (   bus,
  devfunc,
  offset 
)    ((((bus)<<16) | ((devfunc)<<8) | (offset & 0xfc)) + tsi108_pci_cfg_base)

Definition at line 48 of file tsi108_pci.c.

Function Documentation

u32 get_vir_csrbase ( void  )

Definition at line 58 of file tsi108_dev.c.

void tsi108_clear_pci_cfg_error ( void  )

Definition at line 188 of file tsi108_pci.c.

void tsi108_clear_pci_error ( u32  pci_cfg_base)

Definition at line 97 of file tsi108_pci.c.

int tsi108_direct_read_config ( struct pci_bus bus,
unsigned int  devfn,
int  offset,
int  len,
u32 val 
)

Definition at line 147 of file tsi108_pci.c.

int tsi108_direct_write_config ( struct pci_bus bus,
unsigned int  devfunc,
int  offset,
int  len,
u32  val 
)

Definition at line 61 of file tsi108_pci.c.

void tsi108_irq_cascade ( unsigned int  irq,
struct irq_desc desc 
)

Definition at line 431 of file tsi108_pci.c.

void __init tsi108_pci_int_init ( struct device_node node)

Definition at line 418 of file tsi108_pci.c.

u32 tsi108_read_reg ( u32  reg_offset)
int __init tsi108_setup_pci ( struct device_node dev,
u32  cfg_phys,
int  primary 
)

Definition at line 198 of file tsi108_pci.c.

void tsi108_write_reg ( u32  reg_offset,
u32  val 
)

Variable Documentation

u32 tsi108_csr_vir_base

Definition at line 53 of file tsi108_pci.c.

u32 tsi108_pci_cfg_base

Definition at line 51 of file tsi108_pci.c.