Skip to content

Commit 5cac701

Browse files
eRPC updates 07/2023
-- LPI2C, LPSPI transports added -- Use MU_SendMsg blocking call in MU transport -- Increased the StaticQueue in rpmsg_lite_transport - could be 2U * ERPC_DEFAULT_BUFFERS_COUNT for zero copy cases -- Aligned UartTransport::init in erpc_uart_cmsis_transport.cpp to changes in driver that removes ARM_USART_CONTROL_TX/ARM_USART_CONTROL_RX controls -- Aligned retarget_cpp_streamed_io.c to latest used MDK 5.38a version -- Avoid using argc and argv main function parameters in erpc Googletest based projects
1 parent e8e2e63 commit 5cac701

24 files changed

+848
-104
lines changed

doxygen/Doxyfile.erpc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ PROJECT_NAME = "eRPC API Reference"
3838
# could be handy for archiving the generated documentation or if some version
3939
# control system is used.
4040

41-
PROJECT_NUMBER = "Rev. 1.10.0"
41+
PROJECT_NUMBER = "Rev. 1.11.0"
4242

4343
# Using the PROJECT_BRIEF tag one can provide an optional one line description
4444
# for a project that appears at the top of each page and should give viewer a

doxygen/Doxyfile.erpcgen

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ PROJECT_NAME = "eRPC Generator (erpcgen)"
3838
# could be handy for archiving the generated documentation or if some version
3939
# control system is used.
4040

41-
PROJECT_NUMBER = "Rev. 1.10.0"
41+
PROJECT_NUMBER = "Rev. 1.11.0"
4242

4343
# Using the PROJECT_BRIEF tag one can provide an optional one line description
4444
# for a project that appears at the top of each page and should give viewer a

erpc_c/infra/erpc_version.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
* Copyright (c) 2016, Freescale Semiconductor, Inc.
3-
* Copyright 2016-2022 NXP
3+
* Copyright 2016-2023 NXP
44
* All rights reserved.
55
*
66
*
@@ -20,9 +20,9 @@
2020
////////////////////////////////////////////////////////////////////////////////
2121

2222
//! @brief String version of eRPC.
23-
#define ERPC_VERSION "1.10.0"
23+
#define ERPC_VERSION "1.11.0"
2424
//! @brief Integer version of eRPC.
25-
#define ERPC_VERSION_NUMBER 11000
25+
#define ERPC_VERSION_NUMBER 11100
2626

