Loading drivers/net/wireless/cnss2/Kconfig +8 −0 Original line number Diff line number Diff line Loading @@ -75,3 +75,11 @@ config CNSS_EMULATION emulation hardware. These changes are needed for WLAN drivers to support and meet the requirement of emulation hardware. config CNSS_QCA6490 bool "Enable CNSS QCA6490 chipset specific changes" help This enables the changes from WLAN host driver that are specific to CNSS QCA6490 chipset. These changes are needed to support the new hardware architecture for CNSS QCA6490 chipset. No newline at end of file drivers/net/wireless/cnss2/bus.c +1 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ enum cnss_dev_bus_type cnss_get_bus_type(unsigned long device_id) case QCA6174_DEVICE_ID: case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: return CNSS_BUS_PCI; default: cnss_pr_err("Unknown device_id: 0x%lx\n", device_id); Loading drivers/net/wireless/cnss2/bus.h +2 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,8 @@ #define QCA6290_DEVICE_ID 0x1100 #define QCA6390_VENDOR_ID 0x17CB #define QCA6390_DEVICE_ID 0x1101 #define QCA6490_VENDOR_ID 0x17CB #define QCA6490_DEVICE_ID 0x1103 enum cnss_dev_bus_type cnss_get_dev_bus_type(struct device *dev); enum cnss_dev_bus_type cnss_get_bus_type(unsigned long device_id); Loading drivers/net/wireless/cnss2/main.c +7 −0 Original line number Diff line number Diff line Loading @@ -1678,6 +1678,7 @@ int cnss_register_ramdump(struct cnss_plat_data *plat_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: ret = cnss_register_ramdump_v2(plat_priv); break; default: Loading @@ -1696,6 +1697,7 @@ void cnss_unregister_ramdump(struct cnss_plat_data *plat_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: cnss_unregister_ramdump_v2(plat_priv); break; default: Loading Loading @@ -1765,6 +1767,7 @@ static ssize_t fs_ready_store(struct device *dev, switch (plat_priv->device_id) { case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: break; default: cnss_pr_err("Not supported for device ID 0x%lx\n", Loading Loading @@ -1870,6 +1873,7 @@ static const struct platform_device_id cnss_platform_id_table[] = { { .name = "qca6174", .driver_data = QCA6174_DEVICE_ID, }, { .name = "qca6290", .driver_data = QCA6290_DEVICE_ID, }, { .name = "qca6390", .driver_data = QCA6390_DEVICE_ID, }, { .name = "qca6490", .driver_data = QCA6490_DEVICE_ID, }, { }, }; Loading @@ -1883,6 +1887,9 @@ static const struct of_device_id cnss_of_match_table[] = { { .compatible = "qcom,cnss-qca6390", .data = (void *)&cnss_platform_id_table[2]}, { .compatible = "qcom,cnss-qca6490", .data = (void *)&cnss_platform_id_table[3]}, { }, }; MODULE_DEVICE_TABLE(of, cnss_of_match_table); Loading drivers/net/wireless/cnss2/pci.c +13 −3 Original line number Diff line number Diff line Loading @@ -856,6 +856,7 @@ int cnss_pci_dev_powerup(struct cnss_pci_data *pci_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: ret = cnss_qca6290_powerup(pci_priv); break; default: Loading @@ -882,6 +883,7 @@ int cnss_pci_dev_shutdown(struct cnss_pci_data *pci_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: ret = cnss_qca6290_shutdown(pci_priv); break; default: Loading @@ -908,6 +910,7 @@ int cnss_pci_dev_crash_shutdown(struct cnss_pci_data *pci_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: cnss_qca6290_crash_shutdown(pci_priv); break; default: Loading @@ -934,6 +937,7 @@ int cnss_pci_dev_ramdump(struct cnss_pci_data *pci_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: ret = cnss_qca6290_ramdump(pci_priv); break; default: Loading Loading @@ -1565,7 +1569,8 @@ int cnss_pci_force_wake_request(struct device *dev) if (!pci_priv) return -ENODEV; if (pci_priv->device_id != QCA6390_DEVICE_ID) if (pci_priv->device_id != QCA6390_DEVICE_ID && pci_priv->device_id != QCA6490_DEVICE_ID) return 0; mhi_ctrl = pci_priv->mhi_ctrl; Loading @@ -1589,7 +1594,8 @@ int cnss_pci_is_device_awake(struct device *dev) if (!pci_priv) return -ENODEV; if (pci_priv->device_id != QCA6390_DEVICE_ID) if (pci_priv->device_id != QCA6390_DEVICE_ID && pci_priv->device_id != QCA6490_DEVICE_ID) return true; mhi_ctrl = pci_priv->mhi_ctrl; Loading @@ -1609,7 +1615,8 @@ int cnss_pci_force_wake_release(struct device *dev) if (!pci_priv) return -ENODEV; if (pci_priv->device_id != QCA6390_DEVICE_ID) if (pci_priv->device_id != QCA6390_DEVICE_ID && pci_priv->device_id != QCA6490_DEVICE_ID) return 0; mhi_ctrl = pci_priv->mhi_ctrl; Loading Loading @@ -2940,6 +2947,7 @@ static int cnss_pci_probe(struct pci_dev *pci_dev, break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: timer_setup(&pci_priv->dev_rddm_timer, cnss_dev_rddm_timeout_hdlr, 0); Loading Loading @@ -2997,6 +3005,7 @@ static void cnss_pci_remove(struct pci_dev *pci_dev) switch (pci_dev->device) { case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: cnss_pci_unregister_mhi(pci_priv); cnss_pci_disable_msi(pci_priv); del_timer(&pci_priv->dev_rddm_timer); Loading @@ -3019,6 +3028,7 @@ static const struct pci_device_id cnss_pci_id_table[] = { { QCA6174_VENDOR_ID, QCA6174_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID }, { QCA6290_VENDOR_ID, QCA6290_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID }, { QCA6390_VENDOR_ID, QCA6390_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID }, { QCA6490_VENDOR_ID, QCA6490_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID }, { 0 } }; MODULE_DEVICE_TABLE(pci, cnss_pci_id_table); Loading Loading
drivers/net/wireless/cnss2/Kconfig +8 −0 Original line number Diff line number Diff line Loading @@ -75,3 +75,11 @@ config CNSS_EMULATION emulation hardware. These changes are needed for WLAN drivers to support and meet the requirement of emulation hardware. config CNSS_QCA6490 bool "Enable CNSS QCA6490 chipset specific changes" help This enables the changes from WLAN host driver that are specific to CNSS QCA6490 chipset. These changes are needed to support the new hardware architecture for CNSS QCA6490 chipset. No newline at end of file
drivers/net/wireless/cnss2/bus.c +1 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ enum cnss_dev_bus_type cnss_get_bus_type(unsigned long device_id) case QCA6174_DEVICE_ID: case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: return CNSS_BUS_PCI; default: cnss_pr_err("Unknown device_id: 0x%lx\n", device_id); Loading
drivers/net/wireless/cnss2/bus.h +2 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,8 @@ #define QCA6290_DEVICE_ID 0x1100 #define QCA6390_VENDOR_ID 0x17CB #define QCA6390_DEVICE_ID 0x1101 #define QCA6490_VENDOR_ID 0x17CB #define QCA6490_DEVICE_ID 0x1103 enum cnss_dev_bus_type cnss_get_dev_bus_type(struct device *dev); enum cnss_dev_bus_type cnss_get_bus_type(unsigned long device_id); Loading
drivers/net/wireless/cnss2/main.c +7 −0 Original line number Diff line number Diff line Loading @@ -1678,6 +1678,7 @@ int cnss_register_ramdump(struct cnss_plat_data *plat_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: ret = cnss_register_ramdump_v2(plat_priv); break; default: Loading @@ -1696,6 +1697,7 @@ void cnss_unregister_ramdump(struct cnss_plat_data *plat_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: cnss_unregister_ramdump_v2(plat_priv); break; default: Loading Loading @@ -1765,6 +1767,7 @@ static ssize_t fs_ready_store(struct device *dev, switch (plat_priv->device_id) { case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: break; default: cnss_pr_err("Not supported for device ID 0x%lx\n", Loading Loading @@ -1870,6 +1873,7 @@ static const struct platform_device_id cnss_platform_id_table[] = { { .name = "qca6174", .driver_data = QCA6174_DEVICE_ID, }, { .name = "qca6290", .driver_data = QCA6290_DEVICE_ID, }, { .name = "qca6390", .driver_data = QCA6390_DEVICE_ID, }, { .name = "qca6490", .driver_data = QCA6490_DEVICE_ID, }, { }, }; Loading @@ -1883,6 +1887,9 @@ static const struct of_device_id cnss_of_match_table[] = { { .compatible = "qcom,cnss-qca6390", .data = (void *)&cnss_platform_id_table[2]}, { .compatible = "qcom,cnss-qca6490", .data = (void *)&cnss_platform_id_table[3]}, { }, }; MODULE_DEVICE_TABLE(of, cnss_of_match_table); Loading
drivers/net/wireless/cnss2/pci.c +13 −3 Original line number Diff line number Diff line Loading @@ -856,6 +856,7 @@ int cnss_pci_dev_powerup(struct cnss_pci_data *pci_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: ret = cnss_qca6290_powerup(pci_priv); break; default: Loading @@ -882,6 +883,7 @@ int cnss_pci_dev_shutdown(struct cnss_pci_data *pci_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: ret = cnss_qca6290_shutdown(pci_priv); break; default: Loading @@ -908,6 +910,7 @@ int cnss_pci_dev_crash_shutdown(struct cnss_pci_data *pci_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: cnss_qca6290_crash_shutdown(pci_priv); break; default: Loading @@ -934,6 +937,7 @@ int cnss_pci_dev_ramdump(struct cnss_pci_data *pci_priv) break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: ret = cnss_qca6290_ramdump(pci_priv); break; default: Loading Loading @@ -1565,7 +1569,8 @@ int cnss_pci_force_wake_request(struct device *dev) if (!pci_priv) return -ENODEV; if (pci_priv->device_id != QCA6390_DEVICE_ID) if (pci_priv->device_id != QCA6390_DEVICE_ID && pci_priv->device_id != QCA6490_DEVICE_ID) return 0; mhi_ctrl = pci_priv->mhi_ctrl; Loading @@ -1589,7 +1594,8 @@ int cnss_pci_is_device_awake(struct device *dev) if (!pci_priv) return -ENODEV; if (pci_priv->device_id != QCA6390_DEVICE_ID) if (pci_priv->device_id != QCA6390_DEVICE_ID && pci_priv->device_id != QCA6490_DEVICE_ID) return true; mhi_ctrl = pci_priv->mhi_ctrl; Loading @@ -1609,7 +1615,8 @@ int cnss_pci_force_wake_release(struct device *dev) if (!pci_priv) return -ENODEV; if (pci_priv->device_id != QCA6390_DEVICE_ID) if (pci_priv->device_id != QCA6390_DEVICE_ID && pci_priv->device_id != QCA6490_DEVICE_ID) return 0; mhi_ctrl = pci_priv->mhi_ctrl; Loading Loading @@ -2940,6 +2947,7 @@ static int cnss_pci_probe(struct pci_dev *pci_dev, break; case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: timer_setup(&pci_priv->dev_rddm_timer, cnss_dev_rddm_timeout_hdlr, 0); Loading Loading @@ -2997,6 +3005,7 @@ static void cnss_pci_remove(struct pci_dev *pci_dev) switch (pci_dev->device) { case QCA6290_DEVICE_ID: case QCA6390_DEVICE_ID: case QCA6490_DEVICE_ID: cnss_pci_unregister_mhi(pci_priv); cnss_pci_disable_msi(pci_priv); del_timer(&pci_priv->dev_rddm_timer); Loading @@ -3019,6 +3028,7 @@ static const struct pci_device_id cnss_pci_id_table[] = { { QCA6174_VENDOR_ID, QCA6174_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID }, { QCA6290_VENDOR_ID, QCA6290_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID }, { QCA6390_VENDOR_ID, QCA6390_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID }, { QCA6490_VENDOR_ID, QCA6490_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID }, { 0 } }; MODULE_DEVICE_TABLE(pci, cnss_pci_id_table); Loading