/arch/mips/include/asm/octeon/pci-octeon.h

https://bitbucket.org/thekraven/iscream_thunderc-2.6.35 · C++ Header · 45 lines · 16 code · 8 blank · 21 comment · 0 complexity · 9e2e22f2eddc095bb7d786c9ce417c96 MD5 · raw file

  1. /*
  2. * This file is subject to the terms and conditions of the GNU General Public
  3. * License. See the file "COPYING" in the main directory of this archive
  4. * for more details.
  5. *
  6. * Copyright (C) 2005-2009 Cavium Networks
  7. */
  8. #ifndef __PCI_OCTEON_H__
  9. #define __PCI_OCTEON_H__
  10. #include <linux/pci.h>
  11. /* Some PCI cards require delays when accessing config space. */
  12. #define PCI_CONFIG_SPACE_DELAY 10000
  13. /*
  14. * pcibios_map_irq() is defined inside pci-octeon.c. All it does is
  15. * call the Octeon specific version pointed to by this variable. This
  16. * function needs to change for PCI or PCIe based hosts.
  17. */
  18. extern int (*octeon_pcibios_map_irq)(const struct pci_dev *dev,
  19. u8 slot, u8 pin);
  20. /*
  21. * The following defines are used when octeon_dma_bar_type =
  22. * OCTEON_DMA_BAR_TYPE_BIG
  23. */
  24. #define OCTEON_PCI_BAR1_HOLE_BITS 5
  25. #define OCTEON_PCI_BAR1_HOLE_SIZE (1ul<<(OCTEON_PCI_BAR1_HOLE_BITS+3))
  26. enum octeon_dma_bar_type {
  27. OCTEON_DMA_BAR_TYPE_INVALID,
  28. OCTEON_DMA_BAR_TYPE_SMALL,
  29. OCTEON_DMA_BAR_TYPE_BIG,
  30. OCTEON_DMA_BAR_TYPE_PCIE
  31. };
  32. /*
  33. * This tells the DMA mapping system in dma-octeon.c how to map PCI
  34. * DMA addresses.
  35. */
  36. extern enum octeon_dma_bar_type octeon_dma_bar_type;
  37. #endif