mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 03:15:31 +09:00
Revert "Bluetooth: qca: add support for QCA2066"
This reverts commit ad643241d4 which is
commit a7f8dedb4be2cc930a29af24427b885405ecd15d upstream.
It breaks the Android kernel abi and can be brought back in the future
in an abi-safe way if it is really needed.
Bug: 161946584
Change-Id: Id18621d7abf6f195463566ba20b9300b20ab5c84
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
@@ -222,49 +222,6 @@ static int qca_send_reset(struct hci_dev *hdev)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int qca_read_fw_board_id(struct hci_dev *hdev, u16 *bid)
|
|
||||||
{
|
|
||||||
u8 cmd;
|
|
||||||
struct sk_buff *skb;
|
|
||||||
struct edl_event_hdr *edl;
|
|
||||||
int err = 0;
|
|
||||||
|
|
||||||
cmd = EDL_GET_BID_REQ_CMD;
|
|
||||||
skb = __hci_cmd_sync_ev(hdev, EDL_PATCH_CMD_OPCODE, EDL_PATCH_CMD_LEN,
|
|
||||||
&cmd, 0, HCI_INIT_TIMEOUT);
|
|
||||||
if (IS_ERR(skb)) {
|
|
||||||
err = PTR_ERR(skb);
|
|
||||||
bt_dev_err(hdev, "Reading QCA board ID failed (%d)", err);
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
|
|
||||||
edl = skb_pull_data(skb, sizeof(*edl));
|
|
||||||
if (!edl) {
|
|
||||||
bt_dev_err(hdev, "QCA read board ID with no header");
|
|
||||||
err = -EILSEQ;
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (edl->cresp != EDL_CMD_REQ_RES_EVT ||
|
|
||||||
edl->rtype != EDL_GET_BID_REQ_CMD) {
|
|
||||||
bt_dev_err(hdev, "QCA Wrong packet: %d %d", edl->cresp, edl->rtype);
|
|
||||||
err = -EIO;
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (skb->len < 3) {
|
|
||||||
err = -EILSEQ;
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
*bid = (edl->data[1] << 8) + edl->data[2];
|
|
||||||
bt_dev_dbg(hdev, "%s: bid = %x", __func__, *bid);
|
|
||||||
|
|
||||||
out:
|
|
||||||
kfree_skb(skb);
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
|
|
||||||
int qca_send_pre_shutdown_cmd(struct hci_dev *hdev)
|
int qca_send_pre_shutdown_cmd(struct hci_dev *hdev)
|
||||||
{
|
{
|
||||||
struct sk_buff *skb;
|
struct sk_buff *skb;
|
||||||
@@ -688,7 +645,6 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate,
|
|||||||
int err;
|
int err;
|
||||||
u8 rom_ver = 0;
|
u8 rom_ver = 0;
|
||||||
u32 soc_ver;
|
u32 soc_ver;
|
||||||
u16 boardid = 0;
|
|
||||||
|
|
||||||
bt_dev_dbg(hdev, "QCA setup on UART");
|
bt_dev_dbg(hdev, "QCA setup on UART");
|
||||||
|
|
||||||
@@ -735,9 +691,6 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate,
|
|||||||
/* Give the controller some time to get ready to receive the NVM */
|
/* Give the controller some time to get ready to receive the NVM */
|
||||||
msleep(10);
|
msleep(10);
|
||||||
|
|
||||||
if (soc_type == QCA_QCA2066)
|
|
||||||
qca_read_fw_board_id(hdev, &boardid);
|
|
||||||
|
|
||||||
/* Download NVM configuration */
|
/* Download NVM configuration */
|
||||||
config.type = TLV_TYPE_NVM;
|
config.type = TLV_TYPE_NVM;
|
||||||
if (firmware_name)
|
if (firmware_name)
|
||||||
|
|||||||
@@ -12,7 +12,6 @@
|
|||||||
#define EDL_PATCH_VER_REQ_CMD (0x19)
|
#define EDL_PATCH_VER_REQ_CMD (0x19)
|
||||||
#define EDL_PATCH_TLV_REQ_CMD (0x1E)
|
#define EDL_PATCH_TLV_REQ_CMD (0x1E)
|
||||||
#define EDL_GET_BUILD_INFO_CMD (0x20)
|
#define EDL_GET_BUILD_INFO_CMD (0x20)
|
||||||
#define EDL_GET_BID_REQ_CMD (0x23)
|
|
||||||
#define EDL_NVM_ACCESS_SET_REQ_CMD (0x01)
|
#define EDL_NVM_ACCESS_SET_REQ_CMD (0x01)
|
||||||
#define EDL_PATCH_CONFIG_CMD (0x28)
|
#define EDL_PATCH_CONFIG_CMD (0x28)
|
||||||
#define MAX_SIZE_PER_TLV_SEGMENT (243)
|
#define MAX_SIZE_PER_TLV_SEGMENT (243)
|
||||||
@@ -47,9 +46,6 @@
|
|||||||
#define get_soc_ver(soc_id, rom_ver) \
|
#define get_soc_ver(soc_id, rom_ver) \
|
||||||
((le32_to_cpu(soc_id) << 16) | (le16_to_cpu(rom_ver)))
|
((le32_to_cpu(soc_id) << 16) | (le16_to_cpu(rom_ver)))
|
||||||
|
|
||||||
#define QCA_HSP_GF_SOC_ID 0x1200
|
|
||||||
#define QCA_HSP_GF_SOC_MASK 0x0000ff00
|
|
||||||
|
|
||||||
enum qca_baudrate {
|
enum qca_baudrate {
|
||||||
QCA_BAUDRATE_115200 = 0,
|
QCA_BAUDRATE_115200 = 0,
|
||||||
QCA_BAUDRATE_57600,
|
QCA_BAUDRATE_57600,
|
||||||
@@ -146,7 +142,6 @@ enum qca_btsoc_type {
|
|||||||
QCA_WCN3990,
|
QCA_WCN3990,
|
||||||
QCA_WCN3998,
|
QCA_WCN3998,
|
||||||
QCA_WCN3991,
|
QCA_WCN3991,
|
||||||
QCA_QCA2066,
|
|
||||||
QCA_QCA6390,
|
QCA_QCA6390,
|
||||||
QCA_WCN6750,
|
QCA_WCN6750,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1868,7 +1868,7 @@ static const struct qca_device_data qca_soc_data_wcn3998 = {
|
|||||||
.num_vregs = 4,
|
.num_vregs = 4,
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct qca_device_data qca_soc_data_qca6390 = {
|
static const struct qca_device_data qca_soc_data_qca6390 __maybe_unused = {
|
||||||
.soc_type = QCA_QCA6390,
|
.soc_type = QCA_QCA6390,
|
||||||
.num_vregs = 0,
|
.num_vregs = 0,
|
||||||
.capabilities = QCA_CAP_WIDEBAND_SPEECH | QCA_CAP_VALID_LE_STATES,
|
.capabilities = QCA_CAP_WIDEBAND_SPEECH | QCA_CAP_VALID_LE_STATES,
|
||||||
|
|||||||
Reference in New Issue
Block a user