qcacmn: Add support for QCA9379 SDIO & USB boards

Propagate from qcacld-2.0 to qcacmn

This change add the corresponding support for QCA9379 which has new chip ID.

Change-Id: I252b75d9ae7b760a6a8f6931b4db753f50d3baba
CRs-Fixed: 990755
This commit is contained in:
Yingying Tang
2016-10-18 18:13:07 +08:00
committed by qcabuildsw
parent bd37c7d1f5
commit d89217468d
6 changed files with 28 additions and 2 deletions

View File

@@ -38,6 +38,7 @@
#define AR6320_REV2_1_VERSION 0x5010000 #define AR6320_REV2_1_VERSION 0x5010000
#define AR6320_REV3_VERSION 0x5020000 #define AR6320_REV3_VERSION 0x5020000
#define AR6320_REV3_2_VERSION 0x5030000 #define AR6320_REV3_2_VERSION 0x5030000
#define QCA9379_REV1_VERSION 0x5040000
#define AR6320_DEV_VERSION 0x1000000 #define AR6320_DEV_VERSION 0x1000000
#define QCA9377_REV1_1_VERSION 0x5020001 #define QCA9377_REV1_1_VERSION 0x5020001
#define WCN3990_v1 0x40000000 #define WCN3990_v1 0x40000000

View File

@@ -318,6 +318,11 @@ static const struct qwlan_hw qwlan_hw_list[] = {
.id = WCN3990_v2_1, .id = WCN3990_v2_1,
.subid = 0x0, .subid = 0x0,
.name = "WCN3990_V2.1", .name = "WCN3990_V2.1",
},
{
.id = QCA9379_REV1_VERSION,
.subid = 0xC,
.name = "QCA9379_REV1",
} }
}; };

View File

@@ -35,6 +35,7 @@
#define MANUFACTURER_ID_AR6004_BASE 0x400 #define MANUFACTURER_ID_AR6004_BASE 0x400
#define MANUFACTURER_ID_AR6320_BASE 0x500 #define MANUFACTURER_ID_AR6320_BASE 0x500
#define MANUFACTURER_ID_QCA9377_BASE 0x700 #define MANUFACTURER_ID_QCA9377_BASE 0x700
#define MANUFACTURER_ID_QCA9379_BASE 0x800
#define MANUFACTURER_ID_AR6K_BASE_MASK 0xFF00 #define MANUFACTURER_ID_AR6K_BASE_MASK 0xFF00
#define MANUFACTURER_ID_AR6K_REV_MASK 0x00FF #define MANUFACTURER_ID_AR6K_REV_MASK 0x00FF
#define FUNCTION_CLASS 0x0 #define FUNCTION_CLASS 0x0

View File

@@ -133,8 +133,10 @@ static A_STATUS hif_sdio_probe(void *context, void *hif_handle)
target_type = TARGET_TYPE_AR9888; target_type = TARGET_TYPE_AR9888;
#elif defined(CONFIG_AR6320_SUPPORT) #elif defined(CONFIG_AR6320_SUPPORT)
id = ((struct hif_sdio_dev *) hif_handle)->id; id = ((struct hif_sdio_dev *) hif_handle)->id;
if ((id->device & MANUFACTURER_ID_AR6K_BASE_MASK) == if (((id->device & MANUFACTURER_ID_AR6K_BASE_MASK) ==
MANUFACTURER_ID_QCA9377_BASE) { MANUFACTURER_ID_QCA9377_BASE) ||
((id->device & MANUFACTURER_ID_AR6K_BASE_MASK) ==
MANUFACTURER_ID_QCA9379_BASE)) {
hif_register_tbl_attach(ol_sc, HIF_TYPE_AR6320V2); hif_register_tbl_attach(ol_sc, HIF_TYPE_AR6320V2);
target_register_tbl_attach(ol_sc, TARGET_TYPE_AR6320V2); target_register_tbl_attach(ol_sc, TARGET_TYPE_AR6320V2);
} else if ((id->device & MANUFACTURER_ID_AR6K_BASE_MASK) == } else if ((id->device & MANUFACTURER_ID_AR6K_BASE_MASK) ==

View File

@@ -212,6 +212,22 @@ static const struct sdio_device_id ar6k_id_table[] = {
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9377_BASE | 0xD))}, {SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9377_BASE | 0xD))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9377_BASE | 0xE))}, {SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9377_BASE | 0xE))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9377_BASE | 0xF))}, {SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9377_BASE | 0xF))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x0))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x1))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x2))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x3))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x4))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x5))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x6))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x7))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x8))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0x9))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0xA))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0xB))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0xC))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0xD))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0xE))},
{SDIO_DEVICE(MANUFACTURER_CODE, (MANUFACTURER_ID_QCA9379_BASE | 0xF))},
{SDIO_DEVICE(MANUFACTURER_CODE, (0 | 0x0))}, {SDIO_DEVICE(MANUFACTURER_CODE, (0 | 0x0))},
{SDIO_DEVICE(MANUFACTURER_CODE, (0 | 0x1))}, {SDIO_DEVICE(MANUFACTURER_CODE, (0 | 0x1))},
#endif #endif

View File

@@ -436,6 +436,7 @@ void hif_usb_reg_tbl_attach(struct hif_softc *scn)
case AR6320_REV2_1_VERSION: case AR6320_REV2_1_VERSION:
case AR6320_REV3_VERSION: case AR6320_REV3_VERSION:
case QCA9377_REV1_1_VERSION: case QCA9377_REV1_1_VERSION:
case QCA9379_REV1_VERSION:
hif_type = HIF_TYPE_AR6320V2; hif_type = HIF_TYPE_AR6320V2;
target_type = TARGET_TYPE_AR6320V2; target_type = TARGET_TYPE_AR6320V2;
break; break;