1faa6c1f6SMatthias Ringwald /* 2faa6c1f6SMatthias Ringwald * Copyright (C) 2009-2012 by Matthias Ringwald 3faa6c1f6SMatthias Ringwald * 4faa6c1f6SMatthias Ringwald * Redistribution and use in source and binary forms, with or without 5faa6c1f6SMatthias Ringwald * modification, are permitted provided that the following conditions 6faa6c1f6SMatthias Ringwald * are met: 7faa6c1f6SMatthias Ringwald * 8faa6c1f6SMatthias Ringwald * 1. Redistributions of source code must retain the above copyright 9faa6c1f6SMatthias Ringwald * notice, this list of conditions and the following disclaimer. 10faa6c1f6SMatthias Ringwald * 2. Redistributions in binary form must reproduce the above copyright 11faa6c1f6SMatthias Ringwald * notice, this list of conditions and the following disclaimer in the 12faa6c1f6SMatthias Ringwald * documentation and/or other materials provided with the distribution. 13faa6c1f6SMatthias Ringwald * 3. Neither the name of the copyright holders nor the names of 14faa6c1f6SMatthias Ringwald * contributors may be used to endorse or promote products derived 15faa6c1f6SMatthias Ringwald * from this software without specific prior written permission. 16faa6c1f6SMatthias Ringwald * 4. Any redistribution, use, or modification is done solely for 17faa6c1f6SMatthias Ringwald * personal benefit and not for any commercial purpose or for 18faa6c1f6SMatthias Ringwald * monetary gain. 19faa6c1f6SMatthias Ringwald * 20faa6c1f6SMatthias Ringwald * THIS SOFTWARE IS PROVIDED BY MATTHIAS RINGWALD AND CONTRIBUTORS 21faa6c1f6SMatthias Ringwald * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22faa6c1f6SMatthias Ringwald * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 23faa6c1f6SMatthias Ringwald * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS 24faa6c1f6SMatthias Ringwald * RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 25faa6c1f6SMatthias Ringwald * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 26faa6c1f6SMatthias Ringwald * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 27faa6c1f6SMatthias Ringwald * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 28faa6c1f6SMatthias Ringwald * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 29faa6c1f6SMatthias Ringwald * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 30faa6c1f6SMatthias Ringwald * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31faa6c1f6SMatthias Ringwald * SUCH DAMAGE. 32faa6c1f6SMatthias Ringwald * 3351acb414SMatthias Ringwald * Please inquire about commercial licensing options at [email protected] 34faa6c1f6SMatthias Ringwald * 35faa6c1f6SMatthias Ringwald */ 36faa6c1f6SMatthias Ringwald 37faa6c1f6SMatthias Ringwald /* 38fb55bd0aSMatthias Ringwald * btstack_chipset_cc256x.c 39faa6c1f6SMatthias Ringwald * 40faa6c1f6SMatthias Ringwald * Adapter to use cc256x-based chipsets with BTstack 41faa6c1f6SMatthias Ringwald */ 42faa6c1f6SMatthias Ringwald 43fb55bd0aSMatthias Ringwald #ifndef __BTSTACK_CHIPSET_CC256X_H 44fb55bd0aSMatthias Ringwald #define __BTSTACK_CHIPSET_CC256X_H 45faa6c1f6SMatthias Ringwald 46faa6c1f6SMatthias Ringwald #if defined __cplusplus 47faa6c1f6SMatthias Ringwald extern "C" { 48faa6c1f6SMatthias Ringwald #endif 49faa6c1f6SMatthias Ringwald 50faa6c1f6SMatthias Ringwald #include <stdint.h> 51faa6c1f6SMatthias Ringwald #include "btstack_chipset.h" 52faa6c1f6SMatthias Ringwald 53ed5d91baSMatthias Ringwald /** 54ed5d91baSMatthias Ringwald * Configure output power before HCI POWER_ON 55ed5d91baSMatthias Ringwald */ 56faa6c1f6SMatthias Ringwald void btstack_chipset_cc256x_set_power(int16_t power_in_dB); 57ed5d91baSMatthias Ringwald 58ed5d91baSMatthias Ringwald /** 59ed5d91baSMatthias Ringwald * Get chipset instance for CC256x series 60ed5d91baSMatthias Ringwald */ 61faa6c1f6SMatthias Ringwald const btstack_chipset_t * btstack_chipset_cc256x_instance(void); 62faa6c1f6SMatthias Ringwald 63ed5d91baSMatthias Ringwald /** 64ed5d91baSMatthias Ringwald * Get LMP Subversion of compile-time init script 65ed5d91baSMatthias Ringwald */ 66ed5d91baSMatthias Ringwald uint16_t btstack_chipset_cc256x_lmp_subversion(void); 67ed5d91baSMatthias Ringwald 68*e2ee49eaSMatthias Ringwald /** 69*e2ee49eaSMatthias Ringwald * Set init script to use for next power up 70*e2ee49eaSMatthias Ringwald * 71*e2ee49eaSMatthias Ringwald * Note: Only needed when switching between different add-ons (BLE, AVRP, ANT+) 72*e2ee49eaSMatthias Ringwald * Note: Not supported by MSP430 "init script at 0x10000" workaround 73*e2ee49eaSMatthias Ringwald * 74*e2ee49eaSMatthias Ringwald * @param init_script_data or 0 for default script 75*e2ee49eaSMatthias Ringwald * @param init_script_size or 0 for default script 76*e2ee49eaSMatthias Ringwald */ 77*e2ee49eaSMatthias Ringwald void btstack_chipset_cc256x_set_init_script(uint8_t * data, uint32_t size); 78*e2ee49eaSMatthias Ringwald 79faa6c1f6SMatthias Ringwald #if defined __cplusplus 80faa6c1f6SMatthias Ringwald } 81faa6c1f6SMatthias Ringwald #endif 82faa6c1f6SMatthias Ringwald 83fb55bd0aSMatthias Ringwald #endif // __BTSTACK_CHIPSET_CC256X_H 84