Skip to content

Commit

Permalink
1. Modify the following interfaces to fix stack corrupted if user pas…
Browse files Browse the repository at this point in the history
…s the parameter, rxbuf_size not correctly.

   I3C_ErrCode_Enum api_I3C_Master_Insert_Task_ENTDAA(__u16 *rxbuf_size, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF)
   I3C_ErrCode_Enum api_I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_size, __u16 *rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF)
   I3C_ErrCode_Enum I3C_Master_Insert_Task_ENTDAA(__u16 *rxbuf_size, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF)
   I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_size, __u16 *rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF)
   I3C_ErrCode_Enum I3C_Master_Insert_Task_EVENT(__u16 *rxbuf_size, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF)

2. Enable CHANDLED for slave interrupt

3. Add I3C_CTRL_EVENT_Enum definition

4. update sample code in tests/boards/npcm400f_evb
  • Loading branch information
shsu committed Jan 8, 2024
1 parent 5eaa6b5 commit 768f2f0
Show file tree
Hide file tree
Showing 11 changed files with 400 additions and 218 deletions.
443 changes: 284 additions & 159 deletions drivers/i3c/i3c_npcm4xx.c

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions drivers/i3c/npcm4xx/api_i3c.c
Original file line number Diff line number Diff line change
Expand Up @@ -443,7 +443,7 @@ I3C_TASK_INFO_t *api_I3C_Slave_Create_Task(I3C_TRANSFER_PROTOCOL_Enum Protocol,
callback, PortId, bHIF);
}

