xref: /btstack/chipset/realtek/btstack_chipset_realtek.h (revision 7977fdca7a60f6946fdc0b9f5c6f90dad622b901)
18bb555aaSBjoern Hartmann /*
28bb555aaSBjoern Hartmann  * Copyright (C) 2014 BlueKitchen GmbH
38bb555aaSBjoern Hartmann  *
48bb555aaSBjoern Hartmann  * Redistribution and use in source and binary forms, with or without
58bb555aaSBjoern Hartmann  * modification, are permitted provided that the following conditions
68bb555aaSBjoern Hartmann  * are met:
78bb555aaSBjoern Hartmann  *
88bb555aaSBjoern Hartmann  * 1. Redistributions of source code must retain the above copyright
98bb555aaSBjoern Hartmann  *    notice, this list of conditions and the following disclaimer.
108bb555aaSBjoern Hartmann  * 2. Redistributions in binary form must reproduce the above copyright
118bb555aaSBjoern Hartmann  *    notice, this list of conditions and the following disclaimer in the
128bb555aaSBjoern Hartmann  *    documentation and/or other materials provided with the distribution.
138bb555aaSBjoern Hartmann  * 3. Neither the name of the copyright holders nor the names of
148bb555aaSBjoern Hartmann  *    contributors may be used to endorse or promote products derived
158bb555aaSBjoern Hartmann  *    from this software without specific prior written permission.
168bb555aaSBjoern Hartmann  * 4. Any redistribution, use, or modification is done solely for
178bb555aaSBjoern Hartmann  *    personal benefit and not for any commercial purpose or for
188bb555aaSBjoern Hartmann  *    monetary gain.
198bb555aaSBjoern Hartmann  *
208bb555aaSBjoern Hartmann  * THIS SOFTWARE IS PROVIDED BY BLUEKITCHEN GMBH AND CONTRIBUTORS
218bb555aaSBjoern Hartmann  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
228bb555aaSBjoern Hartmann  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
238bb555aaSBjoern Hartmann  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BLUEKITCHEN
248bb555aaSBjoern Hartmann  * GMBH OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
258bb555aaSBjoern Hartmann  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
268bb555aaSBjoern Hartmann  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
278bb555aaSBjoern Hartmann  * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
288bb555aaSBjoern Hartmann  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
298bb555aaSBjoern Hartmann  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
308bb555aaSBjoern Hartmann  * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
318bb555aaSBjoern Hartmann  * SUCH DAMAGE.
328bb555aaSBjoern Hartmann  *
338bb555aaSBjoern Hartmann  * Please inquire about commercial licensing options at
348bb555aaSBjoern Hartmann  * [email protected]
358bb555aaSBjoern Hartmann  *
368bb555aaSBjoern Hartmann  */
378bb555aaSBjoern Hartmann 
388bb555aaSBjoern Hartmann /*
398bb555aaSBjoern Hartmann  *  btstack_chipset_realtek
408bb555aaSBjoern Hartmann  *
418bb555aaSBjoern Hartmann  *  Adapter to use Realtek-based chipsets with BTstack
428bb555aaSBjoern Hartmann  */
438bb555aaSBjoern Hartmann 
448bb555aaSBjoern Hartmann #ifndef BTSTACK_CHIPSET_REALTEK_H
458bb555aaSBjoern Hartmann #define BTSTACK_CHIPSET_REALTEK_H
468bb555aaSBjoern Hartmann 
478bb555aaSBjoern Hartmann #if defined __cplusplus
488bb555aaSBjoern Hartmann extern "C" {
498bb555aaSBjoern Hartmann #endif
508bb555aaSBjoern Hartmann 
518bb555aaSBjoern Hartmann #include "bluetooth.h"
528bb555aaSBjoern Hartmann #include "btstack_chipset.h"
538bb555aaSBjoern Hartmann #include <stdint.h>
548bb555aaSBjoern Hartmann 
558bb555aaSBjoern Hartmann /**
568bb555aaSBjoern Hartmann  * @brief Set path to firmware file
578bb555aaSBjoern Hartmann  * @param path
588bb555aaSBjoern Hartmann  */
598bb555aaSBjoern Hartmann void btstack_chipset_realtek_set_firmware_file_path(const char *path);
608bb555aaSBjoern Hartmann 
618bb555aaSBjoern Hartmann /**
628bb555aaSBjoern Hartmann  * @brief Set path to firmware folder
638bb555aaSBjoern Hartmann  * @param path
648bb555aaSBjoern Hartmann  */
658bb555aaSBjoern Hartmann void btstack_chipset_realtek_set_firmware_folder_path(const char *path);
668bb555aaSBjoern Hartmann 
678bb555aaSBjoern Hartmann /**
688bb555aaSBjoern Hartmann  * @brief Set path to config file
698bb555aaSBjoern Hartmann  * @param path
708bb555aaSBjoern Hartmann  */
718bb555aaSBjoern Hartmann void btstack_chipset_realtek_set_config_file_path(const char *path);
728bb555aaSBjoern Hartmann 
738bb555aaSBjoern Hartmann /**
748bb555aaSBjoern Hartmann  * @brief Set path to config folder
758bb555aaSBjoern Hartmann  * @param path
768bb555aaSBjoern Hartmann  */
778bb555aaSBjoern Hartmann void btstack_chipset_realtek_set_config_folder_path(const char *path);
788bb555aaSBjoern Hartmann 
798bb555aaSBjoern Hartmann /**
808bb555aaSBjoern Hartmann  * @brief Set product id
818bb555aaSBjoern Hartmann  * @param id
828bb555aaSBjoern Hartmann  */
838bb555aaSBjoern Hartmann void btstack_chipset_realtek_set_product_id(uint16_t id);
848bb555aaSBjoern Hartmann 
858bb555aaSBjoern Hartmann /**
86*5a4c0fdaSMatthias Ringwald  * @brief Get num USB Controllers
87*5a4c0fdaSMatthias Ringwald  * @return num controllers
88*5a4c0fdaSMatthias Ringwald  */
89*5a4c0fdaSMatthias Ringwald uint16_t btstack_chipset_realtek_get_num_usb_controllers(void);
90*5a4c0fdaSMatthias Ringwald 
91*5a4c0fdaSMatthias Ringwald /**
92*5a4c0fdaSMatthias Ringwald  * @brief Get Vendor/Product ID for Controller with index
93*5a4c0fdaSMatthias Ringwald  * @param index
94*5a4c0fdaSMatthias Ringwald  * @param out_vendor_id
95*5a4c0fdaSMatthias Ringwald  * @param out_product_id
96*5a4c0fdaSMatthias Ringwald  */
97*5a4c0fdaSMatthias Ringwald void btstack_chipset_realtek_get_vendor_product_id(uint16_t index, uint16_t * out_vendor_id, uint16_t * out_product_id);
98*5a4c0fdaSMatthias Ringwald 
99*5a4c0fdaSMatthias Ringwald /**
1008bb555aaSBjoern Hartmann  * Get chipset instance for REALTEK chipsets
1018bb555aaSBjoern Hartmann  */
1028bb555aaSBjoern Hartmann const btstack_chipset_t *btstack_chipset_realtek_instance(void);
1038bb555aaSBjoern Hartmann 
1048bb555aaSBjoern Hartmann #if defined __cplusplus
1058bb555aaSBjoern Hartmann }
1068bb555aaSBjoern Hartmann #endif
1078bb555aaSBjoern Hartmann 
1088bb555aaSBjoern Hartmann #endif  // BTSTACK_CHIPSET_REALTEK_H
109