diff options
Diffstat (limited to 'package/mac80211/patches/603-rt2x00-introduce-rt2x00eeprom.patch')
-rw-r--r-- | package/mac80211/patches/603-rt2x00-introduce-rt2x00eeprom.patch | 43 |
1 files changed, 24 insertions, 19 deletions
diff --git a/package/mac80211/patches/603-rt2x00-introduce-rt2x00eeprom.patch b/package/mac80211/patches/603-rt2x00-introduce-rt2x00eeprom.patch index 4f35ae899..0c9cf81cc 100644 --- a/package/mac80211/patches/603-rt2x00-introduce-rt2x00eeprom.patch +++ b/package/mac80211/patches/603-rt2x00-introduce-rt2x00eeprom.patch @@ -109,7 +109,7 @@ /* * Device initialization/deinitialization handlers. -@@ -721,6 +722,7 @@ enum rt2x00_capability_flags { +@@ -720,6 +721,7 @@ enum rt2x00_capability_flags { REQUIRE_SW_SEQNO, REQUIRE_HT_TX_DESC, REQUIRE_PS_AUTOWAKE, @@ -117,7 +117,7 @@ /* * Capabilities -@@ -976,6 +978,11 @@ struct rt2x00_dev { +@@ -989,6 +991,11 @@ struct rt2x00_dev { const struct firmware *fw; /* @@ -156,15 +156,15 @@ #ifdef CONFIG_RT2X00_LIB_DEBUGFS --- a/drivers/net/wireless/rt2x00/Kconfig +++ b/drivers/net/wireless/rt2x00/Kconfig -@@ -60,6 +60,7 @@ config RT2800PCI +@@ -64,6 +64,7 @@ config RT2800PCI select RT2X00_LIB_PCI if PCI - select RT2X00_LIB_SOC if RALINK_RT288X || RALINK_RT305X + select RT2X00_LIB_SOC if SOC_RT288X || SOC_RT305X select RT2X00_LIB_FIRMWARE + select RT2X00_LIB_EEPROM select RT2X00_LIB_CRYPTO select CRC_CCITT select EEPROM_93CX6 -@@ -212,6 +213,9 @@ config RT2X00_LIB_FIRMWARE +@@ -221,6 +222,9 @@ config RT2X00_LIB_FIRMWARE config RT2X00_LIB_CRYPTO boolean @@ -183,32 +183,37 @@ +rt2x00lib-$(CONFIG_RT2X00_LIB_EEPROM) += rt2x00eeprom.o obj-$(CONFIG_RT2X00_LIB) += rt2x00lib.o - obj-$(CONFIG_RT2X00_LIB_PCI) += rt2x00pci.o + obj-$(CONFIG_RT2X00_LIB_MMIO) += rt2x00mmio.o --- a/drivers/net/wireless/rt2x00/rt2800pci.c +++ b/drivers/net/wireless/rt2x00/rt2800pci.c -@@ -89,20 +89,10 @@ static void rt2800pci_mcu_status(struct - rt2x00pci_register_write(rt2x00dev, H2M_MAILBOX_CID, ~0); +@@ -90,25 +90,11 @@ static void rt2800pci_mcu_status(struct + rt2x00mmio_register_write(rt2x00dev, H2M_MAILBOX_CID, ~0); } --#if defined(CONFIG_RALINK_RT288X) || defined(CONFIG_RALINK_RT305X) - static void rt2800pci_read_eeprom_soc(struct rt2x00_dev *rt2x00dev) +-#if defined(CONFIG_SOC_RT288X) || defined(CONFIG_SOC_RT305X) + static int rt2800pci_read_eeprom_soc(struct rt2x00_dev *rt2x00dev) { - void __iomem *base_addr = ioremap(0x1F040000, EEPROM_SIZE); - +- if (!base_addr) +- return -ENOMEM; +- - memcpy_fromio(rt2x00dev->eeprom, base_addr, EEPROM_SIZE); - - iounmap(base_addr); + memcpy(rt2x00dev->eeprom, rt2x00dev->eeprom_file->data, EEPROM_SIZE); + return 0; } -#else --static inline void rt2800pci_read_eeprom_soc(struct rt2x00_dev *rt2x00dev) +-static inline int rt2800pci_read_eeprom_soc(struct rt2x00_dev *rt2x00dev) -{ +- return -ENOMEM; -} --#endif /* CONFIG_RALINK_RT288X || CONFIG_RALINK_RT305X */ +-#endif /* CONFIG_SOC_RT288X || CONFIG_SOC_RT305X */ #ifdef CONFIG_PCI static void rt2800pci_eepromregister_read(struct eeprom_93cx6 *eeprom) -@@ -322,6 +312,20 @@ static int rt2800pci_write_firmware(stru +@@ -332,6 +318,20 @@ static int rt2800pci_write_firmware(stru } /* @@ -229,17 +234,17 @@ * Initialization functions. */ static bool rt2800pci_get_entry_state(struct queue_entry *entry) -@@ -1033,6 +1037,7 @@ static const struct rt2x00lib_ops rt2800 +@@ -1162,6 +1162,7 @@ static const struct rt2x00lib_ops rt2800 .get_firmware_name = rt2800pci_get_firmware_name, .check_firmware = rt2800_check_firmware, .load_firmware = rt2800_load_firmware, -+ .get_eeprom_file_name = rt2800pci_get_eeprom_file_name, - .initialize = rt2x00pci_initialize, - .uninitialize = rt2x00pci_uninitialize, ++ .get_eeprom_file_name = rt2800pci_get_eeprom_file_name, + .initialize = rt2x00mmio_initialize, + .uninitialize = rt2x00mmio_uninitialize, .get_entry_state = rt2800pci_get_entry_state, --- a/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c -@@ -1163,6 +1163,10 @@ int rt2x00lib_probe_dev(struct rt2x00_de +@@ -1318,6 +1318,10 @@ int rt2x00lib_probe_dev(struct rt2x00_de rt2x00dev->hw->wiphy->flags |= WIPHY_FLAG_IBSS_RSN; @@ -250,7 +255,7 @@ /* * Initialize work. */ -@@ -1287,6 +1291,11 @@ void rt2x00lib_remove_dev(struct rt2x00_ +@@ -1442,6 +1446,11 @@ void rt2x00lib_remove_dev(struct rt2x00_ */ if (rt2x00dev->drv_data) kfree(rt2x00dev->drv_data); |