qcacmn: Add new vendor attribute for preferred channels list

Add new vendor attribute for preferred channels list with weight
value and a flag to indicate how the channels should
be used in p2p negotiation process.

Change-Id: I7b7926bf2aa714be51a8c28e619bbe426d9d2a4c
CRs-Fixed: 2405321
diff --git a/os_if/linux/qca_vendor.h b/os_if/linux/qca_vendor.h
index c98ccae..237a8b4 100644
--- a/os_if/linux/qca_vendor.h
+++ b/os_if/linux/qca_vendor.h
@@ -3847,15 +3847,20 @@
 
 /**
  * enum qca_wlan_vendor_attr_pcl_config: attribute to vendor sub-command
- * QCA_WLAN_VENDOR_ATTR_EXTERNAL_ACS_EVENT_PCL.
+ * QCA_WLAN_VENDOR_ATTR_EXTERNAL_ACS_EVENT_PCL and
+ * QCA_NL80211_VENDOR_SUBCMD_GET_PREFERRED_FREQ_LIST.
  * @QCA_WLAN_VENDOR_ATTR_PCL_CONFIG_INVALID: invalid value
  * @QCA_WLAN_VENDOR_ATTR_PCL_CONFIG_CHANNEL: pcl channel number
  * @QCA_WLAN_VENDOR_ATTR_PCL_CONFIG_WEIGHT: pcl channel weight
+ * @QCA_WLAN_VENDOR_ATTR_PCL_CONFIG_FREQ: pcl channel frequency
+ * @QCA_WLAN_VENDOR_ATTR_PCL_CONFIG_FLAG: pcl channel flag bitmask
  */
 enum qca_wlan_vendor_attr_pcl_config {
 	QCA_WLAN_VENDOR_ATTR_PCL_INVALID = 0,
 	QCA_WLAN_VENDOR_ATTR_PCL_CHANNEL = 1,
 	QCA_WLAN_VENDOR_ATTR_PCL_WEIGHT = 2,
+	QCA_WLAN_VENDOR_ATTR_PCL_FREQ = 3,
+	QCA_WLAN_VENDOR_ATTR_PCL_FLAG = 4,
 };
 
 enum qca_set_band {
@@ -4093,6 +4098,7 @@
  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_INVALID: invalid value
  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_IFACE_TYPE: interface type
  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST: preferred frequency list
+ * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_WEIGHED_PCL: pcl with weight
  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_AFTER_LAST: after last
  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_MAX: max
  */
@@ -4107,6 +4113,13 @@
 	 * in north-bound only.
 	 */
 	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST,
+	/* An array of nested values as per enum
+	 *  qca_wlan_vendor_attr_pcl_config attribute.
+	 *  Each element contains frequency (MHz), weight, and flag
+	 *  bit mask indicating how the frequency should be used in P2P
+	 *  negotiation.
+	 */
+	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_WEIGHED_PCL,
 	/* keep last */
 	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_AFTER_LAST,
 	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_MAX =