00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef _INCLUDE_FIO_PUBLIC_IODIMM_MGMT_H_
00027 #define _INCLUDE_FIO_PUBLIC_IODIMM_MGMT_H_
00028
00029 #ifdef __cplusplus
00030 extern "C" {
00031 #endif
00032
00033 #include <fio/public/iodimm_types.h>
00034
00046 DllExport
00047 fio_status_result_t
00048 fio_iodimm_get_adapter_info(fio_iodimm_selector_t* input,
00049 fio_iodimm_adapter_info_t* adapter_info);
00050
00062 DllExport
00063 fio_status_result_t
00064 fio_iodimm_get_adapter_dynamic_pci_info(fio_iodimm_selector_t* input, fio_iodimm_dynamic_pci_info_t* adapter_dynamic);
00065
00076 DllExport
00077 fio_status_result_t
00078 fio_iodimm_get_product_info(fio_iodimm_selector_t* input,
00079 fio_iodimm_product_info_t* product_info);
00080
00091 DllExport
00092 fio_status_result_t
00093 fio_iodimm_get_pci_info(fio_iodimm_selector_t* input, fio_pci_info_t* pci_info);
00094
00108 DllExport
00109 fio_status_result_t
00110 fio_iodimm_get_dynamic_pci_info(fio_iodimm_selector_t* input, fio_iodimm_dynamic_pci_info_t* iodimm_dynamic);
00111
00122 DllExport
00123 fio_status_result_t
00124 fio_iodimm_get_device_identifiers(fio_iodimm_selector_t* input,
00125 fio_iodimm_device_identifiers_t* identifiers);
00126
00137 DllExport
00138 fio_status_result_t
00139 fio_iodimm_get_device_state(fio_iodimm_selector_t* input,
00140 fio_iodimm_state_info_t* state);
00141
00152 DllExport
00153 fio_status_result_t
00154 fio_iodimm_get_driver_version(fio_iodimm_selector_t* input,
00155 fio_iodimm_driver_ver_info_t* ver_info);
00156
00167 DllExport
00168 fio_status_result_t
00169 fio_iodimm_get_driver_compatibility(fio_iodimm_selector_t* input,
00170 uint8_t* compatible);
00171
00183 DllExport
00184 fio_status_result_t
00185 fio_iodimm_get_static_format_info(fio_iodimm_selector_t* input,
00186 fio_iodimm_static_format_info_t* format_info);
00187
00199 DllExport
00200 fio_status_result_t
00201 fio_iodimm_get_dynamic_format_info(fio_iodimm_selector_t* input,
00202 fio_iodimm_dynamic_format_info_t* format_info);
00203
00223 DllExport
00224 fio_status_result_t
00225 fio_iodimm_get_format_sizes(fio_iodimm_selector_t* input, fio_iodimm_format_sizes_t* format_sizes);
00226
00238 DllExport
00239 fio_status_result_t
00240 fio_iodimm_get_flashback_indicator(fio_iodimm_selector_t* input,
00241 fio_iodimm_flashback_t* state);
00242
00254 DllExport
00255 fio_status_result_t
00256 fio_iodimm_get_write_throttling(fio_iodimm_selector_t* input,
00257 fio_iodimm_write_throttling_t* state);
00258
00271 DllExport
00272 fio_status_result_t
00273 fio_iodimm_get_engine_temp_c(fio_iodimm_selector_t* input, int8_t* temp);
00274
00286 DllExport
00287 fio_status_result_t
00288 fio_iodimm_get_temperatures(fio_iodimm_selector_t* input, fio_iodimm_temperatures_t* temperatures);
00289
00301 DllExport
00302 fio_status_result_t
00303 fio_iodimm_get_temperature_alarm_setpoints(fio_iodimm_selector_t* input,
00304 fio_iodimm_temperature_setpoints_t* setpoints);
00305
00317 DllExport
00318 fio_status_result_t
00319 fio_iodimm_get_usage(fio_iodimm_selector_t* input,
00320 fio_iodimm_usage_t* usage_data);
00321
00335 DllExport
00336 fio_status_result_t
00337 fio_iodimm_get_logical_capacity_history(fio_iodimm_selector_t* input,
00338 fio_iodimm_history_table_t* table);
00339
00352 DllExport
00353 fio_status_result_t
00354 fio_iodimm_get_usage_history(fio_iodimm_selector_t* input,
00355 fio_iodimm_history_table_t* table);
00356
00368 DllExport
00369 fio_status_result_t
00370 fio_iodimm_get_temperature_history(fio_iodimm_selector_t* input,
00371 fio_iodimm_history_table_t* table);
00372
00383 DllExport
00384 fio_status_result_t
00385 fio_iodimm_set_beacon(fio_iodimm_selector_t* input,
00386 uint8_t beacon_on);
00387
00398 DllExport
00399 fio_status_result_t
00400 fio_iodimm_get_beacon(fio_iodimm_selector_t* input,
00401 uint8_t* beacon_on);
00402
00414 DllExport
00415 fio_status_result_t
00416 fio_iodimm_get_led_status(fio_iodimm_selector_t* input,
00417 fio_led_status_t* led_status);
00418
00429 DllExport
00430 fio_status_result_t
00431 fio_iodimm_get_alt_info(fio_iodimm_selector_t* input, fio_iodimm_alt_info_t* alt_info);
00432
00445 DllExport
00446 fio_status_result_t
00447 fio_iodimm_get_firmware_version_info(fio_iodimm_selector_t* input,
00448 fio_firmware_version_info_t* ver_info);
00460 DllExport
00461 fio_status_result_t
00462 fio_iodimm_get_power_usage(fio_iodimm_selector_t* input,
00463 fio_iodimm_power_usage_t* power_usage);
00464
00476 DllExport
00477 fio_status_result_t
00478 fio_iodimm_clear_power_usage_peaks(fio_iodimm_selector_t* input,
00479 fio_iodimm_power_usage_peaks_t clearmask);
00480
00492 DllExport
00493 fio_status_result_t
00494 fio_iodimm_get_power_setpoints(fio_iodimm_selector_t* input,
00495 fio_iodimm_power_setpoints_t* setpoints);
00496
00510 DllExport
00511 fio_status_result_t
00512 fio_iodimm_get_hw_alerts(fio_iodimm_selector_t* input, fio_iodimm_hw_alerts_t* alerts);
00513
00527 DllExport
00528 fio_status_result_t
00529 fio_iodimm_get_health(fio_iodimm_selector_t* input, fio_iodimm_health_t* health);
00530
00538 DllExport
00539 uint32_t
00540 fio_get_sdk_api_version(void);
00541
00552 DllExport
00553 fio_status_result_t
00554 fio_iodimm_get_settings(fio_iodimm_selector_t* input, fio_iodimm_settings_t* settings);
00555
00566 DllExport
00567 fio_status_result_t
00568 fio_iodimm_get_prealloc_info(fio_iodimm_selector_t* input, fio_iodimm_prealloc_info_t* info);
00569
00570 #ifdef __cplusplus
00571 }
00572 #endif
00573
00574 #endif