export.c 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #define _PCILIB_EXPORT_C
  2. #include <stdio.h>
  3. #include "export.h"
  4. const char *pcilib_data_types[] = { "default", "string", "double", "long" };
  5. #include "protocols/default.h"
  6. #include "protocols/software.h"
  7. #include "protocols/property.h"
  8. const pcilib_register_protocol_description_t pcilib_standard_register_protocols[] = {
  9. { PCILIB_REGISTER_PROTOCOL_DEFAULT, &pcilib_default_protocol_api, NULL, NULL, "default", "" },
  10. { PCILIB_REGISTER_PROTOCOL_SOFTWARE, &pcilib_software_protocol_api, NULL, NULL, "software_registers", "" },
  11. { PCILIB_REGISTER_PROTOCOL_PROPERTY, &pcilib_property_protocol_api, NULL, NULL, "property_registers", "" },
  12. { 0 }
  13. };
  14. const pcilib_register_bank_description_t pcilib_standard_register_banks[] = {
  15. { PCILIB_REGISTER_BANK_CONF, PCILIB_REGISTER_PROTOCOL_SOFTWARE, PCILIB_BAR_NOBAR, 0, 0, 32, 0x1000, PCILIB_HOST_ENDIAN, PCILIB_HOST_ENDIAN, "%lu", "conf", "pcilib configuration"},
  16. { 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL }
  17. };
  18. const pcilib_register_description_t pcilib_standard_registers[] = {
  19. {0x0000, 0, 32, PCILIB_VERSION, 0x00000000, PCILIB_REGISTER_R , PCILIB_REGISTER_STANDARD, PCILIB_REGISTER_BANK_CONF, "version", "Version"},
  20. {0x0004, 0, 32, 0, 0x00000000, PCILIB_REGISTER_RW , PCILIB_REGISTER_STANDARD, PCILIB_REGISTER_BANK_CONF, "max_threads", "Limits number of threads used by event engines (0 - unlimited)"},
  21. {0, 0, 0, 0, 0x00000000, 0, 0, 0, NULL, NULL}
  22. };
  23. const pcilib_register_bank_description_t pcilib_property_register_bank =
  24. { PCILIB_REGISTER_BANK_PROPERTY, PCILIB_REGISTER_PROTOCOL_PROPERTY, PCILIB_BAR_NOBAR, 0, 0, 8 * sizeof(pcilib_register_value_t), 0, PCILIB_HOST_ENDIAN, PCILIB_HOST_ENDIAN, "%lu", "property", "Computed registers interfacing properties"};
  25. #include "dma/nwl.h"
  26. #include "dma/ipe.h"
  27. const pcilib_dma_description_t pcilib_ipedma =
  28. { &ipe_dma_api, ipe_dma_banks, ipe_dma_registers, ipe_dma_engines, NULL, NULL, "ipedma", "DMA engine developed by M. Caselle" };
  29. const pcilib_dma_description_t pcilib_nwldma =
  30. { &nwl_dma_api, nwl_dma_banks, nwl_dma_registers, NULL, NULL, NULL, "nwldma", "North West Logic DMA Engine" };
  31. const pcilib_dma_description_t pcilib_dma[] = {
  32. { &ipe_dma_api, ipe_dma_banks, ipe_dma_registers, ipe_dma_engines, NULL, NULL, "ipedma", "DMA engine developed by M. Caselle" },
  33. { &nwl_dma_api, nwl_dma_banks, nwl_dma_registers, NULL, NULL, NULL, "nwldma", "North West Logic DMA Engine" },
  34. { &nwl_dma_api, nwl_dma_banks, nwl_dma_registers, NULL, "ipecamera", NULL, "nwldma-ipe", "North West Logic DMA Engine" },
  35. { 0 }
  36. };