struct mt7921_dev *dev = file->private;
        int stat[8], i, n;
 
+       mt7921_mutex_acquire(dev);
+
        mt7921_ampdu_stat_read_phy(&dev->phy, file);
 
        /* Tx amsdu info */
                n += stat[i];
        }
 
+       mt7921_mutex_release(dev);
+
        for (i = 0; i < ARRAY_SIZE(stat); i++) {
                seq_printf(file, "AMSDU pack count of %d MSDU in TXD: 0x%x ",
                           i + 1, stat[i]);
        struct mt7921_dev *dev = dev_get_drvdata(s->private);
        int i;
 
+       mt7921_mutex_acquire(dev);
+
        for (i = 0; i < 16; i++) {
                int j, acs = i / 4, index = i % 4;
                u32 ctrl, val, qlen = 0;
                seq_printf(s, "AC%d%d: queued=%d\n", acs, index, qlen);
        }
 
+       mt7921_mutex_release(dev);
+
        return 0;
 }