in nimble/controller/src/ble_ll_hci.c [1695:1765]
case BLE_HCI_OP(BLE_HCI_OGF_LINK_CTRL, 0x01): /* Inquiry */
ble_ll_hci_cmd_fake_dual_mode_inquiry(cmdbuf[3]);
rc = BLE_ERR_MAX + 1;
break;
case BLE_HCI_OP(BLE_HCI_OGF_LINK_CTRL, 0x02): /* Inquiry Cancel */
ble_ll_hci_cmd_fake_dual_mode_inquiry(0);
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x05): /* Set Event Filter */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x13): /* Write Local Name */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x16): /* Write Connection Accept Timeout */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x18): /* Write Page Timeout */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x1a): /* Write Scan Enable */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x1c): /* Write Page Scan Activity */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x1e): /* Write Inquiry Scan Activity */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x20): /* Write Authentication Enable */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x24): /* Write Class Of Device */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x33): /* Host Buffer Size */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x45): /* Write Inquiry Mode */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x52): /* Write Extended Inquiry Response */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x56): /* Write Simple Pairing Mode */
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x6d): /* Write LE Host Support */
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x14): /* Read Local Name */
memset(rspbuf, 0, 248);
strcpy((char *)rspbuf, "NimBLE");
*rsplen = 248;
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x23): /* Read Class Of Device */
put_le24(rspbuf, 0);
*rsplen = 3;
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x25): /* Read Voice Settings */
put_le16(rspbuf, 0);
*rsplen = 2;
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x38): /* Read Number Of Supported IAC */
rspbuf[0] = 1;
*rsplen = 1;
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x39): /* Read Current IAC LAP */
rspbuf[0] = 1;
put_le24(&rspbuf[1], 0x9e8b33);
*rsplen = 4;
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_CTLR_BASEBAND, 0x58): /* Read Inquiry Response Transmit Power Level */
rspbuf[0] = 0x04;
*rsplen = 1;
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_INFO_PARAMS, BLE_HCI_OCF_IP_RD_LOC_SUPP_FEAT):
put_le64(rspbuf, 0x077bffdbfe0ffebf);
*rsplen = 8;
rc = 0;
break;
case BLE_HCI_OP(BLE_HCI_OGF_INFO_PARAMS, 0x04): /* Read Local Extended Features */
rspbuf[0] = cmdbuf[0];
rspbuf[1] = 0;
if (rspbuf[0] == 0) {
put_le64(&rspbuf[2], 0x077bffdbfe0ffebf);
rc = 0;
} else {
put_le64(&rspbuf[2], 0);
rc = BLE_ERR_INV_HCI_CMD_PARMS;
}