Skip to content

Commit

Permalink
mt76: move mt76x02_eeprom_copy in mt76x02-lib module
Browse files Browse the repository at this point in the history
Move mt76x02_eeprom_copy utility routine in mt76x02-lib module
in order to be reused by mt76x0 driver adding tssi calibration
support

Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
  • Loading branch information
LorenzoBianconi authored and nbd168 committed Nov 1, 2018
1 parent c7aa8f4 commit bd568d9
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 13 deletions.
12 changes: 12 additions & 0 deletions mt76x02_eeprom.c
Expand Up @@ -53,6 +53,18 @@ mt76x02_efuse_read(struct mt76x02_dev *dev, u16 addr, u8 *data,
return 0;
}

int mt76x02_eeprom_copy(struct mt76x02_dev *dev,
enum mt76x02_eeprom_field field,
void *dest, int len)
{
if (field + len > dev->mt76.eeprom.size)
return -1;

memcpy(dest, dev->mt76.eeprom.data + field, len);
return 0;
}
EXPORT_SYMBOL_GPL(mt76x02_eeprom_copy);

int mt76x02_get_efuse_data(struct mt76x02_dev *dev, u16 base, void *buf,
int len, enum mt76x02_eeprom_modes mode)
{
Expand Down
3 changes: 3 additions & 0 deletions mt76x02_eeprom.h
Expand Up @@ -188,5 +188,8 @@ u8 mt76x02_get_lna_gain(struct mt76x02_dev *dev,
s8 *lna_2g, s8 *lna_5g,
struct ieee80211_channel *chan);
void mt76x02_eeprom_parse_hw_cap(struct mt76x02_dev *dev);
int mt76x02_eeprom_copy(struct mt76x02_dev *dev,
enum mt76x02_eeprom_field field,
void *dest, int len);

#endif /* __MT76x02_EEPROM_H */
15 changes: 2 additions & 13 deletions mt76x2/eeprom.c
Expand Up @@ -21,17 +21,6 @@

#define EE_FIELD(_name, _value) [MT_EE_##_name] = (_value) | 1

static int
mt76x2_eeprom_copy(struct mt76x02_dev *dev, enum mt76x02_eeprom_field field,
void *dest, int len)
{
if (field + len > dev->mt76.eeprom.size)
return -1;

memcpy(dest, dev->mt76.eeprom.data + field, len);
return 0;
}

static int
mt76x2_eeprom_get_macaddr(struct mt76x02_dev *dev)
{
Expand Down Expand Up @@ -378,7 +367,7 @@ mt76x2_get_power_info_2g(struct mt76x02_dev *dev,
else
delta_idx = 5;

mt76x2_eeprom_copy(dev, offset, data, sizeof(data));
mt76x02_eeprom_copy(dev, offset, data, sizeof(data));

t->chain[chain].tssi_slope = data[0];
t->chain[chain].tssi_offset = data[1];
Expand Down Expand Up @@ -429,7 +418,7 @@ mt76x2_get_power_info_5g(struct mt76x02_dev *dev,
else
delta_idx = 4;

mt76x2_eeprom_copy(dev, offset, data, sizeof(data));
mt76x02_eeprom_copy(dev, offset, data, sizeof(data));

t->chain[chain].tssi_slope = data[0];
t->chain[chain].tssi_offset = data[1];
Expand Down

0 comments on commit bd568d9

Please sign in to comment.