]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
mt76: introduce mt76x02_init_agc_gain routine
authorLorenzo Bianconi <lorenzo.bianconi@redhat.com>
Fri, 12 Oct 2018 10:16:26 +0000 (12:16 +0200)
committerFelix Fietkau <nbd@nbd.name>
Sat, 13 Oct 2018 15:39:50 +0000 (17:39 +0200)
Add mt76x02_init_agc_gain routine in mt76x02-lib moudule in
order to be reused by mt76x0 for vga initalization

Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt76x02_phy.c
drivers/net/wireless/mediatek/mt76/mt76x02_phy.h
drivers/net/wireless/mediatek/mt76/mt76x2/pci_phy.c

index 97310da37d77d50844d7438bde897e2988aafebe..0f1d7b5c9f68e31f456d497e820003621d4a72c5 100644 (file)
@@ -244,3 +244,15 @@ bool mt76x02_phy_adjust_vga_gain(struct mt76x02_dev *dev)
        return ret;
 }
 EXPORT_SYMBOL_GPL(mt76x02_phy_adjust_vga_gain);
+
+void mt76x02_init_agc_gain(struct mt76x02_dev *dev)
+{
+       dev->cal.agc_gain_init[0] = mt76_get_field(dev, MT_BBP(AGC, 8),
+                                                  MT_BBP_AGC_GAIN);
+       dev->cal.agc_gain_init[1] = mt76_get_field(dev, MT_BBP(AGC, 9),
+                                                  MT_BBP_AGC_GAIN);
+       memcpy(dev->cal.agc_gain_cur, dev->cal.agc_gain_init,
+              sizeof(dev->cal.agc_gain_cur));
+       dev->cal.low_gain = -1;
+}
+EXPORT_SYMBOL_GPL(mt76x02_init_agc_gain);
index 8e3a0f93ca803fc52c0f6d70ddf483a507cd0a2a..2b316cf7c70cde9d117dfd81646a2d34f7029dc5 100644 (file)
@@ -56,5 +56,6 @@ void mt76x02_phy_set_bw(struct mt76x02_dev *dev, int width, u8 ctrl);
 void mt76x02_phy_set_band(struct mt76x02_dev *dev, int band,
                          bool primary_upper);
 bool mt76x02_phy_adjust_vga_gain(struct mt76x02_dev *dev);
+void mt76x02_init_agc_gain(struct mt76x02_dev *dev);
 
 #endif /* __MT76x02_PHY_H */
index 818d2f3e8ac9d9d441030a366426bc81fbd01bf4..5bda44540225e90cd007351a9d3c2502424bc393 100644 (file)
@@ -124,13 +124,6 @@ void mt76x2_phy_set_antenna(struct mt76x02_dev *dev)
        mt76_wr(dev, MT_BBP(AGC, 0), val);
 }
 
-static void
-mt76x2_get_agc_gain(struct mt76x02_dev *dev, u8 *dest)
-{
-       dest[0] = mt76_get_field(dev, MT_BBP(AGC, 8), MT_BBP_AGC_GAIN);
-       dest[1] = mt76_get_field(dev, MT_BBP(AGC, 9), MT_BBP_AGC_GAIN);
-}
-
 static void
 mt76x2_phy_set_gain_val(struct mt76x02_dev *dev)
 {
@@ -340,11 +333,8 @@ int mt76x2_phy_set_channel(struct mt76x02_dev *dev,
        if (scan)
                return 0;
 
-       dev->cal.low_gain = -1;
        mt76x2_phy_channel_calibrate(dev, true);
-       mt76x2_get_agc_gain(dev, dev->cal.agc_gain_init);
-       memcpy(dev->cal.agc_gain_cur, dev->cal.agc_gain_init,
-              sizeof(dev->cal.agc_gain_cur));
+       mt76x02_init_agc_gain(dev);
 
        /* init default values for temp compensation */
        if (mt76x2_tssi_enabled(dev)) {