bluetooth pull request for net:

- hci_qca: move the SoC type check to the right place
  - MGMT: reject malformed HCI_CMD_SYNC commands
  - btnxpuart: Fix missing devm_request_irq() return value check
  - L2CAP: Fix not responding with L2CAP_CR_LE_ENCRYPTION
 -----BEGIN PGP SIGNATURE-----
 
 iQJNBAABCgA3FiEE7E6oRXp8w05ovYr/9JCA4xAyCykFAmg57uIZHGx1aXoudm9u
 LmRlbnR6QGludGVsLmNvbQAKCRD0kIDjEDILKQG3EACFroVBeVAU9IM0rMnaueET
 L1nAJ2tU2l+Br/WyM+IJHtqk0xhzTzHFmC6ldLauXkqtxsKArXfXvKvxLM/q+5Np
 U1jdM7cuyc7YUXh7F9e5Lwb/AyH6BC6RuPFdlH1+AYqf6N973GOoHYsuO6yu/hmE
 bUhL2Csot2ujR9f/0n+3a/6JbgnT5GxRDRtwD8LxBkNrgYKu2bkjijj4EbHhVIGM
 lFh8NPOJdGTNLIUcWSZ4LwfikAo71X+wtfRK4a5WO1Iic1tZHYtHUQedwzMaHoIW
 CVZojzL4wc5XEr5J1sAC4DsqmF52euJ/HIzRQLNSiNMbQlsKct2kr8TdOVaTRKYr
 kApG6LDK9Ti8jeWHHmtBO3XUj4aIBDyHgLlPiza13JeLEg6LkcdR6jYvWtiVqGmq
 nLZVvl9m42vBY1gmWjPtRN308dpoOIxKvhAiSMI0jTWGWXgiXlga80rH4iBXgCFi
 4YCXRXGigaMiBvjabyhky6/PKdc/fqf7aAd9r42Z8WSqYZUuKg6fsd2fCaAA+dMo
 br6vf7rnV+zVMkC8LP5JoHJF4HgPD1UlOFkRu4HwpqU6F32w4Sh0a13JPiX93/zg
 LXO5VYkyRuFk1KLn9g+kJGm1vWBhrYUbPHdyNBYDTGPoh9HNcaKTbCMwr8XY906k
 EQ62KNa/5qzdmvGBEmXOvQ==
 =cEYF
 -----END PGP SIGNATURE-----

Merge tag 'for-net-2025-05-30' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth

Luiz Augusto von Dentz says:

====================
bluetooth pull request for net:

 - hci_qca: move the SoC type check to the right place
 - MGMT: reject malformed HCI_CMD_SYNC commands
 - btnxpuart: Fix missing devm_request_irq() return value check
 - L2CAP: Fix not responding with L2CAP_CR_LE_ENCRYPTION

* tag 'for-net-2025-05-30' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth:
  Bluetooth: L2CAP: Fix not responding with L2CAP_CR_LE_ENCRYPTION
  Bluetooth: hci_qca: move the SoC type check to the right place
  Bluetooth: btnxpuart: Fix missing devm_request_irq() return value check
  Bluetooth: MGMT: reject malformed HCI_CMD_SYNC commands
====================

Link: https://patch.msgid.link/20250530174835.405726-1-luiz.dentz@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Jakub Kicinski 2025-05-30 19:15:58 -07:00
commit d1a866d553
4 changed files with 13 additions and 9 deletions

View File

@ -533,6 +533,8 @@ static int ps_setup(struct hci_dev *hdev)
ps_host_wakeup_irq_handler,
IRQF_ONESHOT | IRQF_TRIGGER_FALLING,
dev_name(&serdev->dev), nxpdev);
if (ret)
bt_dev_info(hdev, "error setting wakeup IRQ handler, ignoring\n");
disable_irq(psdata->irq_handler);
device_init_wakeup(&serdev->dev, true);
}

View File

@ -2415,14 +2415,14 @@ static int qca_serdev_probe(struct serdev_device *serdev)
qcadev->bt_en = devm_gpiod_get_optional(&serdev->dev, "enable",
GPIOD_OUT_LOW);
if (IS_ERR(qcadev->bt_en) &&
(data->soc_type == QCA_WCN6750 ||
data->soc_type == QCA_WCN6855)) {
dev_err(&serdev->dev, "failed to acquire BT_EN gpio\n");
return PTR_ERR(qcadev->bt_en);
}
if (IS_ERR(qcadev->bt_en))
return dev_err_probe(&serdev->dev,
PTR_ERR(qcadev->bt_en),
"failed to acquire BT_EN gpio\n");
if (!qcadev->bt_en)
if (!qcadev->bt_en &&
(data->soc_type == QCA_WCN6750 ||
data->soc_type == QCA_WCN6855))
power_ctrl_enabled = false;
qcadev->sw_ctrl = devm_gpiod_get_optional(&serdev->dev, "swctrl",

View File

@ -4870,7 +4870,8 @@ static int l2cap_le_connect_req(struct l2cap_conn *conn,
if (!smp_sufficient_security(conn->hcon, pchan->sec_level,
SMP_ALLOW_STK)) {
result = L2CAP_CR_LE_AUTHENTICATION;
result = pchan->sec_level == BT_SECURITY_MEDIUM ?
L2CAP_CR_LE_ENCRYPTION : L2CAP_CR_LE_AUTHENTICATION;
chan = NULL;
goto response_unlock;
}

View File

@ -2566,7 +2566,8 @@ static int mgmt_hci_cmd_sync(struct sock *sk, struct hci_dev *hdev,
struct mgmt_pending_cmd *cmd;
int err;
if (len < sizeof(*cp))
if (len != (offsetof(struct mgmt_cp_hci_cmd_sync, params) +
le16_to_cpu(cp->params_len)))
return mgmt_cmd_status(sk, hdev->id, MGMT_OP_HCI_CMD_SYNC,
MGMT_STATUS_INVALID_PARAMS);