diff options
author | Mathias Kresin <dev@kresin.me> | 2016-07-14 18:15:48 +0200 |
---|---|---|
committer | Mathias Kresin <dev@kresin.me> | 2016-11-09 20:02:18 +0100 |
commit | b6832817eb39ff237f663a5f0e6245414470ed37 (patch) | |
tree | 7e592cf0837825bb86fb21f3566ca92d577664f7 /package/kernel/mac80211/patches/608-add_platform_data_mac_addr.patch | |
parent | e7c019c24d2c7b367b2c8e58b424d2b7c6c27724 (diff) | |
download | upstream-b6832817eb39ff237f663a5f0e6245414470ed37.tar.gz upstream-b6832817eb39ff237f663a5f0e6245414470ed37.tar.bz2 upstream-b6832817eb39ff237f663a5f0e6245414470ed37.zip |
mac80211: rt2x00: add support for mac addr from device tree
Backport upstream accepted patch which allows to override the EEPROM
mac address with one from device tree.
Signed-off-by: Mathias Kresin <dev@kresin.me>
Diffstat (limited to 'package/kernel/mac80211/patches/608-add_platform_data_mac_addr.patch')
-rw-r--r-- | package/kernel/mac80211/patches/608-add_platform_data_mac_addr.patch | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/package/kernel/mac80211/patches/608-add_platform_data_mac_addr.patch b/package/kernel/mac80211/patches/608-add_platform_data_mac_addr.patch deleted file mode 100644 index 6704ff835c..0000000000 --- a/package/kernel/mac80211/patches/608-add_platform_data_mac_addr.patch +++ /dev/null @@ -1,63 +0,0 @@ ---- a/include/linux/rt2x00_platform.h -+++ b/include/linux/rt2x00_platform.h -@@ -14,6 +14,7 @@ - - struct rt2x00_platform_data { - char *eeprom_file_name; -+ const u8 *mac_address; - - int disable_2ghz; - int disable_5ghz; ---- a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c -+++ b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c -@@ -931,6 +931,18 @@ static void rt2x00lib_rate(struct ieee80 - entry->flags |= IEEE80211_RATE_SHORT_PREAMBLE; - } - -+const u8 *rt2x00lib_get_mac_address(struct rt2x00_dev *rt2x00dev) -+{ -+ struct rt2x00_platform_data *pdata; -+ -+ pdata = rt2x00dev->dev->platform_data; -+ if (!pdata) -+ return NULL; -+ -+ return pdata->mac_address; -+} -+EXPORT_SYMBOL_GPL(rt2x00lib_get_mac_address); -+ - static int rt2x00lib_probe_hw_modes(struct rt2x00_dev *rt2x00dev, - struct hw_mode_spec *spec) - { ---- a/drivers/net/wireless/ralink/rt2x00/rt2x00.h -+++ b/drivers/net/wireless/ralink/rt2x00/rt2x00.h -@@ -1416,6 +1416,7 @@ static inline void rt2x00debug_dump_fram - */ - u32 rt2x00lib_get_bssidx(struct rt2x00_dev *rt2x00dev, - struct ieee80211_vif *vif); -+const u8 *rt2x00lib_get_mac_address(struct rt2x00_dev *rt2x00dev); - - /* - * Interrupt context handlers. ---- a/drivers/net/wireless/ralink/rt2x00/rt61pci.c -+++ b/drivers/net/wireless/ralink/rt2x00/rt61pci.c -@@ -2392,6 +2392,7 @@ static int rt61pci_validate_eeprom(struc - u32 reg; - u16 word; - u8 *mac; -+ const u8 *pdata_mac; - s8 value; - - rt2x00mmio_register_read(rt2x00dev, E2PROM_CSR, ®); -@@ -2412,7 +2413,11 @@ static int rt61pci_validate_eeprom(struc - /* - * Start validation of the data that has been read. - */ -+ pdata_mac = rt2x00lib_get_mac_address(rt2x00dev); - mac = rt2x00_eeprom_addr(rt2x00dev, EEPROM_MAC_ADDR_0); -+ if (pdata_mac) -+ memcpy(mac, pdata_mac, 6); -+ - if (!is_valid_ether_addr(mac)) { - eth_random_addr(mac); - rt2x00_eeprom_dbg(rt2x00dev, "MAC: %pM\n", mac); |