blob: b7c092df31340cf146c4301e4f8de1aa39d2a764 [file] [log] [blame]
Sam Ravnborgf5e706a2008-07-17 21:55:51 -07001#ifndef __SPARC_PCI_H
2#define __SPARC_PCI_H
3
4#ifdef __KERNEL__
5
David S. Miller9dc69232008-08-27 19:54:01 -07006#include <linux/dma-mapping.h>
7
Sam Ravnborgf5e706a2008-07-17 21:55:51 -07008/* Can be used to override the logic in pci_scan_bus for skipping
9 * already-configured bus numbers - to be used for buggy BIOSes
10 * or architectures with incomplete PCI setup by the loader.
11 */
12#define pcibios_assign_all_busses() 0
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070013
14#define PCIBIOS_MIN_IO 0UL
15#define PCIBIOS_MIN_MEM 0UL
16
17#define PCI_IRQ_NONE 0xffffffff
18
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070019/* Dynamic DMA mapping stuff.
20 */
21#define PCI_DMA_BUS_IS_PHYS (0)
22
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070023struct pci_dev;
24
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070025#endif /* __KERNEL__ */
26
Daniel Hellstrom26893c12011-05-23 21:04:47 +000027#ifndef CONFIG_LEON_PCI
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070028/* generic pci stuff */
29#include <asm-generic/pci.h>
Daniel Hellstrom26893c12011-05-23 21:04:47 +000030#else
31/*
32 * On LEON PCI Memory space is mapped 1:1 with physical address space.
33 *
34 * I/O space is located at low 64Kbytes in PCI I/O space. The I/O addresses
35 * are converted into CPU addresses to virtual addresses that are mapped with
36 * MMU to the PCI Host PCI I/O space window which are translated to the low
37 * 64Kbytes by the Host controller.
38 */
39
Daniel Hellstrom26893c12011-05-23 21:04:47 +000040static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
41{
42 return PCI_IRQ_NONE;
43}
44#endif
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070045
46#endif /* __SPARC_PCI_H */