#define MAKE_FAN_INFO_NODE_ON_PSU(psu_id, fan_id) \ { \ { ONLP_FAN_ID_CREATE(FAN_##fan_id##_ON_PSU##psu_id), "Chassis PSU-"#psu_id " Fan "#fan_id, 0 }, \ 0x0, \ 0, \ 0, \ 0, \ ONLP_FAN_MODE_INVALID, \ } /* Static fan information */ onlp_fan_info_t linfo[] = { { }, /* Not used */ MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(1), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(2), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(3), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(4), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(5), MAKE_FAN_INFO_NODE_ON_PSU(1,1), MAKE_FAN_INFO_NODE_ON_PSU(2,1), }; #define VALIDATE(_id) \ do { \ if(!ONLP_OID_IS_FAN(_id)) { \ return ONLP_STATUS_E_INVALID; \ } \ } while(0)
MAKE_FAN_PATH_ON_MAIN_BOARD(PROJECT_NAME, FAN_5_ON_MAIN_BOARD), MAKE_FAN_PATH_ON_MAIN_BOARD(PROJECT_NAME, FAN_6_ON_MAIN_BOARD), MAKE_FAN_PATH_ON_MAIN_BOARD(PROJECT_NAME, FAN_7_ON_MAIN_BOARD), MAKE_FAN_PATH_ON_MAIN_BOARD(PROJECT_NAME, FAN_8_ON_MAIN_BOARD), MAKE_FAN_PATH_ON_MAIN_BOARD(PROJECT_NAME, FAN_9_ON_MAIN_BOARD), MAKE_FAN_PATH_ON_MAIN_BOARD(PROJECT_NAME, FAN_10_ON_MAIN_BOARD), MAKE_FAN_PATH_ON_MAIN_BOARD(PROJECT_NAME, FAN_11_ON_MAIN_BOARD), MAKE_FAN_PATH_ON_MAIN_BOARD(PROJECT_NAME, FAN_12_ON_MAIN_BOARD), MAKE_FAN_PATH_ON_PSU(1 ,1), MAKE_FAN_PATH_ON_PSU(2, 1) }; /* Static fan information */ onlp_fan_info_t finfo[] = { { }, /* Not used */ MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(1), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(2), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(3), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(4), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(5), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(6), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(7), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(8), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(9), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(10), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(11), MAKE_FAN_INFO_NODE_ON_MAIN_BOARD(12), MAKE_FAN_INFO_NODE_ON_PSU(1,1), MAKE_FAN_INFO_NODE_ON_PSU(2,1) };