Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Bluetooth: qca: Refactor code on the basis of chipset names

Whenever new chipset support is added to the driver code,
we ended up adding chipset name to the last of the switch case
arising code readability issue because of improper sorting of
the chipset names in various places of the code.

Refactor code such a way that new chipset can be added easily
in the code without compromising code readability.

Signed-off-by: Vivek Sahu <vivek.sahu@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>

authored by

Vivek Sahu and committed by
Luiz Augusto von Dentz
f29bc37d 679621a7

+34 -33
+19 -18
drivers/bluetooth/btqca.c
··· 801 801 snprintf(config.fwname, sizeof(config.fwname), "qca/%s", rampatch_name); 802 802 } else { 803 803 switch (soc_type) { 804 + case QCA_QCA2066: 805 + snprintf(config.fwname, sizeof(config.fwname), 806 + "qca/hpbtfw%02x.tlv", rom_ver); 807 + break; 808 + case QCA_QCA6390: 809 + snprintf(config.fwname, sizeof(config.fwname), 810 + "qca/htbtfw%02x.tlv", rom_ver); 811 + break; 804 812 case QCA_WCN3950: 805 813 snprintf(config.fwname, sizeof(config.fwname), 806 814 "qca/cmbtfw%02x.tlv", rom_ver); ··· 822 814 case QCA_WCN3988: 823 815 snprintf(config.fwname, sizeof(config.fwname), 824 816 "qca/apbtfw%02x.tlv", rom_ver); 825 - break; 826 - case QCA_QCA2066: 827 - snprintf(config.fwname, sizeof(config.fwname), 828 - "qca/hpbtfw%02x.tlv", rom_ver); 829 - break; 830 - case QCA_QCA6390: 831 - snprintf(config.fwname, sizeof(config.fwname), 832 - "qca/htbtfw%02x.tlv", rom_ver); 833 817 break; 834 818 case QCA_WCN6750: 835 819 /* Choose mbn file by default.If mbn file is not found ··· 892 892 } 893 893 } else { 894 894 switch (soc_type) { 895 + case QCA_QCA2066: 896 + qca_get_nvm_name_by_board(config.fwname, 897 + sizeof(config.fwname), 898 + "hpnv", soc_type, ver, 899 + rom_ver, boardid); 900 + break; 901 + case QCA_QCA6390: 902 + snprintf(config.fwname, sizeof(config.fwname), 903 + "qca/htnv%02x.bin", rom_ver); 904 + break; 895 905 case QCA_WCN3950: 896 906 if (le32_to_cpu(ver.soc_id) == QCA_WCN3950_SOC_ID_T) 897 907 variant = "t"; ··· 923 913 case QCA_WCN3988: 924 914 snprintf(config.fwname, sizeof(config.fwname), 925 915 "qca/apnv%02x.bin", rom_ver); 926 - break; 927 - case QCA_QCA2066: 928 - qca_get_nvm_name_by_board(config.fwname, 929 - sizeof(config.fwname), "hpnv", soc_type, ver, 930 - rom_ver, boardid); 931 - break; 932 - case QCA_QCA6390: 933 - snprintf(config.fwname, sizeof(config.fwname), 934 - "qca/htnv%02x.bin", rom_ver); 935 916 break; 936 917 case QCA_WCN6750: 937 918 snprintf(config.fwname, sizeof(config.fwname), ··· 957 956 } 958 957 959 958 switch (soc_type) { 960 - case QCA_WCN3991: 961 959 case QCA_QCA2066: 962 960 case QCA_QCA6390: 961 + case QCA_WCN3991: 963 962 case QCA_WCN6750: 964 963 case QCA_WCN6855: 965 964 case QCA_WCN7850:
+15 -15
drivers/bluetooth/hci_qca.c
··· 1850 1850 return 0; 1851 1851 1852 1852 switch (soc_type) { 1853 + case QCA_QCA6390: 1853 1854 case QCA_WCN3950: 1854 1855 case QCA_WCN3988: 1855 1856 case QCA_WCN3990: ··· 1859 1858 case QCA_WCN6750: 1860 1859 case QCA_WCN6855: 1861 1860 case QCA_WCN7850: 1862 - case QCA_QCA6390: 1863 1861 ret = qca_regulator_init(hu); 1864 1862 break; 1865 1863 ··· 2096 2096 .dequeue = qca_dequeue, 2097 2097 }; 2098 2098 2099 + static const struct qca_device_data qca_soc_data_qca2066 __maybe_unused = { 2100 + .soc_type = QCA_QCA2066, 2101 + .num_vregs = 0, 2102 + .capabilities = QCA_CAP_WIDEBAND_SPEECH | QCA_CAP_VALID_LE_STATES | 2103 + QCA_CAP_HFP_HW_OFFLOAD, 2104 + }; 2105 + 2106 + static const struct qca_device_data qca_soc_data_qca6390 __maybe_unused = { 2107 + .soc_type = QCA_QCA6390, 2108 + .num_vregs = 0, 2109 + }; 2110 + 2099 2111 static const struct qca_device_data qca_soc_data_wcn3950 __maybe_unused = { 2100 2112 .soc_type = QCA_WCN3950, 2101 2113 .vregs = (struct qca_vreg []) { ··· 2162 2150 { "vddch0", 450000 }, 2163 2151 }, 2164 2152 .num_vregs = 4, 2165 - }; 2166 - 2167 - static const struct qca_device_data qca_soc_data_qca2066 __maybe_unused = { 2168 - .soc_type = QCA_QCA2066, 2169 - .num_vregs = 0, 2170 - .capabilities = QCA_CAP_WIDEBAND_SPEECH | QCA_CAP_VALID_LE_STATES | 2171 - QCA_CAP_HFP_HW_OFFLOAD, 2172 - }; 2173 - 2174 - static const struct qca_device_data qca_soc_data_qca6390 __maybe_unused = { 2175 - .soc_type = QCA_QCA6390, 2176 - .num_vregs = 0, 2177 2153 }; 2178 2154 2179 2155 static const struct qca_device_data qca_soc_data_wcn6750 __maybe_unused = { ··· 2402 2402 qcadev->btsoc_type = QCA_ROME; 2403 2403 2404 2404 switch (qcadev->btsoc_type) { 2405 + case QCA_QCA6390: 2405 2406 case QCA_WCN3950: 2406 2407 case QCA_WCN3988: 2407 2408 case QCA_WCN3990: ··· 2411 2410 case QCA_WCN6750: 2412 2411 case QCA_WCN6855: 2413 2412 case QCA_WCN7850: 2414 - case QCA_QCA6390: 2415 2413 qcadev->bt_power = devm_kzalloc(&serdev->dev, 2416 2414 sizeof(struct qca_power), 2417 2415 GFP_KERNEL); ··· 2422 2422 } 2423 2423 2424 2424 switch (qcadev->btsoc_type) { 2425 + case QCA_WCN6750: 2425 2426 case QCA_WCN6855: 2426 2427 case QCA_WCN7850: 2427 - case QCA_WCN6750: 2428 2428 if (!device_property_present(&serdev->dev, "enable-gpios")) { 2429 2429 /* 2430 2430 * Backward compatibility with old DT sources. If the