@@ -2046,6 +2046,7 @@ static SIMPLE_DEV_PM_OPS(qca_pm_ops, qca_suspend, qca_resume);
static const struct of_device_id qca_bluetooth_of_match[] = {
{ .compatible = "qcom,qca6174-bt" },
+ { .compatible = "qcom,qca9377-bt" },
{ .compatible = "qcom,wcn3990-bt", .data = &qca_soc_data_wcn3990},
{ .compatible = "qcom,wcn3991-bt", .data = &qca_soc_data_wcn3991},
{ .compatible = "qcom,wcn3998-bt", .data = &qca_soc_data_wcn3998},
This results in probing with errors: http://ix.io/2i6P
I noticed "max-speed = <2000000>;” while hci_qca.c sets 3000000. I attempted to set "max-speed = <3000000>;” but this made no difference, so I patched a lower value in hci_qca:
@@ -1678,7 +1678,7 @@ static const struct hci_uart_proto qca_proto = {
.name = "QCA",
.manufacturer = 29,
.init_speed = 115200,
- .oper_speed = 3000000,
+ .oper_speed = 2000000,
.open = qca_open,
.close = qca_close,
.flush = qca_flush,