David S. Miller | a21cff3 | 2008-09-10 03:07:03 -0700 | [diff] [blame] | 1 | #ifndef _PSYCHO_COMMON_H |
| 2 | #define _PSYCHO_COMMON_H |
| 3 | |
David S. Miller | e6e0037 | 2008-09-10 03:52:51 -0700 | [diff] [blame^] | 4 | enum psycho_error_type { |
| 5 | UE_ERR, CE_ERR, PCI_ERR |
| 6 | }; |
| 7 | |
| 8 | extern void psycho_check_iommu_error(struct pci_pbm_info *pbm, |
| 9 | unsigned long afsr, |
| 10 | unsigned long afar, |
| 11 | enum psycho_error_type type); |
| 12 | |
| 13 | extern irqreturn_t psycho_pcierr_intr(int irq, void *dev_id); |
| 14 | |
David S. Miller | a21cff3 | 2008-09-10 03:07:03 -0700 | [diff] [blame] | 15 | extern int psycho_iommu_init(struct pci_pbm_info *pbm, int tsbsize, |
| 16 | u32 dvma_offset, u32 dma_mask, |
| 17 | unsigned long write_complete_offset); |
| 18 | |
David S. Miller | 1c03a55 | 2008-09-10 03:15:56 -0700 | [diff] [blame] | 19 | extern void psycho_pbm_init_common(struct pci_pbm_info *pbm, |
| 20 | struct of_device *op, |
| 21 | const char *chip_name, int chip_type); |
| 22 | |
David S. Miller | a21cff3 | 2008-09-10 03:07:03 -0700 | [diff] [blame] | 23 | #endif /* _PSYCHO_COMMON_H */ |