199e8f095SMatthias Ringwald /* 299e8f095SMatthias Ringwald * Copyright (C) 2009-2012 by Matthias Ringwald 399e8f095SMatthias Ringwald * 499e8f095SMatthias Ringwald * Redistribution and use in source and binary forms, with or without 599e8f095SMatthias Ringwald * modification, are permitted provided that the following conditions 699e8f095SMatthias Ringwald * are met: 799e8f095SMatthias Ringwald * 899e8f095SMatthias Ringwald * 1. Redistributions of source code must retain the above copyright 999e8f095SMatthias Ringwald * notice, this list of conditions and the following disclaimer. 1099e8f095SMatthias Ringwald * 2. Redistributions in binary form must reproduce the above copyright 1199e8f095SMatthias Ringwald * notice, this list of conditions and the following disclaimer in the 1299e8f095SMatthias Ringwald * documentation and/or other materials provided with the distribution. 1399e8f095SMatthias Ringwald * 3. Neither the name of the copyright holders nor the names of 1499e8f095SMatthias Ringwald * contributors may be used to endorse or promote products derived 1599e8f095SMatthias Ringwald * from this software without specific prior written permission. 1699e8f095SMatthias Ringwald * 4. Any redistribution, use, or modification is done solely for 1799e8f095SMatthias Ringwald * personal benefit and not for any commercial purpose or for 1899e8f095SMatthias Ringwald * monetary gain. 1999e8f095SMatthias Ringwald * 2099e8f095SMatthias Ringwald * THIS SOFTWARE IS PROVIDED BY MATTHIAS RINGWALD AND CONTRIBUTORS 2199e8f095SMatthias Ringwald * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 2299e8f095SMatthias Ringwald * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 2399e8f095SMatthias Ringwald * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MATTHIAS 2499e8f095SMatthias Ringwald * RINGWALD OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 2599e8f095SMatthias Ringwald * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 2699e8f095SMatthias Ringwald * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 2799e8f095SMatthias Ringwald * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 2899e8f095SMatthias Ringwald * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 2999e8f095SMatthias Ringwald * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 3099e8f095SMatthias Ringwald * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 3199e8f095SMatthias Ringwald * SUCH DAMAGE. 3299e8f095SMatthias Ringwald * 3399e8f095SMatthias Ringwald * Please inquire about commercial licensing options at [email protected] 3499e8f095SMatthias Ringwald * 3599e8f095SMatthias Ringwald */ 3699e8f095SMatthias Ringwald 3799e8f095SMatthias Ringwald /* 3899e8f095SMatthias Ringwald * btstack_chipset_bcm_download_firmware.h 3999e8f095SMatthias Ringwald * 4099e8f095SMatthias Ringwald * Helper to upload patchram before starting up stack in H5 mode 4199e8f095SMatthias Ringwald */ 4299e8f095SMatthias Ringwald 4399e8f095SMatthias Ringwald #include "btstack_uart_block.h" 4499e8f095SMatthias Ringwald 4599e8f095SMatthias Ringwald /** 4699e8f095SMatthias Ringwald * @brief Download firmware via uart_driver 4799e8f095SMatthias Ringwald * @param uart_driver -- already initialized 4899e8f095SMatthias Ringwald * @param done callback. 0 = Success 4999e8f095SMatthias Ringwald */ 50*78a48aa8SMatthias Ringwald void btstack_chipset_bcm_download_firmware_with_uart(const btstack_uart_t * the_uart_driver, int baudrate_upload, void (*done)(int result)); 51*78a48aa8SMatthias Ringwald 52*78a48aa8SMatthias Ringwald /** 53*78a48aa8SMatthias Ringwald * @brief Download firmware via uart_driver 54*78a48aa8SMatthias Ringwald * @param uart_driver -- already initialized 55*78a48aa8SMatthias Ringwald * @param done callback. 0 = Success 56*78a48aa8SMatthias Ringwald * @depreacted use btstack_chipset_bcm_download_firmware_with_uart 57*78a48aa8SMatthias Ringwald */ 5899e8f095SMatthias Ringwald void btstack_chipset_bcm_download_firmware(const btstack_uart_block_t * the_uart_driver, int baudrate_upload, void (*done)(int result)); 59