AzureMXChip/MXCHIPAZ3166/core/lib/threadx/common_modules/module_lib/src/txm_semaphore_create.c
UINT _txe_semaphore_create(TX_SEMAPHORE *semaphore_ptr, CHAR *name_ptr, ULONG initial_count, UINT semaphore_control_block_size)
{

UINT return_value;
ALIGN_TYPE extra_parameters[2];

    extra_parameters[0] = (ALIGN_TYPE) initial_count;
    extra_parameters[1] = (ALIGN_TYPE) semaphore_control_block_size;

    /* Call module manager dispatcher.  */
    return_value = (UINT) (_txm_module_kernel_call_dispatcher)(TXM_SEMAPHORE_CREATE_CALL, (ALIGN_TYPE) semaphore_ptr, (ALIGN_TYPE) name_ptr, (ALIGN_TYPE) extra_parameters);

    /* Return value to the caller.  */
    return(return_value);
}
/**************************************************************************/
/*                                                                        */
/*  FUNCTION                                               RELEASE        */
/*                                                                        */
/*    _txe_semaphore_create                               PORTABLE C      */
/*                                                           6.1          */
/*  AUTHOR                                                                */
/*                                                                        */
/*    Scott Larson, Microsoft Corporation                                 */
/*                                                                        */
/*  DESCRIPTION                                                           */
/*                                                                        */
/*    This function checks for errors in the create semaphore function    */
/*    call.                                                               */
/*                                                                        */
/*  INPUT                                                                 */
/*                                                                        */
/*    semaphore_ptr                     Pointer to semaphore control block*/
/*    name_ptr                          Pointer to semaphore name         */
/*    initial_count                     Initial semaphore count           */
/*    semaphore_control_block_size      Size of semaphore control block   */
/*                                                                        */
/*  OUTPUT                                                                */
/*                                                                        */
/*    TX_SEMAPHORE_ERROR                Invalid semaphore pointer         */
/*    TX_CALLER_ERROR                   Invalid caller of this function   */
/*    status                            Actual completion status          */
/*                                                                        */
/*  CALLS                                                                 */
/*                                                                        */
/*    _txm_module_kernel_call_dispatcher                                  */
/*                                                                        */
/*  CALLED BY                                                             */
/*                                                                        */
/*    Module application code                                             */
/*                                                                        */
/*  RELEASE HISTORY                                                       */
/*                                                                        */
/*    DATE              NAME                      DESCRIPTION             */
/*                                                                        */
/*  09-30-2020     Scott Larson             Initial Version 6.1           */
/*                                                                        */
/**************************************************************************/
FUNCTION                                               RELEASE

_txe_semaphore_create                               PORTABLE C
6.1
AUTHOR

Scott Larson, Microsoft Corporation

DESCRIPTION

This function checks for errors in the create semaphore function
call.

INPUT

semaphore_ptr                     Pointer to semaphore control block
name_ptr                          Pointer to semaphore name
initial_count                     Initial semaphore count
semaphore_control_block_size      Size of semaphore control block

OUTPUT

TX_SEMAPHORE_ERROR                Invalid semaphore pointer
TX_CALLER_ERROR                   Invalid caller of this function
status                            Actual completion status

CALLS



CALLED BY

Module application code

RELEASE HISTORY

DATE              NAME                      DESCRIPTION

09-30-2020     Scott Larson             Initial Version 6.1
FUNCTION RELEASE _txe_semaphore_create PORTABLE C 6 . 1 AUTHOR Scott Larson Microsoft Corporation DESCRIPTION This function checks for errors in the create semaphore function call . INPUT semaphore_ptr Pointer to semaphore control block name_ptr Pointer to semaphore name initial_count Initial semaphore count semaphore_control_block_size Size of semaphore control block OUTPUT TX_SEMAPHORE_ERROR Invalid semaphore pointer TX_CALLER_ERROR Invalid caller of this function status Actual completion status CALLS CALLED BY Module application code RELEASE HISTORY DATE NAME DESCRIPTION 09 - 30 - 2020 Scott Larson Initial Version 6 . 1
UINT _txe_semaphore_create(TX_SEMAPHORE *semaphore_ptr, CHAR *name_ptr, ULONG initial_count, UINT semaphore_control_block_size)
{
UINT return_value;
ALIGN_TYPE extra_parameters[2];
    extra_parameters[0] = (ALIGN_TYPE) initial_count;
    extra_parameters[1] = (ALIGN_TYPE) semaphore_control_block_size;
    return_value = (UINT) (_txm_module_kernel_call_dispatcher)(TXM_SEMAPHORE_CREATE_CALL, (ALIGN_TYPE) semaphore_ptr, (ALIGN_TYPE) name_ptr, (ALIGN_TYPE) extra_parameters);
    return(return_value);
}
UINT _txe_semaphore_create ( TX_SEMAPHORE * semaphore_ptr , CHAR * name_ptr , ULONG initial_count , UINT semaphore_control_block_size ) { UINT return_value ; ALIGN_TYPE extra_parameters [ 2 ] ; extra_parameters [ 0 ] = ( ALIGN_TYPE ) initial_count ; extra_parameters [ 1 ] = ( ALIGN_TYPE ) semaphore_control_block_size ; return_value = ( UINT ) ( _txm_module_kernel_call_dispatcher ) ( TXM_SEMAPHORE_CREATE_CALL , ( ALIGN_TYPE ) semaphore_ptr , ( ALIGN_TYPE ) name_ptr , ( ALIGN_TYPE ) extra_parameters ) ; return ( return_value ) ; }
FUNCTION                                               RELEASE
FUNCTION RELEASE
/* Call module manager dispatcher.  */ /* Return value to the caller.  */