GNU Linux-libre 4.14.266-gnu1
[releases.git] / arch / cris / include / asm / pci.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_CRIS_PCI_H
3 #define __ASM_CRIS_PCI_H
4
5
6 #ifdef __KERNEL__
7 #include <linux/mm.h>           /* for struct page */
8
9 /* Can be used to override the logic in pci_scan_bus for skipping
10    already-configured bus numbers - to be used for buggy BIOSes
11    or architectures with incomplete PCI setup by the loader */
12
13 #define pcibios_assign_all_busses(void) 1
14
15 #define PCIBIOS_MIN_IO          0x1000
16 #define PCIBIOS_MIN_MEM         0x10000000
17
18 #define PCIBIOS_MIN_CARDBUS_IO  0x4000
19
20 void pcibios_config_init(void);
21 struct pci_bus * pcibios_scan_root(int bus);
22
23 void pcibios_set_master(struct pci_dev *dev);
24 struct irq_routing_table *pcibios_get_irq_routing_table(void);
25 int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq);
26
27 /* Dynamic DMA mapping stuff.
28  * i386 has everything mapped statically.
29  */
30
31 #include <linux/types.h>
32 #include <linux/slab.h>
33 #include <linux/scatterlist.h>
34 #include <linux/string.h>
35 #include <asm/io.h>
36
37 struct pci_dev;
38
39 /* The PCI address space does equal the physical memory
40  * address space.  The networking and block device layers use
41  * this boolean for bounce buffer decisions.
42  */
43 #define PCI_DMA_BUS_IS_PHYS     (1)
44
45 #define HAVE_PCI_MMAP
46 #define ARCH_GENERIC_PCI_MMAP_RESOURCE
47
48 #endif /* __KERNEL__ */
49
50 /* generic pci stuff */
51 #include <asm-generic/pci.h>
52
53 #endif /* __ASM_CRIS_PCI_H */