I3C_ErrCode_Enum api_I3C_Master_Insert_Task_ENTDAA(__u16 rxbuf_size, __u8 *rxbuf, __u32 Baudrate,
I3C_ErrCode_Enum api_I3C_Master_Insert_Task_ENTDAA(__u16 *rxbuf_size, __u8 *rxbuf, __u32 Baudrate,
__u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy,
_Bool bHIF)
{
Expand All @@ -468,7 +468,7 @@ I3C_ErrCode_Enum api_I3C_Master_Insert_Task_CCCw(__u8 CCC, __u8 HSize, __u16 buf
}

I3C_ErrCode_Enum api_I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_size,
__u16 rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout,
__u16 *rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout,
ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF)
{
return I3C_Master_Insert_Task_CCCr(CCC, HSize, txbuf_size, rxbuf_size, txbuf, rxbuf,
Expand Down
4 changes: 2 additions & 2 deletions drivers/i3c/npcm4xx/api_i3c.h
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ extern I3C_TASK_INFO_t *api_I3C_Slave_Create_Task(I3C_TRANSFER_PROTOCOL_Enum Pro
__u16 *pWrCnt, __u16 *pRdCnt, __u8 *WrBuf, __u8 *RdBuf, __u32 Timeout,
ptrI3C_RetFunc callback, __u8 PortId, _Bool bHIF);

extern I3C_ErrCode_Enum api_I3C_Master_Insert_Task_ENTDAA(__u16 rxbuf_size, __u8 *rxbuf,
extern I3C_ErrCode_Enum api_I3C_Master_Insert_Task_ENTDAA(__u16 *rxbuf_size, __u8 *rxbuf,
__u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId,
I3C_TASK_POLICY_Enum Policy, _Bool bHIF);
extern I3C_ErrCode_Enum api_I3C_Master_Insert_Task_CCCb(__u8 CCC, __u16 buf_size, __u8 *buf,
Expand All @@ -83,7 +83,7 @@ extern I3C_ErrCode_Enum api_I3C_Master_Insert_Task_CCCw(__u8 CCC, __u8 HSize, __
__u8 *buf, __u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId,
I3C_TASK_POLICY_Enum Policy, _Bool bHIF);
extern I3C_ErrCode_Enum api_I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_size,
__u16 rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout,
__u16 *rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout,
ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF);

extern I3C_ErrCode_Enum api_ValidateBuffer(I3C_TRANSFER_PROTOCOL_Enum Protocol, __u8 Address,
Expand Down
62 changes: 40 additions & 22 deletions drivers/i3c/npcm4xx/i3c_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1085,6 +1085,7 @@ void I3C_CCCb_RSTDAA(I3C_BUS_INFO_t *pBus)
void I3C_CCCb_ENTDAA(I3C_BUS_INFO_t *pBus)
{
I3C_DEVICE_INFO_t *pDevice;
uint16_t rxLen;

if (pBus == NULL) {
return;
Expand All @@ -1094,8 +1095,9 @@ void I3C_CCCb_ENTDAA(I3C_BUS_INFO_t *pBus)
return;
}

rxLen = 63;
pDevice = pBus->pCurrentMaster;
I3C_Master_Insert_Task_ENTDAA(63, NULL, I3C_TRANSFER_SPEED_I2C_1MHZ, TIMEOUT_TYPICAL,
I3C_Master_Insert_Task_ENTDAA(&rxLen, NULL, I3C_TRANSFER_SPEED_I2C_1MHZ, TIMEOUT_TYPICAL,
I3C_Master_Callback, pDevice->port, I3C_TASK_POLICY_APPEND_LAST, NOT_HIF);
}

Expand Down Expand Up @@ -2930,7 +2932,7 @@ I3C_ErrCode_Enum InsertTaskNode(I3C_DEVICE_INFO_t *pDevice,
* @return I3C_ERR_OK, if the task insert successfully
*/
/*------------------------------------------------------------------------------*/
I3C_ErrCode_Enum I3C_Master_Insert_Task_ENTDAA(__u16 rxbuf_size, __u8 *rxbuf,
I3C_ErrCode_Enum I3C_Master_Insert_Task_ENTDAA(__u16 *rxbuf_size, __u8 *rxbuf,
__u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId,
I3C_TASK_POLICY_Enum Policy, _Bool bHIF)
{
Expand All @@ -2940,19 +2942,25 @@ I3C_ErrCode_Enum I3C_Master_Insert_Task_ENTDAA(__u16 rxbuf_size, __u8 *rxbuf,
__u16 RxLen;
I3C_ErrCode_Enum result;

if (rxbuf_size < 9) {
if (rxbuf_size == NULL) {
return I3C_ERR_PARAMETER_INVALID;
}

if ((bHIF == IS_HIF) && (rxbuf == NULL)) {
if (*rxbuf_size < 9) {
return I3C_ERR_PARAMETER_INVALID;
}

if ((rxbuf_size == NULL) && (rxbuf == NULL)) {
return I3C_ERR_PARAMETER_INVALID;
}

TxBuf[0] = CCC_BROADCAST_ENTDAA;
TxLen = 1;
RxLen = (rxbuf_size / 9) * 9;
RxLen = (*rxbuf_size / 9) * 9;
*rxbuf_size = RxLen;

pNewTaskInfo = I3C_Master_Create_Task(I3C_TRANSFER_PROTOCOL_ENTDAA, 0, TxLen,
&TxLen, &RxLen, TxBuf, rxbuf, Baudrate, Timeout, I3C_Master_Callback, PortId,
&TxLen, rxbuf_size, TxBuf, rxbuf, Baudrate, Timeout, I3C_Master_Callback, PortId,
Policy, bHIF);

if (pNewTaskInfo == NULL) {
Expand Down Expand Up @@ -3180,7 +3188,7 @@ I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCw(__u8 CCC, __u8 HSize, __u16 buf_siz
*/
/*------------------------------------------------------------------------------*/
I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_size,
__u16 rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout,
__u16 *rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate, __u32 Timeout,
ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF)
{
I3C_TASK_INFO_t *pNewTaskInfo;
Expand All @@ -3192,6 +3200,14 @@ I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_s
__u8 fmt = 0;
__u16 dev_count;

if (rxbuf_size == NULL) {
return I3C_ERR_PARAMETER_INVALID;
}

if (rxbuf == NULL) {
return I3C_ERR_PARAMETER_INVALID;
}

if (HSize < 1) {
return I3C_ERR_PARAMETER_INVALID;
}
Expand All @@ -3208,16 +3224,16 @@ I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_s
return I3C_ERR_PARAMETER_INVALID;
}

if (rxbuf_size == 0) {
if (*rxbuf_size == 0) {
return I3C_ERR_PARAMETER_INVALID;
}

if (rxbuf_size > 64) {
if (*rxbuf_size > 64) {
return I3C_ERR_PARAMETER_INVALID;
}

dev_count = txbuf_size - (HSize - 1);
if (dev_count > rxbuf_size) {
if (dev_count > *rxbuf_size) {
return I3C_ERR_PARAMETER_INVALID;
}

Expand Down Expand Up @@ -3251,31 +3267,31 @@ I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_s
} else if (TxBuf[1] == 0x91) {
fmt = 2;
} else {
fmt = rxbuf_size / dev_count;
fmt = *rxbuf_size / dev_count;
}
} else if (CCC == CCC_DIRECT_GETMXDS) {
if (HSize == 1) {
fmt = 5;
} else if (TxBuf[1] == 0x91) {
fmt = 1;
} else {
fmt = rxbuf_size / dev_count;
fmt = *rxbuf_size / dev_count;
}
} else if (CCC == CCC_DIRECT_GETCAPS) {
if (HSize == 1) {
fmt = 4;
} else {
fmt = rxbuf_size / dev_count;
fmt = *rxbuf_size / dev_count;
}
}

if ((dev_count * fmt) < rxbuf_size) {
if ((dev_count * fmt) < *rxbuf_size) {
return I3C_ERR_PARAMETER_INVALID;
}
RxLen = rxbuf_size;
RxLen = *rxbuf_size;

pNewTaskInfo = I3C_Master_Create_Task(I3C_TRANSFER_PROTOCOL_CCCr, fmt, HSize,
&TxLen, &RxLen, TxBuf, rxbuf, Baudrate, Timeout, callback, PortId, Policy, bHIF);
pNewTaskInfo = I3C_Master_Create_Task(I3C_TRANSFER_PROTOCOL_CCCr, fmt, HSize, &TxLen,
rxbuf_size, TxBuf, rxbuf, Baudrate, Timeout, callback, PortId, Policy, bHIF);

if (pNewTaskInfo == NULL) {
return I3C_ERR_OUT_OF_MEMORY;
Expand Down Expand Up @@ -3306,25 +3322,27 @@ I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize, __u16 txbuf_s
* @return I3C_ERR_OK, if the task insert successfully
*/
/*------------------------------------------------------------------------------*/
I3C_ErrCode_Enum I3C_Master_Insert_Task_EVENT(__u16 rxbuf_size, __u8 *rxbuf, __u32 Baudrate,
I3C_ErrCode_Enum I3C_Master_Insert_Task_EVENT(__u16 *rxbuf_size, __u8 *rxbuf, __u32 Baudrate,
__u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy,
_Bool bHIF)
{
I3C_TASK_INFO_t *pNewTaskInfo;
__u16 TxLen;
__u16 RxLen;
I3C_ErrCode_Enum result;

if ((bHIF == IS_HIF) && (rxbuf == NULL)) {
if (rxbuf_size == NULL) {
return I3C_ERR_PARAMETER_INVALID;
}

if ((*rxbuf_size == 0) && (rxbuf == NULL)) {
return I3C_ERR_PARAMETER_INVALID;
}

TxLen = 0;

/* ibi payload should not more than 255 byte specified in GETMRL if supported */
RxLen = rxbuf_size;
pNewTaskInfo = I3C_Master_Create_Task(I3C_TRANSFER_PROTOCOL_EVENT, I3C_BROADCAST_ADDR, 0,
&TxLen, &RxLen, NULL, rxbuf, Baudrate, Timeout, callback, PortId, Policy, bHIF);
&TxLen, rxbuf_size, NULL, rxbuf, Baudrate, Timeout, callback, PortId, Policy, bHIF);

if (pNewTaskInfo == NULL) {
return I3C_ERR_OUT_OF_MEMORY;
Expand Down
6 changes: 3 additions & 3 deletions drivers/i3c/npcm4xx/i3c_core.h
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ extern I3C_ErrCode_Enum InsertTaskNode(I3C_DEVICE_INFO_t *pDevice,
I3C_TRANSFER_TASK_t *pNewTask, __u8 bType);

/* Sample to create master task and might be used in the driver */
extern I3C_ErrCode_Enum I3C_Master_Insert_Task_ENTDAA(__u16 rxbuf_size, __u8 *rxbuf,
extern I3C_ErrCode_Enum I3C_Master_Insert_Task_ENTDAA(__u16 *rxbuf_size, __u8 *rxbuf,
__u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId,
I3C_TASK_POLICY_Enum Policy, _Bool bHIF);
extern I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCb(__u8 CCC, __u16 buf_size, __u8 *buf,
Expand All @@ -138,10 +138,10 @@ extern I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCw(__u8 CCC, __u8 HSize,
__u16 buf_size, __u8 *buf, __u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback,
__u8 PortId, I3C_TASK_POLICY_Enum Policy, _Bool bHIF);
extern I3C_ErrCode_Enum I3C_Master_Insert_Task_CCCr(__u8 CCC, __u8 HSize,
__u16 txbuf_size, __u16 rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate,
__u16 txbuf_size, __u16 *rxbuf_size, __u8 *txbuf, __u8 *rxbuf, __u32 Baudrate,
__u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId, I3C_TASK_POLICY_Enum Policy,
_Bool bHIF);
extern I3C_ErrCode_Enum I3C_Master_Insert_Task_EVENT(__u16 rxbuf_size, __u8 *rxbuf,
extern I3C_ErrCode_Enum I3C_Master_Insert_Task_EVENT(__u16 *rxbuf_size, __u8 *rxbuf,
__u32 Baudrate, __u32 Timeout, ptrI3C_RetFunc callback, __u8 PortId,
I3C_TASK_POLICY_Enum Policy, _Bool bHIF);

Expand Down
7 changes: 7 additions & 0 deletions drivers/i3c/npcm4xx/i3c_drv.h
Original file line number Diff line number Diff line change
Expand Up @@ -1118,6 +1118,13 @@ enum I3C_CONFIG_SLVENA_Enum {
#define I3C_CTRL_EVENT(x) (((uint32_t)(((uint32_t)(x)) \
<< I3C_CTRL_EVENT_SHIFT)) & I3C_CTRL_EVENT_MASK)

enum I3C_CTRL_EVENT_Enum {
I3C_CTRL_EVENT_None = 0,
I3C_CTRL_EVENT_IBI = 1,
I3C_CTRL_EVENT_MstReq = 2,
I3C_CTRL_EVENT_HotJoin = 3,
};

/* INTSET */
#define I3C_INTSET_EVENT_MASK (0x40000U)
#define I3C_INTSET_EVENT_SHIFT (18U)
Expand Down
50 changes: 35 additions & 15 deletions drivers/i3c/npcm4xx/i3c_master.c
Original file line number Diff line number Diff line change
Expand Up @@ -1223,12 +1223,17 @@ void I3C_Master_New_Request(__u32 Parm)
I3C_TRANSFER_TASK_t *pTask;
I3C_TASK_INFO_t *pTaskInfo;

__u16 rxLen;

if (Parm >= I3C_PORT_MAX) {
return;
}

rxLen = IBI_PAYLOAD_SIZE_MAX;

port = (__u8)Parm;
I3C_Master_Insert_Task_EVENT(IBI_PAYLOAD_SIZE_MAX, NULL, I3C_TRANSFER_SPEED_SDR_IBI,
/* must use NOT_HIF */
I3C_Master_Insert_Task_EVENT(&rxLen, NULL, I3C_TRANSFER_SPEED_SDR_IBI,
TIMEOUT_TYPICAL, I3C_Master_Callback, port, I3C_TASK_POLICY_INSERT_FIRST, NOT_HIF);

pBus = Get_Bus_From_Port(port);
Expand Down Expand Up @@ -1359,6 +1364,8 @@ void I3C_Master_IBIACK(__u32 Parm)
uint8_t ibiAddress;
I3C_DEVICE_INFO_SHORT_t *pSlvDev;

__u16 rxLen;

if (Parm == 0) {
return;
}
Expand All @@ -1383,7 +1390,8 @@ void I3C_Master_IBIACK(__u32 Parm)
/* Insert Event task and assume event task has running to
* restore IBI Type and IBI address
*/
I3C_Master_Insert_Task_EVENT(IBI_PAYLOAD_SIZE_MAX, NULL,
rxLen = IBI_PAYLOAD_SIZE_MAX;
I3C_Master_Insert_Task_EVENT(&rxLen, NULL,
I3C_TRANSFER_SPEED_SDR_IBI, TIMEOUT_TYPICAL, I3C_Master_Callback,
port, I3C_TASK_POLICY_INSERT_FIRST, NOT_HIF);

Expand Down Expand Up @@ -1436,7 +1444,9 @@ void I3C_Master_Insert_GETACCMST_After_IbiAckMR(__u32 Parm)
I3C_DEVICE_INFO_SHORT_t *pDev;
I3C_TRANSFER_FRAME_t *pFrame;
__u8 wrBuf[2];
__u8 *rdBuf;
__u8 rdBuf[2]; /* addr + pec */
__u16 rxLen;
I3C_ErrCode_Enum res;

if (Parm == 0) {
return;
Expand All @@ -1454,7 +1464,6 @@ void I3C_Master_Insert_GETACCMST_After_IbiAckMR(__u32 Parm)
}
port = pTaskInfo->Port;


hal_I3C_Ack_IBI_Without_MDB(port);
hal_I3C_Disable_Master_RX_DMA(port);

Expand All @@ -1473,17 +1482,26 @@ void I3C_Master_Insert_GETACCMST_After_IbiAckMR(__u32 Parm)
return;
}

rdBuf = hal_I3C_MemAlloc(1);
rxLen = 1;

wrBuf[0] = ibiAddress;
I3C_Master_Insert_Task_CCCr(CCC_DIRECT_GETACCMST, 1, 1, 1, wrBuf, rdBuf,
I3C_TRANSFER_SPEED_SDR_IBI, TIMEOUT_TYPICAL,
I3C_Master_Callback, port, I3C_TASK_POLICY_INSERT_FIRST, IS_HIF);

pTask = pBus->pCurrentMaster->pTaskListHead;
pTaskInfo = pTask->pTaskInfo;
pFrame = &pTask->pFrameList[pTask->frame_idx];
pFrame->flag |= I3C_TRANSFER_REPEAT_START;
I3C_Master_Start_Request((uint32_t) pTaskInfo);
/* don't change NOT_HIF to IS_HIF */
/* We should malloc rdBuf and rxLen for IS_HIF if needed */
res = I3C_Master_Insert_Task_CCCr(CCC_DIRECT_GETACCMST, 1, 1, &rxLen, wrBuf,
rdBuf, I3C_TRANSFER_SPEED_SDR_IBI, TIMEOUT_TYPICAL,
I3C_Master_Callback, port, I3C_TASK_POLICY_INSERT_FIRST, NOT_HIF);

if (res == I3C_ERR_OK) {
pTask = pBus->pCurrentMaster->pTaskListHead;
pTaskInfo = pTask->pTaskInfo;
pFrame = &pTask->pFrameList[pTask->frame_idx];
pFrame->flag |= I3C_TRANSFER_REPEAT_START;
I3C_Master_Start_Request((uint32_t) pTaskInfo);
}

/* rdBuf[2] and rxLen might release here */
/* return data should be saved in variables allocated in I3C_Master_Create_Task */
}

/*------------------------------------------------------------------------------*/
Expand All @@ -1498,7 +1516,7 @@ void I3C_Master_Insert_ENTDAA_After_IbiAckHJ(__u32 Parm)
I3C_TRANSFER_TASK_t *pTask;
I3C_TASK_INFO_t *pTaskInfo;
__u8 port;

__u16 rxLen;

if (Parm == 0) {
return;
Expand Down Expand Up @@ -1528,7 +1546,9 @@ void I3C_Master_Insert_ENTDAA_After_IbiAckHJ(__u32 Parm)
* Can't use RESTART + ENTDAA, that will cause MERRWARN.INVREQ
*/
I3C_Master_Stop_Request((__u32)pTask);
I3C_Master_Insert_Task_ENTDAA(63, NULL, I3C_TRANSFER_SPEED_SDR_1MHZ, TIMEOUT_TYPICAL,

rxLen = 63;
I3C_Master_Insert_Task_ENTDAA(&rxLen, NULL, I3C_TRANSFER_SPEED_SDR_1MHZ, TIMEOUT_TYPICAL,
NULL, port, I3C_TASK_POLICY_INSERT_FIRST, NOT_HIF);
}

Expand Down
8 changes: 7 additions & 1 deletion tests/boards/npcm400f_evb/boards/npcm400f_evb.conf
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,10 @@ CONFIG_I3C_SLAVE=y
CONFIG_I3C_SLAVE_MQUEUE=y

#CONFIG_TIMESLICING=y
#CONFIG_TIMESLICE_SIZE=1
#CONFIG_TIMESLICE_SIZE=1


#CONFIG_THREAD_ANALYZER=y
#CONFIG_THREAD_ANALYZER_USE_PRINTK=y
#CONFIG_THREAD_ANALYZER_AUTO=y
#CONFIG_THREAD_ANALYZER_AUTO_INTERVAL=5
2 changes: 1 addition & 1 deletion tests/boards/npcm400f_evb/prj.conf
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ CONFIG_HEAP_MEM_POOL_SIZE=65536
#CONFIG_STACK_SENTINEL=y
CONFIG_LOG=y

CONFIG_THREAD_ANALYZER=y
#CONFIG_THREAD_ANALYZER=y

# Following configuration declare for rand32
CONFIG_ENTROPY_GENERATOR=y
Expand Down
Loading

0 comments on commit 768f2f0

Please sign in to comment.