fixup-wrppmc.c 1010 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. * fixup-wrppmc.c: PPMC board specific PCI fixup
  3. *
  4. * This file is subject to the terms and conditions of the GNU General Public
  5. * License. See the file "COPYING" in the main directory of this archive
  6. * for more details.
  7. *
  8. * Copyright (C) 2006, Wind River Inc. Rongkai.zhan (rongkai.zhan@windriver.com)
  9. */
  10. #include <linux/init.h>
  11. #include <linux/pci.h>
  12. #include <asm/gt64120.h>
  13. /* PCI interrupt pins */
  14. #define PCI_INTA 1
  15. #define PCI_INTB 2
  16. #define PCI_INTC 3
  17. #define PCI_INTD 4
  18. #define PCI_SLOT_MAXNR 32 /* Each PCI bus has 32 physical slots */
  19. static char pci_irq_tab[PCI_SLOT_MAXNR][5] __initdata = {
  20. /* 0 INTA INTB INTC INTD */
  21. [0] = {0, 0, 0, 0, 0}, /* Slot 0: GT64120 PCI bridge */
  22. [6] = {0, WRPPMC_PCI_INTA_IRQ, 0, 0, 0},
  23. };
  24. int __init pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
  25. {
  26. return pci_irq_tab[slot][pin];
  27. }
  28. /* Do platform specific device initialization at pci_enable_device() time */
  29. int pcibios_plat_dev_init(struct pci_dev *dev)
  30. {
  31. return 0;
  32. }