Open Ethernet Networking (OpEN) API Guide and Reference Manual  3.11.1.2
openapi_stacking.h
Go to the documentation of this file.
1 
9 /*********************************************************************
10 *
11 * Copyright 2016-2020 Broadcom.
12 *
13 * Licensed under the Apache License, Version 2.0 (the "License");
14 * you may not use this file except in compliance with the License.
15 * You may obtain a copy of the License at
16 *
17 * http://www.apache.org/licenses/LICENSE-2.0
18 *
19 * Unless required by applicable law or agreed to in writing, software
20 * distributed under the License is distributed on an "AS IS" BASIS,
21 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 * See the License for the specific language governing permissions and
23 * limitations under the License.
24 *
25 **********************************************************************
26 *
27 * @filename openapi_stacking.h
28 *
29 * @purpose Stacking Configuration and Status
30 *
31 * @component OpEN
32 *
33 * @create 10/22/2015
34 *
35 * @end
36 *
37 **********************************************************************/
38 #ifndef OPENAPI_STACKING_H_INCLUDED
39 #define OPENAPI_STACKING_H_INCLUDED
40 
41 #include "openapi_common.h"
42 
44 typedef enum
45 {
55 
57 typedef enum
58 {
63 
65 typedef enum
66 {
85 
87 typedef enum
88 {
92 
94 typedef enum
95 {
101 
102 #define OPEN_UNITMGR_ROOTFS_VER_SIZE 33
103 #define OPEN_UNITMGR_ROOTFS_VER_LENGTH 32
104 #define OPEN_UNITMGR_ROOTFS_SNAPSHOT_FILE "/mnt/fastpath/upper1.tgz"
105 #define OPEN_UNITMGR_ROOTFS_SNAPSHOT_VER_FILE "/mnt/fastpath/upper1.md5"
106 #define OPEN_CDA_FILE_NAME_LENGTH 128
107 #define OPEN_UNITMGR_ROOTFS_COMPAT_FILE "/etc/bootstrap-distro-compat"
108 #define OPEN_UNITMGR_ROOTFS_SNAPSHOT_FILE_NAME_LENGTH 64
109 #define OPEN_UNITMGR_ROOTFS_SNAPSHOT_VERSION_FILE_NAME_LENGTH 64
110 #define OPEN_UNITMGR_LEGACY_ROOTFS_COMPAT_STRING "1"
111 #define OPEN_UNITMGR_ROOTFS_COMPAT_STRING_LENGTH 32
112 
113 
114 /*****************************************************************/
130  uint32_t startUnit,
131  uint32_t *nextUnit);
132 
133 /*****************************************************************/
148  uint32_t *unit);
149 
150 /*****************************************************************/
168  uint32_t unit,
169  open_buffdesc *serialNumber);
170 
171 /*****************************************************************/
189  uint32_t unit,
190  open_buffdesc *serviceTag);
191 
192 /*****************************************************************/
211  uint32_t unit,
212  open_buffdesc *modelId);
213 
214 /*****************************************************************/
231  uint32_t unit,
232  OPEN_BOOL_t *isValid);
233 
234 /*****************************************************************/
250  uint32_t *unit);
251 
252 /*****************************************************************/
268  uint32_t unit,
270 
271 /*****************************************************************/
287  uint32_t unit,
288  OPEN_USMDB_UNITMGR_MGMT_FLAG_t *mgmtStatus);
289 
290 /*****************************************************************/
312  uint32_t unit,
313  open_buffdesc *modelId,
314  open_buffdesc *preconfigModelId);
315 
316 /*****************************************************************/
332  uint32_t unit,
333  open_revision_data_t *codeVersion);
334 
335 /*****************************************************************/
351  uint32_t unit,
352  open_revision_data_t *codeVersion);
353 
354 /*****************************************************************/
371  uint32_t unit,
373  OPEN_USMDB_UNITMGR_MGMTPREF_t *adminPref);
374 
375 /*****************************************************************/
393  uint32_t unit,
394  uint32_t *unitType,
395  uint32_t *unitTypeIndex);
396 
397 /*****************************************************************/
415  uint32_t unitTypeIndex,
416  open_buffdesc *unitDescr);
417 
418 /*****************************************************************/
434  uint32_t unit,
435  OPEN_UNIT_MGR_SFS_SWITCH_STATUS_t *firmwareSyncStatus);
436 
437 /*****************************************************************/
453  OPEN_UNIT_MGR_SFS_SWITCH_STATUS_t *firmwareSyncStatus);
454 
455 /*****************************************************************/
472  uint32_t unit,
473  uint32_t *lastAttemptStatus);
474 
475 /*****************************************************************/
492  uint32_t unit,
493  uint32_t *templateId);
494 
495 /*****************************************************************/
512  uint32_t templateId,
513  open_buffdesc *templateDescr);
514 
515 /*****************************************************************/
531  uint32_t unit,
532  uint32_t *upTime);
533 
534 /*****************************************************************/
552  uint32_t unitTypeIndex,
553  uint32_t *unitType);
554 
555 /*****************************************************************/
574  uint32_t unitTypeIndex,
575  uint32_t *nextUnitTypeIndex,
576  uint32_t *unitType);
577 
578 /*****************************************************************/
599  uint32_t unit,
600  uint32_t unitTypeIndex,
601  OPEN_BOOL_t synchMode);
602 
603 /*****************************************************************/
620  uint32_t unit);
621 
622 /*****************************************************************/
638  uint32_t targetUnit);
639 
640 /*****************************************************************/
658  OPEN_CONTROL_t *fpsQosMode);
659 
660 /*****************************************************************/
677  OPEN_CONTROL_t fpsQosMode);
678 
679 /*****************************************************************/
697  uint32_t *configUnit,
698  uint32_t *standbyUnit,
699  OPEN_BOOL_t *standbyAdminMode);
700 
701 /*****************************************************************/
717  uint32_t standbyUnit,
718  OPEN_BOOL_t standbyAdminMode);
719 
720 /*****************************************************************/
741  uint32_t unit,
742  uint32_t slot,
743  uint32_t port,
744  OPEN_BOOL_t *stackPortMode);
745 
746 /*****************************************************************/
766  uint32_t unit,
767  uint32_t slot,
768  uint32_t port,
769  OPEN_BOOL_t stackPortMode);
770 
771 
772 
773 /*****************************************************************/
791  uint32_t unit,
792  uint32_t slot,
793  OPEN_BOOL_t *isValid);
794 
795 /**********************************************************************/
814  uint32_t unit,
815  uint32_t *count,
816  open_buffdesc *bufd);
817 
818 /*****************************************************************/
838  uint32_t unit,
839  uint32_t slot,
840  OPEN_BOOL_t *isFull);
841 
842 /*****************************************************************/
863  uint32_t unit,
864  uint32_t slot,
865  OPEN_CONTROL_t *adminMode);
866 
867 /*****************************************************************/
888  uint32_t unit,
889  uint32_t slot,
890  OPEN_CONTROL_t adminMode);
891 
892 /*****************************************************************/
913  uint32_t unit,
914  uint32_t slot,
915  OPEN_CONTROL_t *powerMode);
916 
917 /*****************************************************************/
938  uint32_t unit,
939  uint32_t slot,
940  OPEN_CONTROL_t powerMode);
941 
942 /*****************************************************************/
962  uint32_t unit,
963  uint32_t slot,
964  uint32_t *cardIdConfig,
965  uint32_t *cardIdInsert);
966 
967 /*****************************************************************/
985  uint32_t cardId,
986  open_buffdesc *bufd);
987 
988 /*****************************************************************/
1006  uint32_t cardId,
1007  open_buffdesc *bufd);
1008 
1009 /*****************************************************************/
1029  uint32_t unit,
1030  uint32_t slot,
1031  OPEN_BOOL_t *isPluggable);
1032 
1033 /*****************************************************************/
1053  uint32_t unit,
1054  uint32_t slot,
1055  OPEN_BOOL_t *isPowerdown);
1056 
1057 /*****************************************************************/
1082  uint32_t unit,
1083  open_buffdesc *srcFileName,
1084  open_buffdesc *dstFileName);
1085 
1086 /*****************************************************************/
1106  uint32_t unit,
1107  open_buffdesc *version);
1108 
1109 /*****************************************************************/
1129  uint32_t unit,
1130  open_buffdesc *version);
1131 
1132 /*****************************************************************/
1152  uint32_t unit,
1153  open_buffdesc *version);
1154 
1155 /*****************************************************************/
1175  uint32_t unit,
1176  open_buffdesc *version);
1177 
1178 /*****************************************************************/
1194  uint32_t unit);
1195 
1196 /*****************************************************************/
1214  uint32_t unit,
1215  open_buffdesc *filename);
1216 
1217 /*****************************************************************/
1235  uint32_t unit,
1236  open_buffdesc *version);
1237 
1238 #endif /* OPENAPI_STACKING_H_INCLUDED */
1239 
open_error_t openapiStmTemplateDescriptionGet(openapiClientHandle_t *client_handle, uint32_t templateId, open_buffdesc *templateDescr)
Gets description of specified template id.
OPEN_USMDB_UNITMGR_MGMT_FLAG_t
Management Flag.
open_error_t openapiUnitMgrDebianRootfsOperVerSet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *version)
Given a unit, set the Debian Rootfs changes snapshot version currently in use.
open_error_t openapiUnitMgrUnitMaxGet(openapiClientHandle_t *client_handle, uint32_t *unit)
Gets the maximum stacking unit number (largest possible number of units in the stack).
open_error_t openapiUnitMgrStackFirmwareSyncMemberStatusGet(openapiClientHandle_t *client_handle, uint32_t unit, OPEN_UNIT_MGR_SFS_SWITCH_STATUS_t *firmwareSyncStatus)
Get stack firmware synchronization status of member unit.
open_error_t openapiSlotPowerModeGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, OPEN_CONTROL_t *powerMode)
Given a unit and slot number, gets power mode of slot.
open_error_t openapiUnitMgrSerialNumberGet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *serialNumber)
Given a unit, gets the unit's serial number.
OPEN_USMDB_UNITMGR_MGMTPREF_t
Unit's Management Preference.
open_error_t openapiUnitMgrSupportedDescriptionGet(openapiClientHandle_t *client_handle, uint32_t unitTypeIndex, open_buffdesc *unitDescr)
Get unit description that corresponds to the index provided.
open_error_t openapiUnitMgrStackFirmwareSyncStatusGet(openapiClientHandle_t *client_handle, OPEN_UNIT_MGR_SFS_SWITCH_STATUS_t *firmwareSyncStatus)
Get stack firmware synchronization status.
open_error_t openapiSpmFpsConfigQosModeSet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t fpsQosMode)
Set QOS configuration for all front-panel stacking ports stack port.
open_error_t openapiUnitMgrUnitTransfer(openapiClientHandle_t *client_handle, uint32_t targetUnit)
Transfers the management function from the current unit to another.
OPEN_SFS_LAST_ATTEMPT_STATUS_t
Stack Firmware Synchronization Last Attempt Status.
open_error_t openapiSpmFpsConfigStackingModeSet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, uint32_t port, OPEN_BOOL_t stackPortMode)
Set stacking mode configuration for a front-panel stack port.
open_error_t
OPEN uses these enumerators to indicate the error codes.
open_error_t openapiSlotSupportedPowerdownGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, OPEN_BOOL_t *isPowerdown)
Given a unit and slot number, verify whether it powerdown indicator.
open_error_t openapiUnitMgrStackFirmwareSyncMemberLastAttemptStatusGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t *lastAttemptStatus)
Get stack firmware synchronization last attempt status.
open_error_t openapiUnitMgrSupportedUnitIdNextGet(openapiClientHandle_t *client_handle, uint32_t unitTypeIndex, uint32_t *nextUnitTypeIndex, uint32_t *unitType)
Get unit type identifier that corresponds to the next index.
open_error_t openapiUnitMgrDetectCodeVerRunningGet(openapiClientHandle_t *client_handle, uint32_t unit, open_revision_data_t *codeVersion)
Given a unit, gets the unit's running version of code.
open_error_t openapiCardTypeGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, uint32_t *cardIdConfig, uint32_t *cardIdInsert)
Given a unit and slot number, gets configured card type and inserted card type.
open_error_t openapiUnitMgrDebianRootfsVerSet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *version)
Given a unit, set the Debian Rootfs changes snapshot version stored.
open_error_t openapiSlotAdminModeGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, OPEN_CONTROL_t *adminMode)
Given a unit and slot number, gets admin mode of slot.
open_error_t openapiSlotSupportedPluggableGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, OPEN_BOOL_t *isPluggable)
Given a unit and slot number, verify whether it has pluggable indicator.
open_error_t openapiUnitMgrDebianRootfsFileNameGet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *filename)
Get the Debian Rootfs changes snapshot file name.
open_error_t openapiSlotIsFullGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, OPEN_BOOL_t *isFull)
Given a unit and slot number, verify whether the slot exists in the unit.
open_error_t openapiCardSupportedCardDescriptionGet(openapiClientHandle_t *client_handle, uint32_t cardId, open_buffdesc *bufd)
Given card index, gets card description.
open_error_t openapiSlotGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, OPEN_BOOL_t *isValid)
Given a unit and slot number, verify whether the slot exists in the unit.
open_error_t openapiSlotAdminModeSet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, OPEN_CONTROL_t adminMode)
Given a unit, slot number and admin mode, configures it on device.
open_error_t openapiUnitMgrStandbySet(openapiClientHandle_t *client_handle, uint32_t standbyUnit, OPEN_BOOL_t standbyAdminMode)
Sets the unit as standby in the stack.
open_error_t openapiUnitMgrUnitTypeGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t *unitType, uint32_t *unitTypeIndex)
Given a unit, gets the unit's type and index.
open_error_t openapiUnitMgrMgmtUnitStatusGet(openapiClientHandle_t *client_handle, uint32_t unit, OPEN_USMDB_UNITMGR_MGMT_FLAG_t *mgmtStatus)
Given a unit, gets the unit's management status.
open_error_t openapiUnitMgrUnitStatusGet(openapiClientHandle_t *client_handle, uint32_t unit, OPEN_USMDB_UNITMGR_STATUS_t *status)
Given a unit, gets the unit's status.
open_error_t openapiSpmFpsConfigQosModeGet(openapiClientHandle_t *client_handle, OPEN_CONTROL_t *fpsQosMode)
Get QOS configuration for all front-panel stacking ports stack port.
open_error_t openapiUnitMgrPreconfigModelIdGet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *modelId)
Given a unit, gets the unit's model identifier string assigned by HPC(Hardware Platform Control) ...
open_error_t openapiCdaTransferFile(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *srcFileName, open_buffdesc *dstFileName)
Given a unit and filename, transfer file from current unit to the specified unit. ...
open_error_t openapiUnitMgrServiceTagGet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *serviceTag)
Given a unit, gets the service tag.
open_error_t openapiUnitMgrDebianRootfsVerGet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *version)
Given a unit, get the Debian Rootfs changes snapshot version stored.
open_error_t openapiUnitMgrStandbyGet(openapiClientHandle_t *client_handle, uint32_t *configUnit, uint32_t *standbyUnit, OPEN_BOOL_t *standbyAdminMode)
Gets the configured and standby unit number and admin mode in the stack.
OPEN_CONTROL_t
OPEN uses these enumerators to indicate enable or disable for a given config or status parameter...
open_error_t openapiUnitMgrModelIdentifierGet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *modelId, open_buffdesc *preconfigModelId)
Given a unit, gets the unit's model identifier string assigned by HPC and pre-configured model identi...
Min Bootcode Version Not Present.
open_error_t openapiSlotPowerModeSet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, OPEN_CONTROL_t powerMode)
Given a unit, slot number and power mode, configures it on device.
open_error_t openapiCardSupportedCardModelIdGet(openapiClientHandle_t *client_handle, uint32_t cardId, open_buffdesc *bufd)
Given card index, gets model Identifier.
open_error_t openapiUnitMgrUnitIsValid(openapiClientHandle_t *client_handle, uint32_t unit, OPEN_BOOL_t *isValid)
Given a unit, verify that it's within the valid range.
OPEN_BOOL_t
OPEN uses these enumerators to indicate true or false for a given config or status parameter...
open_error_t openapiStmUnitActiveTemplateIdGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t *templateId)
Gets active template id of the stack unit.
open_error_t openapiUnitMgrUnitDelete(openapiClientHandle_t *client_handle, uint32_t unit)
Remove a unit only if it is not an active member of the stack.
open_error_t openapiUnitDbEntrySlotsGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t *count, open_buffdesc *bufd)
Given a unit number, it retrieves all slot information from the unit descriptor database.
open_error_t openapiUnitMgrDebianRootfsOperVerGet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *version)
Given a unit, get the Debian Rootfs changes snapshot version currently in use.
open_error_t openapiUnitMgrUnitUpTimeGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t *upTime)
Given a unit, gets the unit's up time in seconds.
open_error_t openapiUnitMgrDetectCodeVerFlashGet(openapiClientHandle_t *client_handle, uint32_t unit, open_revision_data_t *codeVersion)
Given a unit, gets the unit's version of code in flash.
open_error_t openapiSpmFpsConfigStackingModeGet(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t slot, uint32_t port, OPEN_BOOL_t *stackPortMode)
Get stacking mode configuration for a front-panel stack port.
open_error_t openapiUnitMgrUnitCreate(openapiClientHandle_t *client_handle, uint32_t unit, uint32_t unitTypeIndex, OPEN_BOOL_t synchMode)
Create a new unit record for unit.
open_error_t openapiUnitMgrMgmtPrefGet(openapiClientHandle_t *client_handle, uint32_t unit, OPEN_USMDB_UNITMGR_MGMTPREF_t *hwPref, OPEN_USMDB_UNITMGR_MGMTPREF_t *adminPref)
Given a unit, gets the unit's hardware and admin management preference.
open_error_t openapiUnitMgrSupportedUnitIdGet(openapiClientHandle_t *client_handle, uint32_t unitTypeIndex, uint32_t *unitType)
Get unit type identifier that corresponds to the index provided.
open_error_t openapiUnitMgrResetUnit(openapiClientHandle_t *client_handle, uint32_t unit)
Given a unit, reboot the corresponding switch.
OPEN_USMDB_UNITMGR_STATUS_t
Stacking Unit Status.
open_error_t openapiUnitMgrDebianRootfsVersionFileNameGet(openapiClientHandle_t *client_handle, uint32_t unit, open_buffdesc *version)
Get the Debian Rootfs changes snapshot version file name.
OPEN_UNIT_MGR_SFS_SWITCH_STATUS_t
Stack Firmware Synchronization Status.
open_error_t openapiUnitMgrStackMemberGetNext(openapiClientHandle_t *client_handle, uint32_t startUnit, uint32_t *nextUnit)
Given a unit, gets the next member of the current stack.
open_error_t openapiUnitMgrNumberGet(openapiClientHandle_t *client_handle, uint32_t *unit)
Get the manager's unit number.