rayddteam

DSR-1000N PCI fix

Jul 22nd, 2016
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # cat 04_pci.patch
  2. *** sys/mips/cavium/octopci.c Sat Apr 2 13:13:27 2016
  3. --- sys/mips/cavium/octopci.c_new Sun Mar 27 01:09:38 2016
  4. ***************
  5. *** 117,126 ****
  6. return (0);
  7. }
  8.  
  9. - /* Check whether we are a PCI host. */
  10. - if ((cvmx_sysinfo_get()->bootloader_config_flags & CVMX_BOOTINFO_CFG_FLAG_PCI_HOST) == 0)
  11. - return (ENXIO);
  12. -
  13. if (device_get_unit(dev) != 0)
  14. return (ENXIO);
  15.  
  16. --- 130,135 ----
  17. ***************
  18. *** 358,363 ****
  19. --- 372,378 ----
  20. }
  21.  
  22. addr = octopci_cs_addr(bus, slot, func, reg);
  23. + DELAY(PCI_CONFIG_SPACE_DELAY);
  24.  
  25. switch (bytes) {
  26. case 4:
  27. ***************
  28. *** 400,405 ****
  29. --- 415,421 ----
  30. }
  31.  
  32. addr = octopci_cs_addr(bus, slot, func, reg);
  33. + DELAY(PCI_CONFIG_SPACE_DELAY);
  34.  
  35. switch (bytes) {
  36. case 4:
  37. ***************
  38. *** 457,462 ****
  39. --- 473,484 ----
  40. }
  41. break;
  42. #endif
  43. + case CVMX_BOARD_TYPE_CUST_DLINK_DSR500:
  44. + case CVMX_BOARD_TYPE_CUST_DLINK_DSR500N:
  45. + case CVMX_BOARD_TYPE_CUST_DLINK_DSR1000:
  46. + case CVMX_BOARD_TYPE_CUST_DLINK_DSR1000N:
  47. + return (OCTEON_IRQ_PCI_INT0 + pin + 1);
  48. + break;
  49. default:
  50. break;
  51. }
  52. *** sys/mips/cavium/octopcivar.h Sat Apr 2 13:13:28 2016
  53. --- sys/mips/cavium/octopcivar.h_new Sun Mar 27 01:09:38 2016
  54. ***************
  55. *** 28,33 ****
  56. --- 28,35 ----
  57. #ifndef _MIPS_CAVIUM_OCTOPCIVAR_H
  58. #define _MIPS_CAVIUM_OCTOPCIVAR_H
  59.  
  60. + #define PCI_CONFIG_SPACE_DELAY 1000 /* Linux use 10000 */
  61. +
  62. DECLARE_BUS_SPACE_PROTOTYPES(octopci);
  63.  
  64. extern bus_space_tag_t octopci_bus_space;
Add Comment
Please, Sign In to add comment