hci.h (998906cd833194d65c34b7191899156f7a3d61c8) hci.h (df33c7a6dc495cf85196cca3b51121d0ff393a23)
1/*
2 * Copyright (C) 2009 by Matthias Ringwald
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 *
8 * 1. Redistributions of source code must retain the above copyright

--- 194 unchanged lines hidden (view full) ---

203 HCI_STATE state;
204 uint8_t substate;
205 uint8_t cmds_ready;
206
207} hci_stack_t;
208
209// create and send hci command packets based on a template and a list of parameters
210uint16_t hci_create_cmd(uint8_t *hci_cmd_buffer, hci_cmd_t *cmd, ...);
1/*
2 * Copyright (C) 2009 by Matthias Ringwald
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 *
8 * 1. Redistributions of source code must retain the above copyright

--- 194 unchanged lines hidden (view full) ---

203 HCI_STATE state;
204 uint8_t substate;
205 uint8_t cmds_ready;
206
207} hci_stack_t;
208
209// create and send hci command packets based on a template and a list of parameters
210uint16_t hci_create_cmd(uint8_t *hci_cmd_buffer, hci_cmd_t *cmd, ...);
211uint16_t hci_create_cmd_internal(uint8_t *hci_cmd_buffer, hci_cmd_t *cmd, va_list argptr);
211uint16_t hci_create_cmd_internal(uint8_t *hci_cmd_buffer, const hci_cmd_t *cmd, va_list argptr);
212
213// set up HCI
214void hci_init(hci_transport_t *transport, void *config, bt_control_t *control);
215void hci_register_packet_handler(void (*handler)(uint8_t packet_type, uint8_t *packet, uint16_t size));
216
217// power control
218int hci_power_control(HCI_POWER_MODE mode);
219
220/**
221 * run the hci control loop once
222 */
223void hci_run();
224
225// create and send hci command packets based on a template and a list of parameters
212
213// set up HCI
214void hci_init(hci_transport_t *transport, void *config, bt_control_t *control);
215void hci_register_packet_handler(void (*handler)(uint8_t packet_type, uint8_t *packet, uint16_t size));
216
217// power control
218int hci_power_control(HCI_POWER_MODE mode);
219
220/**
221 * run the hci control loop once
222 */
223void hci_run();
224
225// create and send hci command packets based on a template and a list of parameters
226int hci_send_cmd(hci_cmd_t *cmd, ...);
226int hci_send_cmd(const hci_cmd_t *cmd, ...);
227
228// send complete CMD packet
229int hci_send_cmd_packet(uint8_t *packet, int size);
230
231// send ACL packet
232int hci_send_acl_packet(uint8_t *packet, int size);
233
234hci_connection_t * connection_for_handle(hci_con_handle_t con_handle);

--- 12 unchanged lines hidden ---
227
228// send complete CMD packet
229int hci_send_cmd_packet(uint8_t *packet, int size);
230
231// send ACL packet
232int hci_send_acl_packet(uint8_t *packet, int size);
233
234hci_connection_t * connection_for_handle(hci_con_handle_t con_handle);

--- 12 unchanged lines hidden ---