2010-09-17 16:03:43 +00:00
|
|
|
#ifndef _ASM_X86_AMD_NB_H
|
|
|
|
#define _ASM_X86_AMD_NB_H
|
2006-06-26 11:56:40 +00:00
|
|
|
|
|
|
|
#include <linux/pci.h>
|
|
|
|
|
|
|
|
extern struct pci_device_id k8_nb_ids[];
|
2009-10-28 23:09:55 +00:00
|
|
|
struct bootnode;
|
2006-06-26 11:56:40 +00:00
|
|
|
|
|
|
|
extern int early_is_k8_nb(u32 value);
|
|
|
|
extern int cache_k8_northbridges(void);
|
|
|
|
extern void k8_flush_garts(void);
|
2009-09-25 22:20:00 +00:00
|
|
|
extern int k8_get_nodes(struct bootnode *nodes);
|
|
|
|
extern int k8_numa_init(unsigned long start_pfn, unsigned long end_pfn);
|
|
|
|
extern int k8_scan_nodes(void);
|
2006-06-26 11:56:40 +00:00
|
|
|
|
2010-09-17 16:02:54 +00:00
|
|
|
struct k8_northbridge_info {
|
|
|
|
u16 num;
|
|
|
|
u8 gart_supported;
|
|
|
|
struct pci_dev **nb_misc;
|
|
|
|
};
|
|
|
|
extern struct k8_northbridge_info k8_northbridges;
|
|
|
|
|
2010-09-17 16:03:43 +00:00
|
|
|
#ifdef CONFIG_AMD_NB
|
2010-04-24 07:56:53 +00:00
|
|
|
|
2009-04-14 17:34:37 +00:00
|
|
|
static inline struct pci_dev *node_to_k8_nb_misc(int node)
|
|
|
|
{
|
2010-09-17 16:02:54 +00:00
|
|
|
return (node < k8_northbridges.num) ? k8_northbridges.nb_misc[node] : NULL;
|
2009-04-14 17:34:37 +00:00
|
|
|
}
|
2010-04-24 07:56:53 +00:00
|
|
|
|
2009-04-09 13:16:17 +00:00
|
|
|
#else
|
2010-04-24 07:56:53 +00:00
|
|
|
|
2009-04-14 17:34:37 +00:00
|
|
|
static inline struct pci_dev *node_to_k8_nb_misc(int node)
|
|
|
|
{
|
|
|
|
return NULL;
|
|
|
|
}
|
2009-04-09 13:16:17 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
|
2010-09-17 16:03:43 +00:00
|
|
|
#endif /* _ASM_X86_AMD_NB_H */
|