Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp2060281pxb; Mon, 23 Aug 2021 11:05:42 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx+MdAvGxy3W+rhRJRXZHw0kCnkAGPhfvW+TCYhQSGn1qW2QFECI1AnEwy69VeFIEadzmS9 X-Received: by 2002:a5d:8450:: with SMTP id w16mr26314057ior.141.1629741942228; Mon, 23 Aug 2021 11:05:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1629741942; cv=none; d=google.com; s=arc-20160816; b=CtC1LNmVHzU6Ptllg5G2lWjHkOmyW2LgTU/YSxsL+zsgNFatmVoySz837GdmeRTDB6 rz6Cc8YoLo0sejQNtRxoxxKcJwUs/jCSmyK/hng+XABw2hBQqca6c4++kNp3gpMAJw8q gW7wNYpxh4qXhKELB2Z0sMsKeLGFjEtcU6m7dsid/vLWoU7sBwDsObXBmWRgzI5L4Gdf NuA5TZpIt/olvuX9Hbh/mzS7Kyefi8yKYkIfH0ogI6dx3GP4/qpTX4aan6tS30Lvtx/s CXuJ9e7QQ3tmWPCmg9OtFFWn86IcoU6JA83pxBmGHN9TkkyhqpMHCifLy6CSw8NpRO+H 97Og== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=Q2pjFb5GKg8gB0DG97H4af6UH0NP8J4zuwk/Cdw0YTQ=; b=vDkaqzW1TwTXqZDQHqrBHoWbL7P/uj7ba9uMpii7DvgnHvukWM0qp13ND5of36VJ46 lx160M1thShm+DSqNVCVF/zBoQ6hX3Ax5wn9qRDNR2QtH+1M5o7VOzI3Dkjqwq+8n92a BPVmWcgM75NedA8y+X3szcqsTR+AzQcT3PcYuHLOowsfeZldAwxy8pN68D/OQ0ryM3HZ n4PpWATX3hQ+xHESK5HUd2pIyuTCxqkj6N8VcEc7EU1+SwsYqepRUZZHvD3sIVKqMHO2 nKDHDVSvuOEK9pnqWPne6IPMt5IUwtqDF0sbfQTGE28RNtcW4Os3uAhiebuCvcQYn5VZ qumQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="bTDz6J8/"; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n3si14785463ilt.132.2021.08.23.11.05.28; Mon, 23 Aug 2021 11:05:42 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b="bTDz6J8/"; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231924AbhHWSEI (ORCPT + 99 others); Mon, 23 Aug 2021 14:04:08 -0400 Received: from mail.kernel.org ([198.145.29.99]:54044 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232071AbhHWSEF (ORCPT ); Mon, 23 Aug 2021 14:04:05 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8E9EC613A6; Mon, 23 Aug 2021 18:03:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1629741802; bh=6pYbU9x1AIKeZXK+TbaFZOdM74+ZgHIfIbcdpbRFwv0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=bTDz6J8/JGIsItvdtJCNtx067uro4PUiUYmODAD+VVxdrwMsfIbqgHqtrVGe6wdbu 2fLjI0H863LUALsQTcaMw1wUYSPzWkpkt7sS4TosIBhH1E3aREnrWyRJQncD+k8ptX LohY5GOOWjFbEFjB6CDPdGJKFM3Q9VyfwQ/Ot3Qp2h4ASqEABjSg+Ips+HXgNwf6zt 8mOEZwsL0vkg5BOlOn8GKYq72ETqmBlE4hlyOq2udmJFBYwxf+IWX0qJUwa2po1WhJ Lgac/4nJCaMIQY9zQcIf5J6d9OE/Z3TPil8IDuuQdtkmLvYVdOrXQQcuV3X1os6iWS BTr1yMsXk09jw== From: Lorenzo Bianconi To: nbd@nbd.name, johannes@sipsolutions.net Cc: linux-wireless@vger.kernel.org, lorenzo.bianconi@redhat.com, ryder.lee@mediatek.com, chui-hao.chiu@mediatek.com Subject: [PATCH v4 mac80211-next 7/7] mt76: mt7915: add twt_stats knob in debugfs Date: Mon, 23 Aug 2021 20:02:44 +0200 Message-Id: X-Mailer: git-send-email 2.31.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org Introduce twt_stats knob in debugfs in order to dump established agreements Tested-by: Peter Chiu Signed-off-by: Lorenzo Bianconi --- .../wireless/mediatek/mt76/mt7915/debugfs.c | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c b/drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c index d9d18f662039..655e4f5171e4 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c +++ b/drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c @@ -335,6 +335,32 @@ mt7915_read_rate_txpower(struct seq_file *s, void *data) return 0; } +static int +mt7915_twt_stats(struct seq_file *s, void *data) +{ + struct mt7915_dev *dev = dev_get_drvdata(s->private); + struct mt7915_twt_flow *iter; + + rcu_read_lock(); + + seq_puts(s, " wcid | id | flags | exp | mantissa"); + seq_puts(s, " | duration | tsf |\n"); + list_for_each_entry_rcu(iter, &dev->twt_list, list) + seq_printf(s, + "%9d | %8d | %5c%c%c%c | %8d | %8d | %8d | %14lld |\n", + iter->wcid, iter->id, + iter->sched ? 's' : 'u', + iter->protection ? 'p' : '-', + iter->trigger ? 't' : '-', + iter->flowtype ? '-' : 'a', + iter->exp, iter->mantissa, + iter->duration, iter->tsf); + + rcu_read_unlock(); + + return 0; +} + int mt7915_init_debugfs(struct mt7915_dev *dev) { struct dentry *dir; @@ -352,6 +378,8 @@ int mt7915_init_debugfs(struct mt7915_dev *dev) debugfs_create_file("implicit_txbf", 0600, dir, dev, &fops_implicit_txbf); debugfs_create_u32("dfs_hw_pattern", 0400, dir, &dev->hw_pattern); + debugfs_create_devm_seqfile(dev->mt76.dev, "twt_stats", dir, + mt7915_twt_stats); /* test knobs */ debugfs_create_file("radar_trigger", 0200, dir, dev, &fops_radar_trigger); -- 2.31.1