From 0add75b9ba924a7522afa85ee2c0ee08ef92d08a Mon Sep 17 00:00:00 2001 From: adrian Date: Thu, 2 May 2013 00:59:39 +0000 Subject: [PATCH] Add device identification and probe/attach support for the QCA9565. The QCA9565 is a 1x1 2.4GHz 11n chip with integrated on-chip bluetooth. The AR9300 HAL already has support for this chip; it just wasn't included in the probe/attach path. Tested: * This commit brought to you over a QCA9565 wifi connection from FreeBSD. * .. ie, basic STA, pings, no iperf or antenna diversity checking just yet. --- sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c | 2 ++ sys/dev/ath/ath_hal/ah.c | 3 +++ sys/dev/ath/ath_hal/ah_devid.h | 1 + sys/dev/ath/ath_hal/ar9003/ar9300_devid.h | 1 + 4 files changed, 7 insertions(+) diff --git a/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c b/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c index fed6d2f093f5..b83faef037e6 100644 --- a/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c +++ b/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c @@ -4089,6 +4089,8 @@ ar9300_probe(uint16_t vendorid, uint16_t devid) return "Atheros AR933x"; case AR9300_DEVID_QCA955X: /* Scorpion */ return "Qualcomm Atheros QCA955x"; + case AR9300_DEVID_QCA9565: /* Aphrodite */ + return "Qualcomm Atheros AR9565"; default: return AH_NULL; } diff --git a/sys/dev/ath/ath_hal/ah.c b/sys/dev/ath/ath_hal/ah.c index 551c225ef88e..9a30dba7ef72 100644 --- a/sys/dev/ath/ath_hal/ah.c +++ b/sys/dev/ath/ath_hal/ah.c @@ -139,6 +139,9 @@ ath_hal_mac_name(struct ath_hal *ah) return "9550"; case AR_SREV_VERSION_AR9485: return "9485"; + case AR_SREV_VERSION_QCA9565: + /* XXX should say QCA, not AR */ + return "9565"; } return "????"; } diff --git a/sys/dev/ath/ath_hal/ah_devid.h b/sys/dev/ath/ath_hal/ah_devid.h index 465540397367..43d994dcd3ab 100644 --- a/sys/dev/ath/ath_hal/ah_devid.h +++ b/sys/dev/ath/ath_hal/ah_devid.h @@ -91,6 +91,7 @@ #define AR9300_DEVID_AR9580_PCIE 0x0033 #define AR9300_DEVID_AR946X_PCIE 0x0034 #define AR9300_DEVID_AR9330 0x0035 +#define AR9300_DEVID_QCA9565 0x0036 #define AR9300_DEVID_QCA955X 0x0039 #define AR_SUBVENDOR_ID_NOG 0x0e11 /* No 11G subvendor ID */ diff --git a/sys/dev/ath/ath_hal/ar9003/ar9300_devid.h b/sys/dev/ath/ath_hal/ar9003/ar9300_devid.h index b8ad1bfd8ff6..8d0a39a4cbda 100644 --- a/sys/dev/ath/ath_hal/ar9003/ar9300_devid.h +++ b/sys/dev/ath/ath_hal/ar9003/ar9300_devid.h @@ -48,6 +48,7 @@ #define AR_SREV_VERSION_AR9380 0x1C0 #define AR_SREV_VERSION_AR9580 0x1C0 #define AR_SREV_VERSION_AR9460 0x280 +#define AR_SREV_VERSION_QCA9565 0x2c0 #define AR_SREV_VERSION_AR9330 0x200 #define AR_SREV_VERSION_AR9340 0x300