2008-09-10 18:07:03 +08:00
|
|
|
#ifndef _PSYCHO_COMMON_H
|
|
|
|
#define _PSYCHO_COMMON_H
|
|
|
|
|
2008-09-10 18:52:51 +08:00
|
|
|
enum psycho_error_type {
|
|
|
|
UE_ERR, CE_ERR, PCI_ERR
|
|
|
|
};
|
|
|
|
|
|
|
|
extern void psycho_check_iommu_error(struct pci_pbm_info *pbm,
|
|
|
|
unsigned long afsr,
|
|
|
|
unsigned long afar,
|
|
|
|
enum psycho_error_type type);
|
|
|
|
|
|
|
|
extern irqreturn_t psycho_pcierr_intr(int irq, void *dev_id);
|
|
|
|
|
2008-09-10 18:07:03 +08:00
|
|
|
extern int psycho_iommu_init(struct pci_pbm_info *pbm, int tsbsize,
|
|
|
|
u32 dvma_offset, u32 dma_mask,
|
|
|
|
unsigned long write_complete_offset);
|
|
|
|
|
2008-09-10 18:15:56 +08:00
|
|
|
extern void psycho_pbm_init_common(struct pci_pbm_info *pbm,
|
|
|
|
struct of_device *op,
|
|
|
|
const char *chip_name, int chip_type);
|
|
|
|
|
2008-09-10 18:07:03 +08:00
|
|
|
#endif /* _PSYCHO_COMMON_H */
|