2010-02-10 17:20:12 +08:00
|
|
|
#ifndef __BUS_NUMA_H
|
|
|
|
#define __BUS_NUMA_H
|
2009-10-05 12:54:24 +08:00
|
|
|
/*
|
|
|
|
* sub bus (transparent) will use entres from 3 to store extra from
|
2010-02-24 01:24:36 +08:00
|
|
|
* root, so need to make sure we have enough slot there.
|
2009-10-05 12:54:24 +08:00
|
|
|
*/
|
2012-04-03 09:31:54 +08:00
|
|
|
struct pci_root_res {
|
|
|
|
struct list_head list;
|
|
|
|
struct resource res;
|
|
|
|
};
|
|
|
|
|
2009-10-05 12:54:24 +08:00
|
|
|
struct pci_root_info {
|
2012-04-03 09:31:54 +08:00
|
|
|
struct list_head list;
|
2009-10-05 12:54:24 +08:00
|
|
|
char name[12];
|
2012-04-03 09:31:54 +08:00
|
|
|
struct list_head resources;
|
2009-10-05 12:54:24 +08:00
|
|
|
int bus_min;
|
|
|
|
int bus_max;
|
|
|
|
int node;
|
|
|
|
int link;
|
|
|
|
};
|
|
|
|
|
2012-04-03 09:31:54 +08:00
|
|
|
extern struct list_head pci_root_infos;
|
|
|
|
struct pci_root_info *alloc_pci_root_info(int bus_min, int bus_max,
|
|
|
|
int node, int link);
|
2010-02-10 17:20:08 +08:00
|
|
|
extern void update_res(struct pci_root_info *info, resource_size_t start,
|
|
|
|
resource_size_t end, unsigned long flags, int merge);
|
2009-10-05 12:54:24 +08:00
|
|
|
#endif
|