From cbe5eb1fb4712880c9b96ad47dacda55d6772d45 Mon Sep 17 00:00:00 2001 From: michael_shih Date: Thu, 8 Dec 2022 16:00:26 +0800 Subject: [PATCH] [Edgecore][device][platform] psu-fan direction get N/A when it is power_good= failed. Signed-off-by: michael_shih --- .../as9736-64d/sonic_platform/fan.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/platform/broadcom/sonic-platform-modules-accton/as9736-64d/sonic_platform/fan.py b/platform/broadcom/sonic-platform-modules-accton/as9736-64d/sonic_platform/fan.py index 4eb806aa4cd3..493a64332792 100644 --- a/platform/broadcom/sonic-platform-modules-accton/as9736-64d/sonic_platform/fan.py +++ b/platform/broadcom/sonic-platform-modules-accton/as9736-64d/sonic_platform/fan.py @@ -82,7 +82,20 @@ def get_direction(self): direction=self.FAN_DIRECTION_EXHAUST else: #For PSU - direction=self.FAN_DIRECTION_EXHAUST + psu_path = "{}{}".format(self.psu_cpld_path, 'psu_power_good') + val = self._api_helper.read_txt_file(psu_path) + if val is None or int(val, 10)==0: + return self.FAN_DIRECTION_NOT_APPLICABLE + + dir_str = "{}{}".format(self.psu_hwmon_path,'psu_fan_dir') + val=self._api_helper.read_txt_file(dir_str) + if val is None or val == "": + return self.FAN_DIRECTION_EXHAUST + else: + if val=='F2B': + direction=self.FAN_DIRECTION_EXHAUST + else: + direction=self.FAN_DIRECTION_INTAKE return direction