Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.20-rc1 104 lines 2.9 kB view raw
1#ifndef __ASM_CRIS_PCI_H 2#define __ASM_CRIS_PCI_H 3 4 5#ifdef __KERNEL__ 6#include <linux/mm.h> /* for struct page */ 7 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 */ 11 12#define pcibios_assign_all_busses(void) 1 13 14extern unsigned long pci_mem_start; 15#define PCIBIOS_MIN_IO 0x1000 16#define PCIBIOS_MIN_MEM 0x10000000 17 18#define PCIBIOS_MIN_CARDBUS_IO 0x4000 19 20void pcibios_config_init(void); 21struct pci_bus * pcibios_scan_root(int bus); 22int pcibios_assign_resources(void); 23 24void pcibios_set_master(struct pci_dev *dev); 25void pcibios_penalize_isa_irq(int irq); 26struct irq_routing_table *pcibios_get_irq_routing_table(void); 27int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq); 28 29/* Dynamic DMA mapping stuff. 30 * i386 has everything mapped statically. 31 */ 32 33#include <linux/types.h> 34#include <linux/slab.h> 35#include <asm/scatterlist.h> 36#include <linux/string.h> 37#include <asm/io.h> 38 39struct pci_dev; 40 41/* The PCI address space does equal the physical memory 42 * address space. The networking and block device layers use 43 * this boolean for bounce buffer decisions. 44 */ 45#define PCI_DMA_BUS_IS_PHYS (1) 46 47/* pci_unmap_{page,single} is a nop so... */ 48#define DECLARE_PCI_UNMAP_ADDR(ADDR_NAME) 49#define DECLARE_PCI_UNMAP_LEN(LEN_NAME) 50#define pci_unmap_addr(PTR, ADDR_NAME) (0) 51#define pci_unmap_addr_set(PTR, ADDR_NAME, VAL) do { } while (0) 52#define pci_unmap_len(PTR, LEN_NAME) (0) 53#define pci_unmap_len_set(PTR, LEN_NAME, VAL) do { } while (0) 54 55/* This is always fine. */ 56#define pci_dac_dma_supported(pci_dev, mask) (1) 57 58static inline dma64_addr_t 59pci_dac_page_to_dma(struct pci_dev *pdev, struct page *page, unsigned long offset, int direction) 60{ 61 return ((dma64_addr_t) page_to_phys(page) + 62 (dma64_addr_t) offset); 63} 64 65static inline struct page * 66pci_dac_dma_to_page(struct pci_dev *pdev, dma64_addr_t dma_addr) 67{ 68 return pfn_to_page(dma_addr >> PAGE_SHIFT); 69} 70 71static inline unsigned long 72pci_dac_dma_to_offset(struct pci_dev *pdev, dma64_addr_t dma_addr) 73{ 74 return (dma_addr & ~PAGE_MASK); 75} 76 77static inline void 78pci_dac_dma_sync_single_for_cpu(struct pci_dev *pdev, dma64_addr_t dma_addr, size_t len, int direction) 79{ 80} 81 82static inline void 83pci_dac_dma_sync_single_for_device(struct pci_dev *pdev, dma64_addr_t dma_addr, size_t len, int direction) 84{ 85} 86 87#define HAVE_PCI_MMAP 88extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, 89 enum pci_mmap_state mmap_state, int write_combine); 90 91 92static inline void pcibios_add_platform_entries(struct pci_dev *dev) 93{ 94} 95 96#endif /* __KERNEL__ */ 97 98/* implement the pci_ DMA API in terms of the generic device dma_ one */ 99#include <asm-generic/pci-dma-compat.h> 100 101/* generic pci stuff */ 102#include <asm-generic/pci.h> 103 104#endif /* __ASM_CRIS_PCI_H */