{"id":2219013,"url":"http://patchwork.ozlabs.org/api/1.1/patches/2219013/?format=json","web_url":"http://patchwork.ozlabs.org/project/hostap/patch/20260402095356.1401176-7-allen.ye@mediatek.com/","project":{"id":22,"url":"http://patchwork.ozlabs.org/api/1.1/projects/22/?format=json","name":"HostAP Development","link_name":"hostap","list_id":"hostap.lists.infradead.org","list_email":"hostap@lists.infradead.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260402095356.1401176-7-allen.ye@mediatek.com>","date":"2026-04-02T09:53:55","name":"[v11,6/7] hostapd: Update TPE IE according to AFC","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"16072b5fb58b184806e34770838c775c2131f705","submitter":{"id":86975,"url":"http://patchwork.ozlabs.org/api/1.1/people/86975/?format=json","name":"Allen Ye","email":"Allen.Ye@mediatek.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/hostap/patch/20260402095356.1401176-7-allen.ye@mediatek.com/mbox/","series":[{"id":498460,"url":"http://patchwork.ozlabs.org/api/1.1/series/498460/?format=json","web_url":"http://patchwork.ozlabs.org/project/hostap/list/?series=498460","date":"2026-04-02T09:53:56","name":"Introduce Automated Frequency Coordination (AFC) support","version":11,"mbox":"http://patchwork.ozlabs.org/series/498460/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2219013/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2219013/checks/","tags":{},"headers":{"Return-Path":"\n <hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n secure) header.d=lists.infradead.org header.i=@lists.infradead.org\n header.a=rsa-sha256 header.s=bombadil.20210309 header.b=ogxsgk1T;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n secure) header.d=infradead.org header.i=@infradead.org header.a=rsa-sha256\n header.s=desiato.20200630 header.b=eWmeb4Tq;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n unprotected) header.d=mediatek.com header.i=@mediatek.com header.a=rsa-sha256\n header.s=dk header.b=Mc50soVD;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=none (no SPF record) smtp.mailfrom=lists.infradead.org\n (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org;\n envelope-from=hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n [IPv6:2607:7c80:54:3::133])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmcfV227Gz1yCs\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 02 Apr 2026 20:55:10 +1100 (AEDT)","from localhost ([::1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux))\n\tid 1w8El6-0000000HK1e-0aq0;\n\tThu, 02 Apr 2026 09:54:40 +0000","from desiato.infradead.org ([2001:8b0:10b:1:d65d:64ff:fe57:4e05])\n\tby bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux))\n\tid 1w8El4-0000000HK0r-0fli\n\tfor hostap@bombadil.infradead.org;\n\tThu, 02 Apr 2026 09:54:38 +0000","from mailgw01.mediatek.com ([216.200.240.184])\n\tby desiato.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux))\n\tid 1w8Ekz-00000002Ayc-2LDa\n\tfor hostap@lists.infradead.org;\n\tThu, 02 Apr 2026 09:54:36 +0000","from mtkmbs13n2.mediatek.inc [(172.21.101.108)] by\n mailgw01.mediatek.com\n\t(envelope-from <allen.ye@mediatek.com>)\n\t(musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384\n 256/256)\n\twith ESMTP id 1202824394; Thu, 02 Apr 2026 02:54:18 -0700","from mtkmbs13n2.mediatek.inc (172.21.101.108) by\n MTKMBS09N2.mediatek.inc (172.21.101.94) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.2.2562.29; Thu, 2 Apr 2026 17:54:16 +0800","from mtksitap99.mediatek.inc (10.233.130.16) by\n mtkmbs13n2.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id\n 15.2.2562.29 via Frontend Transport; Thu, 2 Apr 2026 17:54:16 +0800"],"DKIM-Signature":["v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20210309; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:\n\tMessage-ID:Date:Subject:CC:To:From:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=WzmL10DBZR0UgcWhFLCQkVHs2un+toQJuuE7YUPaHtU=; b=ogxsgk1T1ZrLqz\n\tTtvhkeNDszwvRFansvclHXDlYQnldLKqhyJjf3/uWreFzRYRJj0sK+A0Hmpn+/xNEc0vLOZDoPB5q\n\tLqAC9AMBboiRii4tIQFSDQrBajtPIukUhAKSKIeVJq1b3N80Pc3PQlRaJuZc9lNf+tQXUSUwPMvDX\n\tXsroXj6pVZAOca/GV/s3f4FUbXmXCOgZsrMypRF2VDCCHxK2UaAz869hDV/zLu97H64OU4QJp3uw6\n\tiz94cSHQWGQwYVi9Gqn63N5eTFSTvkNJtWlD8vKtHBgvZZk9YITsiinO6oiuCyD1GWRdi0vysHm8x\n\t7NM+A8zLAm/ogQidr+6A==;","v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=infradead.org; s=desiato.20200630; h=Content-Type:Content-Transfer-Encoding\n\t:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From:\n\tSender:Reply-To:Content-ID:Content-Description;\n\tbh=afRJAyRf+giqJm/mO9s+m3E426o2qyTzDfaoC8sedZ4=; b=eWmeb4TqxIkL1wx4EuQESFiz6X\n\tULtSCxcpK28r619sz2SgdObHdYQ6kr4aiB0xKeqn9s25Hjy338R7wO/b7mUHNNzJfkguTAau/Q2EP\n\tTys/XVV73XHjdeIZS4BL5W9Cqzsd60DCvFVnaDuISLBfCwFqiLyD+fyxccC9oXg60H9JFTzjFbyAX\n\t5L9CxivjsWbauLsBxm6Vq3VKJ9AHuKpp17Hf00RzlEAnRG0Jirpnk4w7Y8Fa8XUD2es3rll8YFQZM\n\tBqV6nebQ/6AsUF/0sYrPxAiMKPSFv+KjO89vYRmFONONR3HVld5VkZbd461VilkcV0k2pxTYo4lYa\n\ttGj1dSww==;","v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n d=mediatek.com; s=dk;\n\th=Content-Type:Content-Transfer-Encoding:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From;\n bh=afRJAyRf+giqJm/mO9s+m3E426o2qyTzDfaoC8sedZ4=;\n\tb=Mc50soVDE2Obnh2VI9bkvyzqCO+x+viv0g/52fEnK44VTBnxMAeSu7pfhoWiBLoHfRg+64FDet+nEBnUNL7xG3MeEVxFIXuE7pTRy+Rpf4RnDBXOTT4K0DopD4Y7+sPNIbjfqjRv++f3W7WesHdc1PoUIEHtBG/Km/+41WvSZs0=;"],"X-UUID":["ea9b28482e7911f19e7563141e833ce8-20260402","ea9b28482e7911f19e7563141e833ce8-20260402"],"X-CID-P-RULE":"Release_Ham","X-CID-O-INFO":"VERSION:1.3.12,REQID:fb60cbff-d0c2-4ee0-b85b-03e4487e43c0,IP:0,U\n\tRL:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION:\n\trelease,TS:0","X-CID-META":"VersionHash:e7bac3a,CLOUDID:eaf9fd8e-6df4-4a3d-a7a4-fbdc42d669ce,B\n\tulkID:nil,BulkQuantity:0,Recheck:0,SF:81|82|102|836|865|888|898,TC:-5,Cont\n\tent:0|15|50,EDM:-3,IP:nil,URL:0,File:130,RT:0,Bulk:nil,QS:nil,BEC:-1,COL:0\n\t,OSI:0,OSA:0,AV:0,LES:1,SPR:NO,DKR:0,DKP:0,BRR:0,BRE:0,ARC:0","X-CID-BVR":"2,SSN|SDN","X-CID-BAS":"2,SSN|SDN,0,_","X-CID-FACTOR":"TF_CID_SPAM_SNR","X-CID-RHF":"D41D8CD98F00B204E9800998ECF8427E","From":"Allen Ye <allen.ye@mediatek.com>","To":"Jouni Malinen <j@w1.fi>","CC":"<hostap@lists.infradead.org>, Felix Fietkau <nbd@nbd.name>, Evelyn Tsai\n\t<evelyn.tsai@mediatek.com>, \"Mark-MC . Lee\" <mark-mc.lee@mediatek.com>, Tarun\n Radhakrishnan <tarun.r@tataelxsi.co.in>, Lorenzo Bianconi\n\t<lorenzo@kernel.org>, Allen Ye <allen.ye@mediatek.com>, Krishna Chaitanya\n\t<chaitanya.mgit@gmail.com>","Subject":"[PATCH v11 6/7] hostapd: Update TPE IE according to AFC","Date":"Thu, 2 Apr 2026 17:53:55 +0800","Message-ID":"<20260402095356.1401176-7-allen.ye@mediatek.com>","X-Mailer":"git-send-email 2.45.2","In-Reply-To":"<20260402095356.1401176-1-allen.ye@mediatek.com>","References":"<20260402095356.1401176-1-allen.ye@mediatek.com>","MIME-Version":"1.0","X-MTK":"N","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20260402_105434_806240_9F49A75C ","X-CRM114-Status":"GOOD (  18.37  )","X-Spam-Score":"2.8 (++)","X-Spam-Report":"Spam detection software,\n running on the system \"desiato.infradead.org\",\n has NOT identified this incoming email as spam.  The original\n message has been attached to this so you can view it or label\n similar future email.  If you have any questions, see\n the administrator of that system for details.\n Content preview:  From: Lorenzo Bianconi <lorenzo@kernel.org> Update Transmit\n    Power Envelope (TPE) IE according to the reply from AFC coordinator on\n UNII-5\n    or UNII-7 6GHz bands. Tested-by: Felix Fietkau <nbd@nbd.name> Tested-by:\n   Allen Ye <allen.ye@mediatek.com> Tested-by: Krishna Chaitanya\n <chaitanya.mgit@gmail.com>\n    Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Signed- [...]\n Content analysis details:   (2.8 points, 5.0 required)\n  pts rule name              description\n ---- ----------------------\n --------------------------------------------------\n  1.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to\n                              Validity was blocked.  See\n                             https://knowledge.validity.com/hc/en-us/articles/20961730681243\n                              for more information.\n                             [216.200.240.184 listed in\n sa-accredit.habeas.com]\n  1.0 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED RBL: ADMINISTRATOR NOTICE: The\n                             query to Validity was blocked.  See\n                             https://knowledge.validity.com/hc/en-us/articles/20961730681243\n                              for more information.\n                        [216.200.240.184 listed in\n sa-trusted.bondedsender.org]\n -0.0 SPF_PASS               SPF: sender matches SPF record\n -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record\n  0.1 DKIM_SIGNED            Message has a DKIM or DK signature,\n not necessarily valid\n -0.1 DKIM_VALID_EF          Message has a valid DKIM or DK signature from\n                             envelope-from domain\n -0.1 DKIM_VALID_AU          Message has a valid DKIM or DK signature from\n author's\n                             domain\n -0.1 DKIM_VALID             Message has at least one valid DKIM or DK\n signature\n  1.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to\n                              Validity was blocked.  See\n                             https://knowledge.validity.com/hc/en-us/articles/20961730681243\n                              for more information.\n                           [216.200.240.184 listed in\n bl.score.senderscore.com]\n  0.0 UNPARSEABLE_RELAY      Informational: message has unparseable relay\n lines","X-BeenThere":"hostap@lists.infradead.org","X-Mailman-Version":"2.1.34","Precedence":"list","List-Id":"<hostap.lists.infradead.org>","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/hostap>,\n <mailto:hostap-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/hostap/>","List-Post":"<mailto:hostap@lists.infradead.org>","List-Help":"<mailto:hostap-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/hostap>,\n <mailto:hostap-request@lists.infradead.org?subject=subscribe>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"\"Hostap\" <hostap-bounces@lists.infradead.org>","Errors-To":"hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org"},"content":"From: Lorenzo Bianconi <lorenzo@kernel.org>\n\nUpdate Transmit Power Envelope (TPE) IE according to the reply from AFC\ncoordinator on UNII-5 or UNII-7 6GHz bands.\n\nTested-by: Felix Fietkau <nbd@nbd.name>\nTested-by: Allen Ye <allen.ye@mediatek.com>\nTested-by: Krishna Chaitanya <chaitanya.mgit@gmail.com>\nSigned-off-by: Lorenzo Bianconi <lorenzo@kernel.org>\nSigned-off-by: Allen Ye <allen.ye@mediatek.com>\n---\n src/ap/afc.c        | 42 +++++++++++++++++++++++++++++++++++\n src/ap/hostapd.h    | 10 +++++++--\n src/ap/ieee802_11.c | 53 ++++++++++++++++++++++++++++++---------------\n 3 files changed, 85 insertions(+), 20 deletions(-)","diff":"diff --git a/src/ap/afc.c b/src/ap/afc.c\nindex e6b9769c0..ab359d865 100644\n--- a/src/ap/afc.c\n+++ b/src/ap/afc.c\n@@ -1078,3 +1078,45 @@ static int hostapd_afc_reset_channels(struct hostapd_iface *iface)\n \n \treturn ret;\n }\n+\n+\n+int hostap_afc_get_chan_max_eirp_power(struct hostapd_iface *iface, bool psd,\n+\t\t\t\t       int *power)\n+{\n+\tunsigned int i;\n+\n+\tif (!he_reg_is_sp(iface->conf->he_6ghz_reg_pwr_type))\n+\t\treturn -EINVAL;\n+\n+\tif (!iface->afc.data_valid)\n+\t\treturn -EINVAL;\n+\n+\tif (psd) {\n+\t\tfor (i = 0; i < iface->afc.num_freq_range; i++) {\n+\t\t\tstruct afc_freq_range_elem *f;\n+\n+\t\t\tf = &iface->afc.freq_range[i];\n+\t\t\tif (iface->freq >= f->low_freq &&\n+\t\t\t    iface->freq <= f->high_freq) {\n+\t\t\t\t*power = (int)(2 * f->max_psd);\n+\t\t\t\treturn 0;\n+\t\t\t}\n+\t\t}\n+\t} else {\n+\t\tfor (i = 0; i < iface->afc.num_chan_info; i++) {\n+\t\t\tstruct afc_chan_info_elem *c;\n+\n+\t\t\tc = &iface->afc.chan_info_list[i];\n+\t\t\tif (c->chan == iface->conf->channel) {\n+\t\t\t\tunsigned int j;\n+\n+\t\t\t\t*power = 0;\n+\t\t\t\tfor (j = 0; j < ARRAY_SIZE(c->power); j++)\n+\t\t\t\t\t*power = MAX(*power,\n+\t\t\t\t\t\t     (int)(2 * c->power[j]));\n+\t\t\t\treturn 0;\n+\t\t\t}\n+\t\t}\n+\t}\n+\treturn -EINVAL;\n+}\ndiff --git a/src/ap/hostapd.h b/src/ap/hostapd.h\nindex d24697ede..0e2c52a26 100644\n--- a/src/ap/hostapd.h\n+++ b/src/ap/hostapd.h\n@@ -847,16 +847,23 @@ void hostapd_ocv_check_csa_sa_query(void *eloop_ctx, void *timeout_ctx);\n void hostapd_switch_color(struct hostapd_data *hapd, u64 bitmap);\n void hostapd_cleanup_cca_params(struct hostapd_data *hapd);\n #ifdef CONFIG_AFC\n+int hostap_afc_get_chan_max_eirp_power(struct hostapd_iface *iface, bool psd,\n+\t\t\t\t       int *power);\n int hostapd_afc_handle_request(struct hostapd_iface *iface);\n void hostapd_afc_send_request(struct hostapd_iface *iface);\n void hostapd_afc_stop(struct hostapd_iface *iface);\n void hostap_afc_disable_channels(struct hostapd_iface *iface);\n #else\n+static inline int\n+hostap_afc_get_chan_max_eirp_power(struct hostapd_iface *iface, bool psd,\n+\t\t\t\t   int *power)\n+{\n+\treturn -EINVAL;\n+}\n static inline int hostapd_afc_handle_request(struct hostapd_iface *iface)\n {\n \treturn 1;\n }\n-\n static inline void hostapd_afc_send_request(struct hostapd_iface *iface)\n {\n }\n@@ -864,7 +871,6 @@ static inline void hostapd_afc_send_request(struct hostapd_iface *iface)\n static inline void hostapd_afc_stop(struct hostapd_iface *iface)\n {\n }\n-\n static inline void hostap_afc_disable_channels(struct hostapd_iface *iface)\n {\n }\ndiff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c\nindex 9e0e2abe3..0a9d9b180 100644\n--- a/src/ap/ieee802_11.c\n+++ b/src/ap/ieee802_11.c\n@@ -8935,42 +8935,59 @@ u8 * hostapd_eid_txpower_envelope(struct hostapd_data *hapd, u8 *eid)\n \t */\n \tif (is_6ghz_op_class(iconf->op_class)) {\n \t\tenum max_tx_pwr_interpretation tx_pwr_intrpn;\n+\t\tint err;\n+\t\tint max_eirp_psd = REG_PSD_MAX_TXPOWER_FOR_DEFAULT_CLIENT * 2;\n+\t\tint max_eirp_power = iconf->reg_def_cli_eirp;\n \n \t\t/* Same Maximum Transmit Power for all 20 MHz bands */\n \t\ttx_pwr_count = 0;\n \t\ttx_pwr_intrpn = REGULATORY_CLIENT_EIRP_PSD;\n \n \t\t/* Default Transmit Power Envelope for Global Operating Class */\n-\t\tif (hapd->iconf->reg_def_cli_eirp_psd != -1)\n-\t\t\ttx_pwr = hapd->iconf->reg_def_cli_eirp_psd;\n-\t\telse\n-\t\t\ttx_pwr = REG_PSD_MAX_TXPOWER_FOR_DEFAULT_CLIENT * 2;\n+\t\terr = hostap_afc_get_chan_max_eirp_power(iface, true,\n+\t\t\t\t\t\t\t &max_eirp_psd);\n+\t\tif (err < 0) {\n+\t\t\tif (hapd->iconf->reg_def_cli_eirp_psd != -1)\n+\t\t\t\tmax_eirp_psd =\n+\t\t\t\t\thapd->iconf->reg_def_cli_eirp_psd;\n+\t\t\telse\n+\t\t\t\tmax_eirp_psd =\n+\t\t\t\t\tREG_PSD_MAX_TXPOWER_FOR_DEFAULT_CLIENT * 2;\n+\t\t}\n \n \t\teid = hostapd_add_tpe_info(eid, tx_pwr_count, tx_pwr_intrpn,\n-\t\t\t\t\t   REG_DEFAULT_CLIENT, tx_pwr);\n+\t\t\t\t\t   REG_DEFAULT_CLIENT, max_eirp_psd);\n \n \t\t/* Indoor Access Point must include an additional TPE for\n \t\t * subordinate devices */\n \t\tif (he_reg_is_indoor(iconf->he_6ghz_reg_pwr_type)) {\n-\t\t\t/* TODO: Extract PSD limits from channel data */\n-\t\t\tif (hapd->iconf->reg_sub_cli_eirp_psd != -1)\n-\t\t\t\ttx_pwr = hapd->iconf->reg_sub_cli_eirp_psd;\n-\t\t\telse\n-\t\t\t\ttx_pwr = REG_PSD_MAX_TXPOWER_FOR_SUBORDINATE_CLIENT * 2;\n+\t\t\tif (err < 0) {\n+\t\t\t\t/* non-AFC connection */\n+\t\t\t\tif (hapd->iconf->reg_sub_cli_eirp_psd != -1)\n+\t\t\t\t\tmax_eirp_psd =\n+\t\t\t\t\t\thapd->iconf->reg_sub_cli_eirp_psd;\n+\t\t\t\telse\n+\t\t\t\t\tmax_eirp_psd =\n+\t\t\t\t\t\tREG_PSD_MAX_TXPOWER_FOR_SUBORDINATE_CLIENT * 2;\n+\t\t\t}\n \t\t\teid = hostapd_add_tpe_info(eid, tx_pwr_count,\n \t\t\t\t\t\t   tx_pwr_intrpn,\n \t\t\t\t\t\t   REG_SUBORDINATE_CLIENT,\n-\t\t\t\t\t\t   tx_pwr);\n+\t\t\t\t\t\t   max_eirp_psd);\n \t\t}\n \n-\t\tif (iconf->reg_def_cli_eirp != -1 &&\n-\t\t    he_reg_is_sp(iconf->he_6ghz_reg_pwr_type))\n-\t\t\teid = hostapd_add_tpe_info(\n-\t\t\t\teid, tx_pwr_count, REGULATORY_CLIENT_EIRP,\n-\t\t\t\tREG_DEFAULT_CLIENT,\n-\t\t\t\thapd->iconf->reg_def_cli_eirp);\n+\t\tif (hostap_afc_get_chan_max_eirp_power(iface, false,\n+\t\t\t\t\t\t       &max_eirp_power)) {\n+\t\t\tmax_eirp_power = iconf->reg_def_cli_eirp;\n+\t\t\tif (max_eirp_power == -1 ||\n+\t\t\t    !he_reg_is_sp(iconf->he_6ghz_reg_pwr_type))\n+\t\t\t\treturn eid;\n+\t\t}\n \n-\t\treturn eid;\n+\t\treturn hostapd_add_tpe_info(eid, tx_pwr_count,\n+\t\t\t\t\t    REGULATORY_CLIENT_EIRP,\n+\t\t\t\t\t    REG_DEFAULT_CLIENT,\n+\t\t\t\t\t    max_eirp_power);\n \t}\n #endif /* CONFIG_IEEE80211AX */\n \n","prefixes":["v11","6/7"]}