Full support for Ginger Console
[linux-ginger.git] / arch / sparc / include / asm / pci_32.h
blobe769f668a4b534653cbc9505e4831468b2846d8d
1 #ifndef __SPARC_PCI_H
2 #define __SPARC_PCI_H
4 #ifdef __KERNEL__
6 #include <linux/dma-mapping.h>
8 /* 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.
12 #define pcibios_assign_all_busses() 0
14 #define PCIBIOS_MIN_IO 0UL
15 #define PCIBIOS_MIN_MEM 0UL
17 #define PCI_IRQ_NONE 0xffffffff
19 static inline void pcibios_set_master(struct pci_dev *dev)
21 /* No special bus mastering setup handling */
24 static inline void pcibios_penalize_isa_irq(int irq, int active)
26 /* We don't do dynamic PCI IRQ allocation */
29 /* Dynamic DMA mapping stuff.
31 #define PCI_DMA_BUS_IS_PHYS (0)
33 struct pci_dev;
35 /* pci_unmap_{single,page} is not a nop, thus... */
36 #define DECLARE_PCI_UNMAP_ADDR(ADDR_NAME) \
37 dma_addr_t ADDR_NAME;
38 #define DECLARE_PCI_UNMAP_LEN(LEN_NAME) \
39 __u32 LEN_NAME;
40 #define pci_unmap_addr(PTR, ADDR_NAME) \
41 ((PTR)->ADDR_NAME)
42 #define pci_unmap_addr_set(PTR, ADDR_NAME, VAL) \
43 (((PTR)->ADDR_NAME) = (VAL))
44 #define pci_unmap_len(PTR, LEN_NAME) \
45 ((PTR)->LEN_NAME)
46 #define pci_unmap_len_set(PTR, LEN_NAME, VAL) \
47 (((PTR)->LEN_NAME) = (VAL))
49 #ifdef CONFIG_PCI
50 static inline void pci_dma_burst_advice(struct pci_dev *pdev,
51 enum pci_dma_burst_strategy *strat,
52 unsigned long *strategy_parameter)
54 *strat = PCI_DMA_BURST_INFINITY;
55 *strategy_parameter = ~0UL;
57 #endif
59 struct device_node;
60 extern struct device_node *pci_device_to_OF_node(struct pci_dev *pdev);
62 #endif /* __KERNEL__ */
64 /* generic pci stuff */
65 #include <asm-generic/pci.h>
67 #endif /* __SPARC_PCI_H */