Selaa lähdekoodia

qcacmn: Add cal data version check status enums in host

Add WMI host defines to check cal data status and use appropriate copy
macros to take care of big-endian conversion.

Change-Id: I4358761e807ac584c638b6e36229dbbbb85bf651
CRs-Fixed: 1105756
Kiran Venkatappa 8 vuotta sitten
vanhempi
sitoutus
edeb20382f
2 muutettua tiedostoa jossa 20 lisäystä ja 4 poistoa
  1. 14 1
      wmi/inc/wmi_unified_param.h
  2. 6 3
      wmi/src/wmi_unified_non_tlv.c

+ 14 - 1
wmi/inc/wmi_unified_param.h

@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2016-2017 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -7071,4 +7071,17 @@ typedef struct {
 	uint32_t cal_ok; /* filled with CALIBRATION_STATUS enum value */
 } wmi_host_pdev_check_cal_version_event;
 
+/**
+ * enum WMI_HOST_CALIBRATION_STATUS - Host defined Enums for cal status
+ * @WMI_HOST_NO_FEATURE: The board was calibrated with a meta
+ *                       which did not have this feature
+ * @WMI_HOST_CALIBRATION_OK: The calibration status is OK
+ * @WMI_HOST_CALIBRATION_NOT_OK: The calibration status is NOT OK
+ */
+enum WMI_HOST_CALIBRATION_STATUS {
+	WMI_HOST_NO_FEATURE = 0,
+	WMI_HOST_CALIBRATION_OK,
+	WMI_HOST_CALIBRATION_NOT_OK,
+};
+
 #endif /* _WMI_UNIFIED_PARAM_H_ */

+ 6 - 3
wmi/src/wmi_unified_non_tlv.c

@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2016-2017 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -6144,8 +6144,11 @@ QDF_STATUS extract_pdev_caldata_version_check_ev_param_non_tlv(
 	param->board_cal_version = event->board_cal_version;
 	param->cal_ok = event->cal_ok;
 
-	qdf_mem_copy(param->board_mcn_detail, event->board_mcn_detail,
-				sizeof(param->board_mcn_detail));
+	if (event->board_mcn_detail[WMI_BOARD_MCN_STRING_MAX_SIZE] != '\0')
+		event->board_mcn_detail[WMI_BOARD_MCN_STRING_MAX_SIZE] = '\0';
+
+	WMI_HOST_IF_MSG_COPY_CHAR_ARRAY(param->board_mcn_detail,
+		event->board_mcn_detail, WMI_BOARD_MCN_STRING_BUF_SIZE);
 
 	return QDF_STATUS_SUCCESS;
 }