rt2x00: rt2800pci: use separate hwcrypt_disabled callback for SoC devices
authorGabor Juhos <juhosg@openwrt.org>
Thu, 17 Oct 2013 07:42:33 +0000 (09:42 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 18 Oct 2013 18:07:00 +0000 (14:07 -0400)
The 'rt2800pci_hwcrypt_disabled' function is the
only PCI specific callback which is used by the
SoC driver. Create a clone of that to get rid of
the dependency.

Even though the two functions are using the same
variable, but the SoC specific code will be moved
into a separate module which will have its own
'modparam_nohwcrypt' variable.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/rt2x00/rt2800pci.c

index 77ddd1a97732ed9c31f199aea833de7f71c1be54..488d1c4493499fb7058ac9219ea573012326e34d 100644 (file)
@@ -56,12 +56,12 @@ static bool modparam_nohwcrypt = false;
 module_param_named(nohwcrypt, modparam_nohwcrypt, bool, S_IRUGO);
 MODULE_PARM_DESC(nohwcrypt, "Disable hardware encryption.");
 
+#ifdef CONFIG_PCI
 static bool rt2800pci_hwcrypt_disabled(struct rt2x00_dev *rt2x00dev)
 {
        return modparam_nohwcrypt;
 }
 
-#ifdef CONFIG_PCI
 static void rt2800pci_mcu_status(struct rt2x00_dev *rt2x00dev, const u8 token)
 {
        unsigned int i;
@@ -462,6 +462,11 @@ MODULE_DEVICE_TABLE(pci, rt2800pci_device_table);
 MODULE_LICENSE("GPL");
 
 #if defined(CONFIG_SOC_RT288X) || defined(CONFIG_SOC_RT305X)
+static bool rt2800soc_hwcrypt_disabled(struct rt2x00_dev *rt2x00dev)
+{
+       return modparam_nohwcrypt;
+}
+
 static void rt2800soc_disable_radio(struct rt2x00_dev *rt2x00dev)
 {
        rt2800_disable_radio(rt2x00dev);
@@ -585,7 +590,7 @@ static const struct rt2800_ops rt2800soc_rt2800_ops = {
        .register_multiwrite    = rt2x00mmio_register_multiwrite,
        .regbusy_read           = rt2x00mmio_regbusy_read,
        .read_eeprom            = rt2800soc_read_eeprom,
-       .hwcrypt_disabled       = rt2800pci_hwcrypt_disabled,
+       .hwcrypt_disabled       = rt2800soc_hwcrypt_disabled,
        .drv_write_firmware     = rt2800soc_write_firmware,
        .drv_init_registers     = rt2800mmio_init_registers,
        .drv_get_txwi           = rt2800mmio_get_txwi,