|
@@ -16,8 +16,8 @@
|
|
* @param[in] writeFct function pointer to output function
|
|
* @param[in] writeFct function pointer to output function
|
|
* @return errorcode #SHELLMATTA_OK
|
|
* @return errorcode #SHELLMATTA_OK
|
|
*/
|
|
*/
|
|
-shellmatta_retCode_t shellmatta_init_transport_inst(shellmatta_transport_layer_t *transportLayer,
|
|
|
|
- shellmatta_write_t writeFct)
|
|
|
|
|
|
+shellmatta_retCode_t shellmatta_transport_init( shellmatta_transport_layer_t *transportLayer,
|
|
|
|
+ shellmatta_write_t writeFct)
|
|
{
|
|
{
|
|
memset(transportLayer, 0u, sizeof(shellmatta_transport_layer_t));
|
|
memset(transportLayer, 0u, sizeof(shellmatta_transport_layer_t));
|
|
transportLayer->originalWrite = writeFct;
|
|
transportLayer->originalWrite = writeFct;
|
|
@@ -30,7 +30,7 @@ shellmatta_retCode_t shellmatta_init_transport_inst(shellmatta_transport_layer_t
|
|
* @param[in, out] transportLayer transport layer instance to work on
|
|
* @param[in, out] transportLayer transport layer instance to work on
|
|
* @return errorcode #SHELLMATTA_OK
|
|
* @return errorcode #SHELLMATTA_OK
|
|
*/
|
|
*/
|
|
-shellmatta_retCode_t shellmatta_reset_transport(shellmatta_transport_layer_t *transportLayer)
|
|
|
|
|
|
+shellmatta_retCode_t shellmatta_transport_reset(shellmatta_transport_layer_t *transportLayer)
|
|
{
|
|
{
|
|
uint8_t h2s_sequenceCnt = transportLayer->h2s_sequenceCnt;
|
|
uint8_t h2s_sequenceCnt = transportLayer->h2s_sequenceCnt;
|
|
uint8_t s2h_sequenceCnt = transportLayer->s2h_sequenceCnt;
|
|
uint8_t s2h_sequenceCnt = transportLayer->s2h_sequenceCnt;
|
|
@@ -49,11 +49,16 @@ shellmatta_retCode_t shellmatta_reset_transport(shellmatta_transport_layer_t *tr
|
|
* @return errorcode #SHELLMATTA_OK\n
|
|
* @return errorcode #SHELLMATTA_OK\n
|
|
* #SHELLMATTA_ERROR in case of crc error
|
|
* #SHELLMATTA_ERROR in case of crc error
|
|
*/
|
|
*/
|
|
-shellmatta_retCode_t shellmatta_handle_transport_fsm(shellmatta_transport_layer_t *transportLayer,
|
|
|
|
- char *data)
|
|
|
|
|
|
+shellmatta_retCode_t shellmatta_transport_process(shellmatta_transport_layer_t *transportLayer,
|
|
|
|
+ char *data,
|
|
|
|
+ uint32_t *length)
|
|
{
|
|
{
|
|
shellmatta_retCode_t ret = SHELLMATTA_OK;
|
|
shellmatta_retCode_t ret = SHELLMATTA_OK;
|
|
|
|
|
|
|
|
+
|
|
|
|
+ //TODO
|
|
|
|
+ (void)length;
|
|
|
|
+
|
|
switch (transportLayer->state)
|
|
switch (transportLayer->state)
|
|
{
|
|
{
|
|
/* look for start of header */
|
|
/* look for start of header */
|
|
@@ -177,7 +182,7 @@ shellmatta_retCode_t shellmatta_handle_transport_fsm(shellmatta_transport_layer_
|
|
/* change packet type to response */
|
|
/* change packet type to response */
|
|
transportLayer->packetType = PACKET_SEQ_CNT_RESPOND;
|
|
transportLayer->packetType = PACKET_SEQ_CNT_RESPOND;
|
|
/* send out packet with no payload */
|
|
/* send out packet with no payload */
|
|
- shellmatta_write_transport(transportLayer, "", 0u);
|
|
|
|
|
|
+ shellmatta_transport_write(transportLayer, "", 0u);
|
|
break;
|
|
break;
|
|
|
|
|
|
case PACKET_SEQ_CNT_RESPOND:
|
|
case PACKET_SEQ_CNT_RESPOND:
|
|
@@ -256,7 +261,7 @@ shellmatta_retCode_t shellmatta_handle_transport_fsm(shellmatta_transport_layer_
|
|
* @param[in] data pointer to input data to process
|
|
* @param[in] data pointer to input data to process
|
|
* @return errorcode #SHELLMATTA_OK
|
|
* @return errorcode #SHELLMATTA_OK
|
|
*/
|
|
*/
|
|
-shellmatta_retCode_t shellmatta_write_transport(shellmatta_transport_layer_t *transportLayer,
|
|
|
|
|
|
+shellmatta_retCode_t shellmatta_transport_write(shellmatta_transport_layer_t *transportLayer,
|
|
const char* data,
|
|
const char* data,
|
|
uint32_t length)
|
|
uint32_t length)
|
|
{
|
|
{
|