Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    stack allocation fails in bmp3.c on ti-rtos

    stoledo
    New Poster

    stack allocation fails in bmp3.c on ti-rtos

    I am integrating the BMP3 driver (https://github.com/BoschSensortec/BMP3-Sensor-API) intn a TI-RTOS project.

    The code in bmp3.c allocates variable-length arrays on the stack in bmp_set_regs and bmp_get_regs and this fails. I think the failure is of the ARM C compiler, not something related to TI-RTOS. Possibly the issue is the lack of heap (not even sure if my project is configured with or without a heap, I certainly do not use malloc).

    Any advice? Thanks, Sivan

    4 REPLIES 4
    BSTRobin
    Community Moderator

    Re: stack allocation fails in bmp3.c on ti-rtos

    Hi stoledo,

    Do you mean your error appeared in the folloing line on your platform?
    uint8_t temp_buff[len * 2];

    stoledo
    New Poster

    Re: stack allocation fails in bmp3.c on ti-rtos

    Yes, exactly.

    stoledo
    New Poster

    Re: stack allocation fails in bmp3.c on ti-rtos

    And also in

    uint8_t temp_buff[len + dev->dummy_byte];

    BSTRobin
    Community Moderator

    Re: stack allocation fails in bmp3.c on ti-rtos

    Hi stoledo,

    As your software environment didn't support this type of memory allocation, you could define a global array.

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist