@@ -46,6 +46,9 @@ class ChassisBase(device_base.DeviceBase):
46
46
# available on the chassis
47
47
_sfp_list = []
48
48
49
+ # List of component names that are available on the chassis
50
+ _component_name_list = []
51
+
49
52
# Object derived from WatchdogBase for interacting with hardware watchdog
50
53
_watchdog = None
51
54
@@ -95,16 +98,39 @@ def get_reboot_cause(self):
95
98
"""
96
99
raise NotImplementedError
97
100
98
- def get_component_versions (self ):
101
+ def get_component_name_list (self ):
102
+ """
103
+ Retrieves a list of the names of components available on the chassis (e.g., BIOS, CPLD, FPGA, etc.)
104
+
105
+ Returns:
106
+ A list containing the names of components available on the chassis
107
+ """
108
+ return self ._component_name_list
109
+
110
+ def get_firmware_version (self , component_name ):
99
111
"""
100
112
Retrieves platform-specific hardware/firmware versions for chassis
101
113
componenets such as BIOS, CPLD, FPGA, etc.
114
+ Args:
115
+ component_name: A string, the component name.
102
116
103
117
Returns:
104
118
A string containing platform-specific component versions
105
119
"""
106
120
raise NotImplementedError
107
121
122
+ def install_component_firmware (self , component_name , image_path ):
123
+ """
124
+ Install firmware to component
125
+ Args:
126
+ component_name: A string, the component name.
127
+ image_path: A string, path to firmware image.
128
+
129
+ Returns:
130
+ A boolean, True if install was successful, False if not
131
+ """
132
+ raise NotImplementedError
133
+
108
134
##############################################
109
135
# Module methods
110
136
##############################################
0 commit comments