2727
/*! @} */
2828

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
/*
2+
* Copyright 2022-2023 NXP
3+
* All rights reserved.
4+
*
5+
*
6+
* SPDX-License-Identifier: BSD-3-Clause
7+
*/
8+
9+
#include "erpc_lpi2c_slave_transport.hpp"
10+
#include "erpc_manually_constructed.hpp"
11+
#include "erpc_transport_setup.h"
12+
13+
using namespace erpc;
14+
15+
////////////////////////////////////////////////////////////////////////////////
16+
// Variables
17+
////////////////////////////////////////////////////////////////////////////////
18+
19+
static ManuallyConstructed<LPI2cSlaveTransport> s_transport;
20+
21+
////////////////////////////////////////////////////////////////////////////////
22+
// Code
23+
////////////////////////////////////////////////////////////////////////////////
24+
25+
erpc_transport_t erpc_transport_lpi2c_slave_init(void *baseAddr, uint32_t baudRate, uint32_t srcClock_Hz)
26+
{
27+
s_transport.construct(reinterpret_cast<LPI2C_Type *>(baseAddr), baudRate, srcClock_Hz);
28+
(void)s_transport->init();
29+
return reinterpret_cast<erpc_transport_t>(s_transport.get());
30+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
/*
2+
* Copyright 2022-2023 NXP
3+
*
4+
* SPDX-License-Identifier: BSD-3-Clause
5+
*/
6+
7+
#include "erpc_lpspi_slave_transport.hpp"
8+
#include "erpc_manually_constructed.hpp"
9+
#include "erpc_transport_setup.h"
10+
11+
using namespace erpc;
12+
13+
////////////////////////////////////////////////////////////////////////////////
14+
// Variables
15+
////////////////////////////////////////////////////////////////////////////////
16+
17+
ERPC_MANUALLY_CONSTRUCTED(LPSpiSlaveTransport, s_transport);
18+
19+
////////////////////////////////////////////////////////////////////////////////
20+
// Code
21+
////////////////////////////////////////////////////////////////////////////////
22+
23+
erpc_transport_t erpc_transport_lpspi_slave_init(void *baseAddr, uint32_t baudRate, uint32_t srcClock_Hz)
24+
{
25+
s_transport.construct(reinterpret_cast<LPSPI_Type *>(baseAddr), baudRate, srcClock_Hz);
26+
(void)s_transport->init();
27+
return reinterpret_cast<erpc_transport_t>(s_transport.get());
28+
}

erpc_c/setup/erpc_transport_setup.h

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
* Copyright (c) 2014-2016, Freescale Semiconductor, Inc.
3-
* Copyright 2016-2021 NXP
3+
* Copyright 2016-2022 NXP
44
* Copyright 2019 ACRIOS Systems s.r.o.
55
* All rights reserved.
66
*
@@ -132,6 +132,23 @@ erpc_transport_t erpc_transport_dspi_master_init(void *baseAddr, uint32_t baudRa
132132
erpc_transport_t erpc_transport_dspi_slave_init(void *baseAddr, uint32_t baudRate, uint32_t srcClock_Hz);
133133
//@}
134134

135+
//! @name LPSPI transport setup
136+
//@{
137+
138+
/*!
139+
* @brief Create a LPSPI slave transport.
140+
*
141+
* Create LPSPI slave transport instance, to be used at slave core.
142+
*
143+
* @param[in] baseAddr Base address of LPSPI peripheral used in this transport layer.
144+
* @param[in] baudRate LPSPI baud rate.
145+
* @param[in] srcClock_Hz LPSPI source clock in Hz.
146+
*
147+
* @return Return NULL or erpc_transport_t instance pointer.
148+
*/
149+
erpc_transport_t erpc_transport_lpspi_slave_init(void *baseAddr, uint32_t baudRate, uint32_t srcClock_Hz);
150+
//@}
151+
135152
//! @name SPIdev transport setup
136153
//@{
137154

@@ -373,6 +390,23 @@ erpc_transport_t erpc_transport_usb_cdc_init(void *serialHandle, void *serialCon
373390
erpc_transport_t erpc_transport_i2c_slave_init(void *baseAddr, uint32_t baudRate, uint32_t srcClock_Hz);
374391
//@}
375392

393+
//! @name LPI2C transport setup
394+
//@{
395+
396+
/*!
397+
* @brief Create an LPI2C slave transport.
398+
*
399+
* Create LPI2C slave transport instance, to be used at slave core.
400+
*
401+
* @param[in] baseAddr Base address of LPI2C peripheral used in this transport layer.
402+
* @param[in] baudRate SPI baud rate.
403+
* @param[in] srcClock_Hz LPI2C source clock in Hz.
404+
*
405+
* @return Return NULL or erpc_transport_t instance pointer.
406+
*/
407+
erpc_transport_t erpc_transport_lpi2c_slave_init(void *baseAddr, uint32_t baudRate, uint32_t srcClock_Hz);
408+
//@}
409+
376410
//@}
377411

378412
#ifdef __cplusplus

erpc_c/transports/erpc_i2c_slave_transport.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2021 NXP
2+
* Copyright 2021-2023 NXP
33
* All rights reserved.
44
*
55
*
@@ -9,7 +9,7 @@
99
#ifndef _EMBEDDED_RPC__I2C_SLAVE_TRANSPORT_H_
1010
#define _EMBEDDED_RPC__I2C_SLAVE_TRANSPORT_H_
1111

12-
#include "<cstdlib>"
12+
#include <cstdlib>
1313
#include "erpc_config_internal.h"
1414
#if ERPC_THREADS
1515
#include "erpc_threading.h"

0 commit comments

Comments
 (0)