Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
sparc
include
asm
pbm.h
Go to the documentation of this file.
1
/*
2
*
3
* pbm.h: PCI bus module pseudo driver software state
4
* Adopted from sparc64 by V. Roganov and G. Raiko
5
*
6
* Original header:
7
* pbm.h: U2P PCI bus module pseudo driver software state.
8
*
9
* Copyright (C) 1997 David S. Miller (
[email protected]
)
10
*
11
* To put things into perspective, consider sparc64 with a few PCI controllers.
12
* Each type would have an own structure, with instances related one to one.
13
* We have only pcic on sparc, but we want to be compatible with sparc64 pbm.h.
14
* All three represent different abstractions.
15
* pci_bus - Linux PCI subsystem view of a PCI bus (including bridged buses)
16
* pbm - Arch-specific view of a PCI bus (sparc or sparc64)
17
* pcic - Chip-specific information for PCIC.
18
*/
19
20
#ifndef __SPARC_PBM_H
21
#define __SPARC_PBM_H
22
23
#include <linux/pci.h>
24
#include <asm/oplib.h>
25
#include <asm/prom.h>
26
27
struct
linux_pbm_info
{
28
int
prom_node
;
29
char
prom_name
[64];
30
/* struct linux_prom_pci_ranges pbm_ranges[PROMREG_MAX]; */
31
/* int num_pbm_ranges; */
32
33
/* Now things for the actual PCI bus probes. */
34
unsigned
int
pci_first_busno
;
/* Can it be nonzero? */
35
struct
pci_bus
*
pci_bus
;
/* Was inline, MJ allocs now */
36
};
37
38
/* PCI devices which are not bridges have this placed in their pci_dev
39
* sysdata member. This makes OBP aware PCI device drivers easier to
40
* code.
41
*/
42
struct
pcidev_cookie
{
43
struct
linux_pbm_info
*
pbm
;
44
struct
device_node
*
prom_node
;
45
};
46
47
#endif
/* !(__SPARC_PBM_H) */
Generated on Thu Jan 10 2013 13:18:12 for Linux Kernel by
1.8.2