21 #define ISF_LOCK_DEFAULT (0)
48 OSA_EnterCritical(kCriticalDisableInt);
60 OSA_MutexCreate(apBusHandle->
pLock);
61 OSA_MutexCreate(apBusHandle->
pRdLock);
65 apBusHandle->
pHandle = pBusHandle;
66 OSA_ExitCritical(kCriticalDisableInt);
78 if((apBusHandle == NULL) || (apBusConfig == NULL)){
93 pBusConfig->
config.baudRate = apBusConfig->baudRate;
94 pBusConfig->
config.parityMode = apBusConfig->parityMode;
95 pBusConfig->
config.stopBitCount = apBusConfig->stopBitCount;
96 pBusConfig->
config.bitCountPerChar = apBusConfig->bitCountPerChar;
112 if(apBusHandle == NULL){
127 if((apBusHandle == NULL) || (apBusConfig == NULL)){
144 if(apBusHandle == NULL){
161 if(apBusHandle == NULL){
177 if(apBusHandle == NULL){
186 UART_HAL_EnableTransmitter (base);
187 UART_HAL_EnableReceiver (base);
202 if(apBusHandle == NULL){
210 UART_HAL_DisableTransmitter (base);
211 UART_HAL_DisableReceiver (base);
229 if((apBusHandle == NULL) || (apEndpointHandle == NULL)){
242 *apEndpointHandle = pEndpoint;
255 if(apEndpoint == NULL){
258 OSA_MemFree(apEndpoint);
270 if((NULL == apEndpointHandle) || (NULL == pWriteBuffer)){
273 if(buffsize < nByteWrite){
322 if((NULL == apEndpointHandle) || (NULL == pReadBuffer)){
325 if(buffsize < nByteRead){
354 ret = UART_DRV_ReceiveDataBlocking(pBusHandle->
uartHandle.
instance,pReadBuffer, nByteRead, OSA_WAIT_FOREVER);
377 pnLock = &apBusHandle->
nRdLock;
379 pLock = apBusHandle->
pLock;
380 pnLock = &apBusHandle->
nLock;
389 if(kStatus_OSA_Success != OSA_MutexLock ((mutex_t*)pLock, OSA_WAIT_FOREVER)){
408 pnLock = &apBusHandle->
nRdLock;
410 pLock = apBusHandle->
pLock;
411 pnLock = &apBusHandle->
nLock;
422 OSA_MutexUnlock((mutex_t*)pLock);
434 assert(g_uartBase[instance]);
435 assert(instance < UART_INSTANCE_COUNT);
437 g_uartUserDefinedVars[instance] = userDefinedVars;
439 return kStatus_UART_Success;
const uart_UserDefinedVars_t * g_uartUserDefinedVars[UART_INSTANCE_COUNT]
uint32 comm_Id_t
This type is for a numeric channel identifier- index into an array of channels in the system...
isf_status_t uart_adapter_release_lock(busHandle_t *apBusHandle)
This function releases exclusive bus access.
This structure defines the data bus handle.
uart_BusConfig_t busConfig
isf_status_t uart_adapter_get_endpoint(busHandle_t *apBusHandle, void *apDevice, void **apEndpointHandle)
This function creates a endpoint at a already initialized bus.
isf_status_t uart_adapter_acquire_lock(busHandle_t *apBusHandle, isf_duration_t aTimeout)
This function locks the bus for exclusive access.
uart_user_config_t config
isf_status_t uart_adapter_read(void *apEndpointHandle, int32 offset, void *pReadBuffer, uint32 buffsize, uint32 nByteRead, uart_readFlags_t aFlags)
This function reads from a uart device.
uart_status_t uart_user_init(uint32_t instance, const uart_UserDefinedVars_t *userDefinedVars)
Initializes UART User defined parameters.
isf_status_t uart_adapter_write(void *apEndpointHandle, int32 offset, void *pWriteBuffer, uint32 buffsize, uint32 nByteWrite, uart_writeFlags_t aFlags)
This function writes to a uart device.
isf_protocol_adapter.h defines the general interface definition for the protocol adapter.
isf_status_t uart_adapter_stop(busHandle_t *apBusHandle)
This function stops the given uart bus.
isf_status_t uart_adapter_release_endpoint(uart_Endpoint_t *apEndpoint)
This function closes a particular endpoint.
isf_status_t uart_adapter_init(comm_Id_t aBusId, busHandle_t *apBusHandle)
This function initializes a uart bus.
The isf_util.h file contains the utility method declarations and macros.
This structure is a declaration of a BusHandle type.
isf_uart_state_t uartHandle
comm_Flags_t uart_readFlags_t
comm_Flags_t uart_writeFlags_t
isf_status_t uart_adapter_get_config(busHandle_t *apBusHandle, void *apBusConfig)
This function returns the current bus configuration.
uint32 isf_duration_t
ISF time duration in microseconds.
Main ISF header file. Contains code common to all ISF components.
uart_busHandle_t uart_busHandle[]
comm_State_t uart_adapter_get_state(busHandle_t *apBusHandle)
This function returns the current bus state.
This structure defines a device endpoint encapsulation for uart handler.
isf_uart_types.h defines the uart protocol adapter structure and types.
int32 isf_status_t
ISF return status type.
isf_uart_adapter.h defines the API definitions and types for the uart protocol adapter.
enum comm_State_vals comm_State_t
This enum holds an enumerated value describing the state of a channel.
isf_status_t uart_adapter_start(busHandle_t *apBusHandle)
This function starts a bus.
isf_devmsg.h defines the API definitions and types for the Intelligent Sensing (ISF) Device Messaging...
isf_status_t uart_adapter_configure(busHandle_t *apBusHandle, uart_user_config_t *apBusConfig)
This function reconfigures an already initialized bus.