case BLE_HCI_OP()

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;
        }