diff --git a/sis8300bcmApp/src/sis8300bcm.cpp b/sis8300bcmApp/src/sis8300bcm.cpp index cab2bc3ed44925482a85622346173701a50e3188..7c791fb7413e3734c3237ed1ac151a31a889f497 100644 --- a/sis8300bcmApp/src/sis8300bcm.cpp +++ b/sis8300bcmApp/src/sis8300bcm.cpp @@ -1123,55 +1123,6 @@ int sis8300bcm::readbackParameters() setIntegerParam(addr, BCMProbeChannel, uintValue % 10); } - // readback FIBER parameters - for (int addr = 0; addr < SIS8300BCM_NUM_FIBER_CHANNELS; addr++) { - asynPrintDeviceInfo(pasynUserSelf, "readback FIBER %d parameters", addr); - - ret = sis8300drvbcm_get_fiber_out_data_select(mDeviceHandle, addr, &uintValue); - if (ret) { - asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_out_data_select returned %d", ret); - return ret; - } - setIntegerParam(addr, BCMFiberOutDataSelect, uintValue); - ret = sis8300drvbcm_get_fiber_out_data_enable(mDeviceHandle, addr, &uintValue); - if (ret) { - asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_out_data_enable returned %d", ret); - return ret; - } - setIntegerParam(addr, BCMFiberOutDataEnable, uintValue); - ret = sis8300drvbcm_get_fiber_sfp_present(mDeviceHandle, addr, &uintValue); - if (ret) { - asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_sfp_present returned %d", ret); - return ret; - } - setIntegerParam(addr, BCMFiberSFPPresent, uintValue); - ret = sis8300drvbcm_get_fiber_lane_up(mDeviceHandle, addr, &uintValue); - if (ret) { - asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_lane_up returned %d", ret); - return ret; - } - setIntegerParam(addr, BCMFiberLaneUp, uintValue); - ret = sis8300drvbcm_get_fiber_channel_up(mDeviceHandle, addr, &uintValue); - if (ret) { - asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_channel_up returned %d", ret); - return ret; - } - setIntegerParam(addr, BCMFiberChannelUp, uintValue); - ret = sis8300drvbcm_get_fiber_hardware_error(mDeviceHandle, addr, &uintValue); - if (ret) { - asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_hardware_error returned %d", ret); - return ret; - } - setIntegerParam(addr, BCMFiberHardwareError, uintValue); - ret = sis8300drvbcm_get_fiber_software_error(mDeviceHandle, addr, &uintValue); - if (ret) { - asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_software_error returned %d", ret); - return ret; - } - setIntegerParam(addr, BCMFiberSoftwareError, uintValue); - - } - callParamCallbacks(); return ret; @@ -1414,6 +1365,54 @@ int sis8300bcm::deviceDone() setIntegerParam(addr, BCMDiffAlarmLeakyDirect, (uintValue & 0x08) ? 1 : 0); } + // readback FIBER parameters + for (int addr = 0; addr < SIS8300BCM_NUM_FIBER_CHANNELS; addr++) { + asynPrintDeviceInfo(pasynUserSelf, "readback FIBER %d parameters", addr); + + ret = sis8300drvbcm_get_fiber_out_data_select(mDeviceHandle, addr, &uintValue); + if (ret) { + asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_out_data_select returned %d", ret); + return ret; + } + setIntegerParam(addr, BCMFiberOutDataSelect, uintValue); + ret = sis8300drvbcm_get_fiber_out_data_enable(mDeviceHandle, addr, &uintValue); + if (ret) { + asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_out_data_enable returned %d", ret); + return ret; + } + setIntegerParam(addr, BCMFiberOutDataEnable, uintValue); + ret = sis8300drvbcm_get_fiber_sfp_present(mDeviceHandle, addr, &uintValue); + if (ret) { + asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_sfp_present returned %d", ret); + return ret; + } + setIntegerParam(addr, BCMFiberSFPPresent, uintValue); + ret = sis8300drvbcm_get_fiber_lane_up(mDeviceHandle, addr, &uintValue); + if (ret) { + asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_lane_up returned %d", ret); + return ret; + } + setIntegerParam(addr, BCMFiberLaneUp, uintValue); + ret = sis8300drvbcm_get_fiber_channel_up(mDeviceHandle, addr, &uintValue); + if (ret) { + asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_channel_up returned %d", ret); + return ret; + } + setIntegerParam(addr, BCMFiberChannelUp, uintValue); + ret = sis8300drvbcm_get_fiber_hardware_error(mDeviceHandle, addr, &uintValue); + if (ret) { + asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_hardware_error returned %d", ret); + return ret; + } + setIntegerParam(addr, BCMFiberHardwareError, uintValue); + ret = sis8300drvbcm_get_fiber_software_error(mDeviceHandle, addr, &uintValue); + if (ret) { + asynPrintError(pasynUserSelf, "sis8300drvbcm_get_fiber_software_error returned %d", ret); + return ret; + } + setIntegerParam(addr, BCMFiberSoftwareError, uintValue); + } + return ret; }