summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/dt-bindings/clock/audio-ext-clk.h10
-rw-r--r--include/dt-bindings/clock/msm-clocks-8998.h (renamed from include/dt-bindings/clock/msm-clocks-cobalt.h)4
-rw-r--r--include/dt-bindings/clock/msm-clocks-hwio-8998.h (renamed from include/dt-bindings/clock/msm-clocks-hwio-cobalt.h)0
-rw-r--r--include/dt-bindings/clock/qcom,mmcc-msmfalcon.h82
-rw-r--r--include/linux/ipa.h64
-rw-r--r--include/linux/qpnp/qpnp-revid.h32
-rw-r--r--include/net/cfg80211.h17
-rw-r--r--include/net/tcp.h2
-rw-r--r--include/soc/qcom/socinfo.h14
-rw-r--r--include/uapi/linux/msm_mdp.h4
10 files changed, 153 insertions, 76 deletions
diff --git a/include/dt-bindings/clock/audio-ext-clk.h b/include/dt-bindings/clock/audio-ext-clk.h
index 6e4932342751..c9a8286d7c7f 100644
--- a/include/dt-bindings/clock/audio-ext-clk.h
+++ b/include/dt-bindings/clock/audio-ext-clk.h
@@ -14,9 +14,19 @@
#define __AUDIO_EXT_CLK_H
/* Audio External Clocks */
+#ifdef CONFIG_COMMON_CLK_QCOM
+#define AUDIO_PMI_CLK 0
+#define AUDIO_PMIC_LNBB_CLK 1
+#define AUDIO_AP_CLK 2
+#define AUDIO_AP_CLK2 3
+#define AUDIO_LPASS_MCLK 4
+#define AUDIO_LPASS_MCLK2 5
+#else
#define clk_audio_ap_clk 0x9b5727cb
#define clk_audio_pmi_clk 0xcbfe416d
#define clk_audio_ap_clk2 0x454d1e91
#define clk_audio_lpass_mclk 0xf0f2a284
#define clk_audio_pmi_lnbb_clk 0x57312343
#endif
+
+#endif
diff --git a/include/dt-bindings/clock/msm-clocks-cobalt.h b/include/dt-bindings/clock/msm-clocks-8998.h
index 4bacef303967..42617016188d 100644
--- a/include/dt-bindings/clock/msm-clocks-cobalt.h
+++ b/include/dt-bindings/clock/msm-clocks-8998.h
@@ -10,8 +10,8 @@
* GNU General Public License for more details.
*/
-#ifndef __MSM_CLOCKS_COBALT_H
-#define __MSM_CLOCKS_COBALT_H
+#ifndef __MSM_CLOCKS_8998_H
+#define __MSM_CLOCKS_8998_H
#include "audio-ext-clk.h"
diff --git a/include/dt-bindings/clock/msm-clocks-hwio-cobalt.h b/include/dt-bindings/clock/msm-clocks-hwio-8998.h
index f10afffc74b2..f10afffc74b2 100644
--- a/include/dt-bindings/clock/msm-clocks-hwio-cobalt.h
+++ b/include/dt-bindings/clock/msm-clocks-hwio-8998.h
diff --git a/include/dt-bindings/clock/qcom,mmcc-msmfalcon.h b/include/dt-bindings/clock/qcom,mmcc-msmfalcon.h
index ffb80a128dd6..7a6ec2bf2418 100644
--- a/include/dt-bindings/clock/qcom,mmcc-msmfalcon.h
+++ b/include/dt-bindings/clock/qcom,mmcc-msmfalcon.h
@@ -159,46 +159,47 @@
#define MMSS_MDSS_AXI_CLK 142
#define MMSS_MDSS_BYTE0_CLK 143
#define MMSS_MDSS_BYTE0_INTF_CLK 144
-#define MMSS_MDSS_BYTE1_CLK 145
-#define MMSS_MDSS_BYTE1_INTF_CLK 146
-#define MMSS_MDSS_DP_AUX_CLK 147
-#define MMSS_MDSS_DP_CRYPTO_CLK 148
-#define MMSS_MDSS_DP_GTC_CLK 149
-#define MMSS_MDSS_DP_LINK_CLK 150
-#define MMSS_MDSS_DP_LINK_INTF_CLK 151
-#define MMSS_MDSS_DP_PIXEL_CLK 152
-#define MMSS_MDSS_ESC0_CLK 153
-#define MMSS_MDSS_ESC1_CLK 154
-#define MMSS_MDSS_HDMI_DP_AHB_CLK 155
-#define MMSS_MDSS_MDP_CLK 156
-#define MMSS_MDSS_PCLK0_CLK 157
-#define MMSS_MDSS_PCLK1_CLK 158
-#define MMSS_MDSS_ROT_CLK 159
-#define MMSS_MDSS_VSYNC_CLK 160
-#define MMSS_MISC_AHB_CLK 161
-#define MMSS_MISC_CXO_CLK 162
-#define MMSS_MNOC_AHB_CLK 163
-#define MMSS_SNOC_DVM_AXI_CLK 164
-#define MMSS_THROTTLE_CAMSS_AHB_CLK 165
-#define MMSS_THROTTLE_CAMSS_AXI_CLK 166
-#define MMSS_THROTTLE_CAMSS_CXO_CLK 167
-#define MMSS_THROTTLE_MDSS_AHB_CLK 168
-#define MMSS_THROTTLE_MDSS_AXI_CLK 169
-#define MMSS_THROTTLE_MDSS_CXO_CLK 170
-#define MMSS_THROTTLE_VIDEO_AHB_CLK 171
-#define MMSS_THROTTLE_VIDEO_AXI_CLK 172
-#define MMSS_THROTTLE_VIDEO_CXO_CLK 173
-#define MMSS_VIDEO_AHB_CLK 174
-#define MMSS_VIDEO_AXI_CLK 175
-#define MMSS_VIDEO_CORE_CLK 176
-#define MMSS_VIDEO_SUBCORE0_CLK 177
-#define PCLK0_CLK_SRC 178
-#define PCLK1_CLK_SRC 179
-#define ROT_CLK_SRC 180
-#define VFE0_CLK_SRC 181
-#define VFE1_CLK_SRC 182
-#define VIDEO_CORE_CLK_SRC 183
-#define VSYNC_CLK_SRC 184
+#define MMSS_MDSS_BYTE0_INTF_DIV_CLK 145
+#define MMSS_MDSS_BYTE1_CLK 146
+#define MMSS_MDSS_BYTE1_INTF_CLK 147
+#define MMSS_MDSS_DP_AUX_CLK 148
+#define MMSS_MDSS_DP_CRYPTO_CLK 149
+#define MMSS_MDSS_DP_GTC_CLK 150
+#define MMSS_MDSS_DP_LINK_CLK 151
+#define MMSS_MDSS_DP_LINK_INTF_CLK 152
+#define MMSS_MDSS_DP_PIXEL_CLK 153
+#define MMSS_MDSS_ESC0_CLK 154
+#define MMSS_MDSS_ESC1_CLK 155
+#define MMSS_MDSS_HDMI_DP_AHB_CLK 156
+#define MMSS_MDSS_MDP_CLK 157
+#define MMSS_MDSS_PCLK0_CLK 158
+#define MMSS_MDSS_PCLK1_CLK 159
+#define MMSS_MDSS_ROT_CLK 160
+#define MMSS_MDSS_VSYNC_CLK 161
+#define MMSS_MISC_AHB_CLK 162
+#define MMSS_MISC_CXO_CLK 163
+#define MMSS_MNOC_AHB_CLK 164
+#define MMSS_SNOC_DVM_AXI_CLK 165
+#define MMSS_THROTTLE_CAMSS_AHB_CLK 166
+#define MMSS_THROTTLE_CAMSS_AXI_CLK 167
+#define MMSS_THROTTLE_CAMSS_CXO_CLK 168
+#define MMSS_THROTTLE_MDSS_AHB_CLK 169
+#define MMSS_THROTTLE_MDSS_AXI_CLK 170
+#define MMSS_THROTTLE_MDSS_CXO_CLK 171
+#define MMSS_THROTTLE_VIDEO_AHB_CLK 172
+#define MMSS_THROTTLE_VIDEO_AXI_CLK 173
+#define MMSS_THROTTLE_VIDEO_CXO_CLK 174
+#define MMSS_VIDEO_AHB_CLK 175
+#define MMSS_VIDEO_AXI_CLK 176
+#define MMSS_VIDEO_CORE_CLK 177
+#define MMSS_VIDEO_SUBCORE0_CLK 178
+#define PCLK0_CLK_SRC 179
+#define PCLK1_CLK_SRC 180
+#define ROT_CLK_SRC 181
+#define VFE0_CLK_SRC 182
+#define VFE1_CLK_SRC 183
+#define VIDEO_CORE_CLK_SRC 184
+#define VSYNC_CLK_SRC 185
#define BIMC_SMMU_GDSC 0
#define CAMSS_CPP_GDSC 1
@@ -209,5 +210,6 @@
#define VIDEO_SUBCORE0_GDSC 6
#define VIDEO_TOP_GDSC 7
+#define CAMSS_MICRO_BCR 0
#endif
diff --git a/include/linux/ipa.h b/include/linux/ipa.h
index e66d388651b8..c3ffe51d8069 100644
--- a/include/linux/ipa.h
+++ b/include/linux/ipa.h
@@ -98,7 +98,7 @@ enum ipa_dp_evt_type {
};
/**
- * enum hdr_total_len_or_pad_type - type vof alue held by TOTAL_LEN_OR_PAD
+ * enum hdr_total_len_or_pad_type - type of value held by TOTAL_LEN_OR_PAD
* field in header configuration register.
* @IPA_HDR_PAD: field is used as padding length
* @IPA_HDR_TOTAL_LEN: field is used as total length
@@ -433,6 +433,55 @@ typedef void (*ipa_notify_cb)(void *priv, enum ipa_dp_evt_type evt,
unsigned long data);
/**
+ * enum ipa_wdi_meter_evt_type - type of event client callback is
+ * for AP+STA mode metering
+ * @IPA_GET_WDI_SAP_STATS: get IPA_stats betwen SAP and STA -
+ * use ipa_get_wdi_sap_stats structure
+ * @IPA_SET_WIFI_QUOTA: set quota limit on STA -
+ * use ipa_set_wifi_quota structure
+ */
+enum ipa_wdi_meter_evt_type {
+ IPA_GET_WDI_SAP_STATS,
+ IPA_SET_WIFI_QUOTA,
+};
+
+struct ipa_get_wdi_sap_stats {
+ /* indicate to reset stats after query */
+ uint8_t reset_stats;
+ /* indicate valid stats from wlan-fw */
+ uint8_t stats_valid;
+ /* Tx: SAP->STA */
+ uint64_t ipv4_tx_packets;
+ uint64_t ipv4_tx_bytes;
+ /* Rx: STA->SAP */
+ uint64_t ipv4_rx_packets;
+ uint64_t ipv4_rx_bytes;
+ uint64_t ipv6_tx_packets;
+ uint64_t ipv6_tx_bytes;
+ uint64_t ipv6_rx_packets;
+ uint64_t ipv6_rx_bytes;
+};
+
+/**
+ * struct ipa_set_wifi_quota - structure used for
+ * IPA_SET_WIFI_QUOTA.
+ *
+ * @quota_bytes: Quota (in bytes) for the STA interface.
+ * @set_quota: Indicate whether to set the quota (use 1) or
+ * unset the quota.
+ *
+ */
+struct ipa_set_wifi_quota {
+ uint64_t quota_bytes;
+ uint8_t set_quota;
+ /* indicate valid quota set from wlan-fw */
+ uint8_t set_valid;
+};
+
+typedef void (*ipa_wdi_meter_notifier_cb)(enum ipa_wdi_meter_evt_type evt,
+ void *data);
+
+/**
* struct ipa_connect_params - low-level client connect input parameters. Either
* client allocates the data and desc FIFO and specifies that in data+desc OR
* specifies sizes and pipe_mem pref and IPA does the allocation.
@@ -1001,6 +1050,7 @@ struct ipa_wdi_dl_params_smmu {
* @ul_smmu: WDI_RX configuration info when WLAN uses SMMU
* @dl_smmu: WDI_TX configuration info when WLAN uses SMMU
* @smmu_enabled: true if WLAN uses SMMU
+ * @ipa_wdi_meter_notifier_cb: Get WDI stats and quato info
*/
struct ipa_wdi_in_params {
struct ipa_sys_connect_params sys;
@@ -1011,6 +1061,9 @@ struct ipa_wdi_in_params {
struct ipa_wdi_dl_params_smmu dl_smmu;
} u;
bool smmu_enabled;
+#ifdef IPA_WAN_MSG_IPv6_ADDR_GW_LEN
+ ipa_wdi_meter_notifier_cb wdi_notify;
+#endif
};
/**
@@ -1265,6 +1318,9 @@ int ipa_resume_wdi_pipe(u32 clnt_hdl);
int ipa_suspend_wdi_pipe(u32 clnt_hdl);
int ipa_get_wdi_stats(struct IpaHwStatsWDIInfoData_t *stats);
u16 ipa_get_smem_restr_bytes(void);
+int ipa_broadcast_wdi_quota_reach_ind(uint32_t fid,
+ uint64_t num_bytes);
+
/*
* To retrieve doorbell physical address of
* wlan pipes
@@ -1845,6 +1901,12 @@ static inline int ipa_suspend_wdi_pipe(u32 clnt_hdl)
return -EPERM;
}
+static inline int ipa_broadcast_wdi_quota_reach_ind(uint32_t fid,
+ uint64_t num_bytes)
+{
+ return -EPERM;
+}
+
static inline int ipa_uc_wdi_get_dbpa(
struct ipa_wdi_db_params *out)
{
diff --git a/include/linux/qpnp/qpnp-revid.h b/include/linux/qpnp/qpnp-revid.h
index 652d68ac63bf..8d9bbfd67992 100644
--- a/include/linux/qpnp/qpnp-revid.h
+++ b/include/linux/qpnp/qpnp-revid.h
@@ -171,30 +171,30 @@
/* PMI8996 */
#define PMI8996_SUBTYPE 0x13
-/* PMCOBALT */
-#define PMCOBALT_SUBTYPE 0x14
+/* PM8998 */
+#define PM8998_SUBTYPE 0x14
-/* PMICOBALT */
-#define PMICOBALT_SUBTYPE 0x15
+/* PMI8998 */
+#define PMI8998_SUBTYPE 0x15
/* PMFALCON */
#define PM2FALCON_SUBTYPE 0x1A
#define PMFALCON_SUBTYPE 0x1B
-#define PMICOBALT_V1P0_REV1 0x00
-#define PMICOBALT_V1P0_REV2 0x00
-#define PMICOBALT_V1P0_REV3 0x00
-#define PMICOBALT_V1P0_REV4 0x01
+#define PMI8998_V1P0_REV1 0x00
+#define PMI8998_V1P0_REV2 0x00
+#define PMI8998_V1P0_REV3 0x00
+#define PMI8998_V1P0_REV4 0x01
-#define PMICOBALT_V1P1_REV1 0x00
-#define PMICOBALT_V1P1_REV2 0x00
-#define PMICOBALT_V1P1_REV3 0x01
-#define PMICOBALT_V1P1_REV4 0x01
+#define PMI8998_V1P1_REV1 0x00
+#define PMI8998_V1P1_REV2 0x00
+#define PMI8998_V1P1_REV3 0x01
+#define PMI8998_V1P1_REV4 0x01
-#define PMICOBALT_V2P0_REV1 0x00
-#define PMICOBALT_V2P0_REV2 0x00
-#define PMICOBALT_V2P0_REV3 0x00
-#define PMICOBALT_V2P0_REV4 0x02
+#define PMI8998_V2P0_REV1 0x00
+#define PMI8998_V2P0_REV2 0x00
+#define PMI8998_V2P0_REV3 0x00
+#define PMI8998_V2P0_REV4 0x02
/* PM8005 */
#define PM8005_SUBTYPE 0x18
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h
index b89c9c2f7f6e..cc1e8d6b3454 100644
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
@@ -796,19 +796,15 @@ struct cfg80211_csa_settings {
* @iftype_num: array with the number of interfaces of each interface
* type. The index is the interface type as specified in &enum
* nl80211_iftype.
- * @beacon_int_gcd: a value specifying GCD of all beaconing interfaces,
- * the GCD of a single value is considered the value itself, so for
- * a single interface this should be set to that interface's beacon
- * interval
- * @beacon_int_different: a flag indicating whether or not all beacon
- * intervals (of beaconing interfaces) are different or not.
+ * @new_beacon_int: set this to the beacon interval of a new interface
+ * that's not operating yet, if such is to be checked as part of
+ * the verification
*/
struct iface_combination_params {
int num_different_channels;
u8 radar_detect;
int iftype_num[NUM_NL80211_IFTYPES];
- u32 beacon_int_gcd;
- bool beacon_int_different;
+ u32 new_beacon_int;
};
/**
@@ -3219,6 +3215,9 @@ struct wiphy_iftype_ext_capab {
* @vht_capa_mod_mask: Specify what VHT capabilities can be over-ridden.
* If null, then none can be over-ridden.
*
+ * @wdev_list: the list of associated (virtual) interfaces; this list must
+ * not be modified by the driver, but can be read with RTNL/RCU protection.
+ *
* @max_acl_mac_addrs: Maximum number of MAC addresses that the device
* supports for ACL.
*
@@ -3363,6 +3362,8 @@ struct wiphy {
const struct ieee80211_ht_cap *ht_capa_mod_mask;
const struct ieee80211_vht_cap *vht_capa_mod_mask;
+ struct list_head wdev_list;
+
/* the network namespace this phy lives in currently */
possible_net_t _net;
diff --git a/include/net/tcp.h b/include/net/tcp.h
index 213601d620e0..52402ab90c57 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
@@ -1528,6 +1528,8 @@ static inline void tcp_check_send_head(struct sock *sk, struct sk_buff *skb_unli
{
if (sk->sk_send_head == skb_unlinked)
sk->sk_send_head = NULL;
+ if (tcp_sk(sk)->highest_sack == skb_unlinked)
+ tcp_sk(sk)->highest_sack = NULL;
}
static inline void tcp_init_send_head(struct sock *sk)
diff --git a/include/soc/qcom/socinfo.h b/include/soc/qcom/socinfo.h
index 76555ce53d97..5f1912a62267 100644
--- a/include/soc/qcom/socinfo.h
+++ b/include/soc/qcom/socinfo.h
@@ -88,10 +88,10 @@
of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msm8996-cdp")
#define early_machine_is_msm8929() \
of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msm8929")
-#define early_machine_is_msmcobalt() \
- of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msmcobalt")
-#define early_machine_is_apqcobalt() \
- of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,apqcobalt")
+#define early_machine_is_msm8998() \
+ of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msm8998")
+#define early_machine_is_apq8998() \
+ of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,apq8998")
#define early_machine_is_msmhamster() \
of_flat_dt_is_compatible(of_get_flat_dt_root(), "qcom,msmhamster")
#define early_machine_is_msmfalcon() \
@@ -131,8 +131,8 @@
#define early_machine_is_msm8996() 0
#define early_machine_is_msm8976() 0
#define early_machine_is_msm8929() 0
-#define early_machine_is_msmcobalt() 0
-#define early_machine_is_apqcobalt() 0
+#define early_machine_is_msm8998() 0
+#define early_machine_is_apq8998() 0
#define early_machine_is_msmhamster() 0
#define early_machine_is_msmfalcon() 0
#define early_machine_is_msmtriton() 0
@@ -192,7 +192,7 @@ enum msm_cpu {
MSM_CPU_8996,
MSM_CPU_8976,
MSM_CPU_8929,
- MSM_CPU_COBALT,
+ MSM_CPU_8998,
MSM_CPU_HAMSTER,
MSM_CPU_FALCON,
MSM_CPU_TRITON,
diff --git a/include/uapi/linux/msm_mdp.h b/include/uapi/linux/msm_mdp.h
index f0ac02e9c7a8..20b879c2e5fc 100644
--- a/include/uapi/linux/msm_mdp.h
+++ b/include/uapi/linux/msm_mdp.h
@@ -116,8 +116,8 @@
#define MDSS_MDP_HW_REV_114 MDSS_MDP_REV(1, 14, 0) /* 8937 v1.0 */
#define MDSS_MDP_HW_REV_115 MDSS_MDP_REV(1, 15, 0) /* msmgold */
#define MDSS_MDP_HW_REV_116 MDSS_MDP_REV(1, 16, 0) /* msmtitanium */
-#define MDSS_MDP_HW_REV_300 MDSS_MDP_REV(3, 0, 0) /* msmcobalt */
-#define MDSS_MDP_HW_REV_301 MDSS_MDP_REV(3, 0, 1) /* msmcobalt v1.0 */
+#define MDSS_MDP_HW_REV_300 MDSS_MDP_REV(3, 0, 0) /* msm8998 */
+#define MDSS_MDP_HW_REV_301 MDSS_MDP_REV(3, 0, 1) /* msm8998 v1.0 */
enum {
NOTIFY_UPDATE_INIT,