10 #ifndef __BRP_BALTECH_SDK_CMDS_DHWCTRL_H__ 11 #define __BRP_BALTECH_SDK_CMDS_DHWCTRL_H__ 12 #include "../typedefs.h" 13 #ifdef BALTECH_SDK_INTERNAL 17 #define BRP_DHWCtrl_ErrInvalidIndex BRP_ERR_STATUS(0xE100, 0x01) 18 #endif // BALTECH_SDK_INTERNAL 19 #ifdef BALTECH_SDK_INTERNAL 23 #define BRP_DHWCtrl_ErrNotActive BRP_ERR_STATUS(0xE100, 0x02) 24 #endif // BALTECH_SDK_INTERNAL 25 #ifdef BALTECH_SDK_INTERNAL 29 #define BRP_DHWCtrl_ErrAlreadyActive BRP_ERR_STATUS(0xE100, 0x03) 30 #endif // BALTECH_SDK_INTERNAL 31 #ifdef BALTECH_SDK_INTERNAL 35 #define BRP_DHWCtrl_ErrInvalidParam BRP_ERR_STATUS(0xE100, 0x04) 36 #endif // BALTECH_SDK_INTERNAL 37 #ifdef BALTECH_SDK_INTERNAL 41 #define BRP_DHWCtrl_ErrTimeout BRP_ERR_STATUS(0xE100, 0x05) 42 #endif // BALTECH_SDK_INTERNAL 43 #ifdef BALTECH_SDK_INTERNAL 47 #define BRP_DHWCtrl_ErrEthFrameTooBig BRP_ERR_STATUS(0xE100, 0x10) 48 #endif // BALTECH_SDK_INTERNAL 49 #ifdef BALTECH_SDK_INTERNAL 53 #define BRP_DHWCtrl_ErrUsbNotConnected BRP_ERR_STATUS(0xE100, 0x20) 54 #endif // BALTECH_SDK_INTERNAL 55 #ifdef BALTECH_SDK_INTERNAL 59 #define BRP_DHWCtrl_ErrUsbStall BRP_ERR_STATUS(0xE100, 0x21) 60 #endif // BALTECH_SDK_INTERNAL 61 #ifdef BALTECH_SDK_INTERNAL 65 #define BRP_DHWCtrl_ErrUsbTransfer BRP_ERR_STATUS(0xE100, 0x22) 66 #endif // BALTECH_SDK_INTERNAL 67 #ifdef BALTECH_SDK_INTERNAL 71 #define BRP_DHWCtrl_ErrUsbBufferOverflow BRP_ERR_STATUS(0xE100, 0x23) 72 #endif // BALTECH_SDK_INTERNAL 73 #ifdef BALTECH_SDK_INTERNAL 77 #define BRP_DHWCtrl_ErrFlashRange BRP_ERR_STATUS(0xE100, 0x30) 78 #endif // BALTECH_SDK_INTERNAL 79 #ifdef BALTECH_SDK_INTERNAL 83 #define BRP_DHWCtrl_ErrFlashWrite BRP_ERR_STATUS(0xE100, 0x31) 84 #endif // BALTECH_SDK_INTERNAL 85 #ifdef BALTECH_SDK_INTERNAL 89 #define BRP_DHWCtrl_ErrFlashErase BRP_ERR_STATUS(0xE100, 0x32) 90 #endif // BALTECH_SDK_INTERNAL 91 #ifdef BALTECH_SDK_INTERNAL 95 #define BRP_DHWCtrl_ErrHardware BRP_ERR_STATUS(0xE100, 0xFF) 96 #endif // BALTECH_SDK_INTERNAL 97 #ifdef BALTECH_SDK_INTERNAL 100 brp_DHWCtrlPinMapEntry* PinMap;
102 unsigned PeripheralIndex;
104 } brp_DHWCtrl_EthActivate_t;
115 #ifdef BRP_SUPPORT_LEGACY_METHODS 116 brp_errcode brp_DHWCtrl_EthActivate(
brp_protocol protocol, brp_DHWCtrlPinMapEntry* _input_PinMap,
size_t _input_PinMap_len,
unsigned _input_PeripheralIndex,
brp_buf _input_MacAddress);
118 brp_errcode brp_DHWCtrl_EthActivate(brp_DHWCtrl_EthActivate_t params);
123 } brp_DHWCtrl_EthDeactivate_t;
131 #ifdef BRP_SUPPORT_LEGACY_METHODS 134 brp_errcode brp_DHWCtrl_EthDeactivate(brp_DHWCtrl_EthDeactivate_t params);
141 brp_DHWCtrlEtherType EtherType;
144 } brp_DHWCtrl_EthSendFrame_t;
157 #ifdef BRP_SUPPORT_LEGACY_METHODS 158 brp_errcode brp_DHWCtrl_EthSendFrame(
brp_protocol protocol,
unsigned _input_Index,
brp_buf _input_DstMac,
brp_buf _input_SrcMac, brp_DHWCtrlEtherType _input_EtherType,
brp_buf _input_Payload,
size_t _input_Payload_len);
160 brp_errcode brp_DHWCtrl_EthSendFrame(brp_DHWCtrl_EthSendFrame_t params);
166 unsigned* TimestampUs;
173 brp_DHWCtrlEtherType* EtherType;
177 } brp_DHWCtrl_EthRecvFrame_t;
197 #ifdef BRP_SUPPORT_LEGACY_METHODS 198 brp_errcode brp_DHWCtrl_EthRecvFrame(
brp_protocol protocol,
unsigned _input_Index,
unsigned _input_TimeoutMs,
unsigned* TimestampUs,
unsigned* Seq,
bool* RxOverflow,
bool* CrcError,
bool* Truncated,
brp_buf* DstMac,
brp_buf* SrcMac, brp_DHWCtrlEtherType* EtherType,
brp_buf* Payload,
size_t* Payload_len,
brp_mempool *mempool);
200 brp_errcode brp_DHWCtrl_EthRecvFrame(brp_DHWCtrl_EthRecvFrame_t params);
205 brp_DHWCtrlEthLinkState State;
207 } brp_DHWCtrl_EthWaitLinkState_t;
217 #ifdef BRP_SUPPORT_LEGACY_METHODS 218 brp_errcode brp_DHWCtrl_EthWaitLinkState(
brp_protocol protocol,
unsigned _input_Index, brp_DHWCtrlEthLinkState _input_State,
unsigned _input_TimeoutMs);
220 brp_errcode brp_DHWCtrl_EthWaitLinkState(brp_DHWCtrl_EthWaitLinkState_t params);
225 brp_DHWCtrl_EthGetCommMode_Speed* Speed;
226 brp_DHWCtrl_EthGetCommMode_Duplex* Duplex;
227 } brp_DHWCtrl_EthGetCommMode_t;
237 #ifdef BRP_SUPPORT_LEGACY_METHODS 238 brp_errcode brp_DHWCtrl_EthGetCommMode(
brp_protocol protocol,
unsigned _input_Index, brp_DHWCtrl_EthGetCommMode_Speed* Speed, brp_DHWCtrl_EthGetCommMode_Duplex* Duplex);
240 brp_errcode brp_DHWCtrl_EthGetCommMode(brp_DHWCtrl_EthGetCommMode_t params);
244 brp_DHWCtrlGpioPin Pin;
245 brp_DHWCtrl_GpioConfigure_Mode Mode;
246 } brp_DHWCtrl_GpioConfigure_t;
255 #ifdef BRP_SUPPORT_LEGACY_METHODS 256 brp_errcode brp_DHWCtrl_GpioConfigure(
brp_protocol protocol, brp_DHWCtrlGpioPin _input_Pin, brp_DHWCtrl_GpioConfigure_Mode _input_Mode);
258 brp_errcode brp_DHWCtrl_GpioConfigure(brp_DHWCtrl_GpioConfigure_t params);
262 brp_DHWCtrlGpioPin Pin;
263 brp_DHWCtrlGpioLevel Level;
264 } brp_DHWCtrl_GpioSetState_t;
273 #ifdef BRP_SUPPORT_LEGACY_METHODS 274 brp_errcode brp_DHWCtrl_GpioSetState(
brp_protocol protocol, brp_DHWCtrlGpioPin _input_Pin, brp_DHWCtrlGpioLevel _input_Level);
276 brp_errcode brp_DHWCtrl_GpioSetState(brp_DHWCtrl_GpioSetState_t params);
280 brp_DHWCtrlGpioPin Pin;
281 brp_DHWCtrlGpioLevel Level;
283 } brp_DHWCtrl_GpioWaitState_t;
293 #ifdef BRP_SUPPORT_LEGACY_METHODS 294 brp_errcode brp_DHWCtrl_GpioWaitState(
brp_protocol protocol, brp_DHWCtrlGpioPin _input_Pin, brp_DHWCtrlGpioLevel _input_Level,
unsigned _input_TimeoutMs);
296 brp_errcode brp_DHWCtrl_GpioWaitState(brp_DHWCtrl_GpioWaitState_t params);
300 brp_DHWCtrlPinMapEntry* PinMap;
302 unsigned PeripheralIndex;
303 } brp_DHWCtrl_UsbHostActivate_t;
313 #ifdef BRP_SUPPORT_LEGACY_METHODS 314 brp_errcode brp_DHWCtrl_UsbHostActivate(
brp_protocol protocol, brp_DHWCtrlPinMapEntry* _input_PinMap,
size_t _input_PinMap_len,
unsigned _input_PeripheralIndex);
316 brp_errcode brp_DHWCtrl_UsbHostActivate(brp_DHWCtrl_UsbHostActivate_t params);
321 } brp_DHWCtrl_UsbHostDeactivate_t;
329 #ifdef BRP_SUPPORT_LEGACY_METHODS 332 brp_errcode brp_DHWCtrl_UsbHostDeactivate(brp_DHWCtrl_UsbHostDeactivate_t params);
337 } brp_DHWCtrl_UsbHostBusReset_t;
345 #ifdef BRP_SUPPORT_LEGACY_METHODS 348 brp_errcode brp_DHWCtrl_UsbHostBusReset(brp_DHWCtrl_UsbHostBusReset_t params);
353 } brp_DHWCtrl_UsbHostBusSuspend_t;
361 #ifdef BRP_SUPPORT_LEGACY_METHODS 364 brp_errcode brp_DHWCtrl_UsbHostBusSuspend(brp_DHWCtrl_UsbHostBusSuspend_t params);
369 } brp_DHWCtrl_UsbHostBusResume_t;
377 #ifdef BRP_SUPPORT_LEGACY_METHODS 380 brp_errcode brp_DHWCtrl_UsbHostBusResume(brp_DHWCtrl_UsbHostBusResume_t params);
385 brp_DHWCtrlUsbPortState State;
387 brp_DHWCtrl_UsbHostWaitPortStatus_Speed* Speed;
388 } brp_DHWCtrl_UsbHostWaitPortStatus_t;
399 #ifdef BRP_SUPPORT_LEGACY_METHODS 400 brp_errcode brp_DHWCtrl_UsbHostWaitPortStatus(
brp_protocol protocol,
unsigned _input_Index, brp_DHWCtrlUsbPortState _input_State,
unsigned _input_TimeoutMs, brp_DHWCtrl_UsbHostWaitPortStatus_Speed* Speed);
402 brp_errcode brp_DHWCtrl_UsbHostWaitPortStatus(brp_DHWCtrl_UsbHostWaitPortStatus_t params);
415 } brp_DHWCtrl_UsbHostTransferCtrlIn_t;
431 #ifdef BRP_SUPPORT_LEGACY_METHODS 432 brp_errcode brp_DHWCtrl_UsbHostTransferCtrlIn(
brp_protocol protocol,
unsigned _input_Index,
unsigned _input_Addr,
unsigned _input_Mps,
brp_buf _input_Setup,
unsigned _input_InLen,
unsigned _input_TimeoutMs,
brp_buf* InData,
size_t* InData_len,
brp_mempool *mempool);
434 brp_errcode brp_DHWCtrl_UsbHostTransferCtrlIn(brp_DHWCtrl_UsbHostTransferCtrlIn_t params);
445 } brp_DHWCtrl_UsbHostTransferCtrlOut_t;
459 #ifdef BRP_SUPPORT_LEGACY_METHODS 460 brp_errcode brp_DHWCtrl_UsbHostTransferCtrlOut(
brp_protocol protocol,
unsigned _input_Index,
unsigned _input_Addr,
unsigned _input_Mps,
brp_buf _input_Setup,
brp_buf _input_OutData,
size_t _input_OutData_len,
unsigned _input_TimeoutMs);
462 brp_errcode brp_DHWCtrl_UsbHostTransferCtrlOut(brp_DHWCtrl_UsbHostTransferCtrlOut_t params);
469 brp_DHWCtrlUsbTransferAttr Attr;
476 } brp_DHWCtrl_UsbHostTransferIn_t;
493 #ifdef BRP_SUPPORT_LEGACY_METHODS 494 brp_errcode brp_DHWCtrl_UsbHostTransferIn(
brp_protocol protocol,
unsigned _input_Index,
unsigned _input_Addr,
unsigned _input_Ep, brp_DHWCtrlUsbTransferAttr _input_Attr,
unsigned _input_Mps,
unsigned _input_MaxLen,
unsigned _input_TimeoutMs,
brp_buf* Data,
size_t* Data_len,
brp_mempool *mempool);
496 brp_errcode brp_DHWCtrl_UsbHostTransferIn(brp_DHWCtrl_UsbHostTransferIn_t params);
503 brp_DHWCtrlUsbTransferAttr Attr;
508 } brp_DHWCtrl_UsbHostTransferOut_t;
523 #ifdef BRP_SUPPORT_LEGACY_METHODS 524 brp_errcode brp_DHWCtrl_UsbHostTransferOut(
brp_protocol protocol,
unsigned _input_Index,
unsigned _input_Addr,
unsigned _input_Ep, brp_DHWCtrlUsbTransferAttr _input_Attr,
unsigned _input_Mps,
brp_buf _input_Data,
size_t _input_Data_len,
unsigned _input_TimeoutMs);
526 brp_errcode brp_DHWCtrl_UsbHostTransferOut(brp_DHWCtrl_UsbHostTransferOut_t params);
533 } brp_DHWCtrl_UsbHostTransferCancel_t;
543 #ifdef BRP_SUPPORT_LEGACY_METHODS 544 brp_errcode brp_DHWCtrl_UsbHostTransferCancel(
brp_protocol protocol,
unsigned _input_Index,
unsigned _input_Addr,
unsigned _input_Ep);
546 brp_errcode brp_DHWCtrl_UsbHostTransferCancel(brp_DHWCtrl_UsbHostTransferCancel_t params);
552 } brp_DHWCtrl_UsbHostSofControl_t;
561 #ifdef BRP_SUPPORT_LEGACY_METHODS 564 brp_errcode brp_DHWCtrl_UsbHostSofControl(brp_DHWCtrl_UsbHostSofControl_t params);
568 brp_DHWCtrlPinMapEntry* PinMap;
570 unsigned PeripheralIndex;
571 unsigned* SectorSize;
572 unsigned* SectorCount;
573 } brp_DHWCtrl_FlashActivate_t;
585 #ifdef BRP_SUPPORT_LEGACY_METHODS 586 brp_errcode brp_DHWCtrl_FlashActivate(
brp_protocol protocol, brp_DHWCtrlPinMapEntry* _input_PinMap,
size_t _input_PinMap_len,
unsigned _input_PeripheralIndex,
unsigned* SectorSize,
unsigned* SectorCount);
588 brp_errcode brp_DHWCtrl_FlashActivate(brp_DHWCtrl_FlashActivate_t params);
593 } brp_DHWCtrl_FlashDeactivate_t;
601 #ifdef BRP_SUPPORT_LEGACY_METHODS 604 brp_errcode brp_DHWCtrl_FlashDeactivate(brp_DHWCtrl_FlashDeactivate_t params);
614 } brp_DHWCtrl_FlashRead_t;
627 #ifdef BRP_SUPPORT_LEGACY_METHODS 630 brp_errcode brp_DHWCtrl_FlashRead(brp_DHWCtrl_FlashRead_t params);
638 } brp_DHWCtrl_FlashWrite_t;
649 #ifdef BRP_SUPPORT_LEGACY_METHODS 650 brp_errcode brp_DHWCtrl_FlashWrite(
brp_protocol protocol,
unsigned _input_Index,
unsigned _input_Sector,
brp_buf _input_Data,
size_t _input_Data_len);
652 brp_errcode brp_DHWCtrl_FlashWrite(brp_DHWCtrl_FlashWrite_t params);
659 } brp_DHWCtrl_FlashErase_t;
669 #ifdef BRP_SUPPORT_LEGACY_METHODS 670 brp_errcode brp_DHWCtrl_FlashErase(
brp_protocol protocol,
unsigned _input_Index,
unsigned _input_Sector,
unsigned _input_Count);
672 brp_errcode brp_DHWCtrl_FlashErase(brp_DHWCtrl_FlashErase_t params);
676 brp_DHWCtrlPinMapEntry* PinMap;
678 unsigned PeripheralIndex;
679 brp_DHWCtrlSpiSettings Settings;
680 } brp_DHWCtrl_SpiActivate_t;
691 #ifdef BRP_SUPPORT_LEGACY_METHODS 692 brp_errcode brp_DHWCtrl_SpiActivate(
brp_protocol protocol, brp_DHWCtrlPinMapEntry* _input_PinMap,
size_t _input_PinMap_len,
unsigned _input_PeripheralIndex, brp_DHWCtrlSpiSettings _input_Settings);
694 brp_errcode brp_DHWCtrl_SpiActivate(brp_DHWCtrl_SpiActivate_t params);
699 } brp_DHWCtrl_SpiDeactivate_t;
707 #ifdef BRP_SUPPORT_LEGACY_METHODS 710 brp_errcode brp_DHWCtrl_SpiDeactivate(brp_DHWCtrl_SpiDeactivate_t params);
720 } brp_DHWCtrl_SpiTransfer_t;
733 #ifdef BRP_SUPPORT_LEGACY_METHODS 736 brp_errcode brp_DHWCtrl_SpiTransfer(brp_DHWCtrl_SpiTransfer_t params);
740 brp_DHWCtrlPeripheralCategory Category;
741 brp_DHWCtrlPinMapEntry* PinMap;
746 } brp_DHWCtrl_ListPeripherals_t;
759 #ifdef BRP_SUPPORT_LEGACY_METHODS 760 brp_errcode brp_DHWCtrl_ListPeripherals(
brp_protocol protocol, brp_DHWCtrlPeripheralCategory _input_Category, brp_DHWCtrlPinMapEntry* _input_PinMap,
size_t _input_PinMap_len,
unsigned** Indices,
size_t* Indices_len,
brp_mempool *mempool);
762 brp_errcode brp_DHWCtrl_ListPeripherals(brp_DHWCtrl_ListPeripherals_t params);
764 #endif // BALTECH_SDK_INTERNAL unsigned int brp_errcode
This type is used library-wide for passing error codes in the return value of functions.
struct brp_protocol_t * brp_protocol
This is a generic handle of a protocol.
struct brp_mempool_object_t * brp_mempool
mempool handle.
unsigned char * brp_buf
represents a pointer to a protocol data buffer.