Skip to content

Commit ae4b0d7

Browse files
committed
update rt1010 sdk version from 2.6 to 2.8
1 parent 8d56ff1 commit ae4b0d7

File tree

122 files changed

+8646
-6327
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

122 files changed

+8646
-6327
lines changed

sdk/devices/MIMXRT1011/MIMXRT1011_features.h

Lines changed: 51 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
/*
22
** ###################################################################
33
** Version: rev. 1.0, 2019-08-01
4-
** Build: b190910
4+
** Build: b200311
55
**
66
** Abstract:
77
** Chip specific module features.
88
**
99
** Copyright 2016 Freescale Semiconductor, Inc.
10-
** Copyright 2016-2019 NXP
10+
** Copyright 2016-2020 NXP
1111
** All rights reserved.
1212
**
1313
** SPDX-License-Identifier: BSD-3-Clause
@@ -132,11 +132,33 @@
132132

133133
/* AOI module features */
134134

135-
/* @brief Maximum value of AOI input mux. */
135+
/* @brief Maximum value of input mux. */
136136
#define FSL_FEATURE_AOI_MODULE_INPUTS (4)
137-
/* @brief Number of AOI events (related to number of registers AOI_BFCRT01n/AOI_BFCRT23n). */
137+
/* @brief Number of events related to number of registers AOIx_BFCRT01n/AOIx_BFCRT23n. */
138138
#define FSL_FEATURE_AOI_EVENT_COUNT (4)
139139

140+
/* CCM module features */
141+
142+
/* @brief Is affected by errata with ID 50235 (Incorrect clock setting for CAN affects by LPUART clock gate). */
143+
#define FSL_FEATURE_CCM_HAS_ERRATA_50235 (0)
144+
145+
/* DCDC module features */
146+
147+
/* @brief Has CTRL register (register CTRL0/1). */
148+
#define FSL_FEATURE_DCDC_HAS_CTRL_REG (0)
149+
/* @brief DCDC VDD output count. */
150+
#define FSL_FEATURE_DCDC_VDD_OUTPUT_COUNT (1)
151+
/* @brief Has no current alert function (register bit field REG0[CURRENT_ALERT_RESET]). */
152+
#define FSL_FEATURE_DCDC_HAS_NO_CURRENT_ALERT_FUNC (0)
153+
/* @brief Has switching converter differential mode (register bit field REG1[LOOPCTRL_EN_DF_HYST]). */
154+
#define FSL_FEATURE_DCDC_HAS_SWITCHING_CONVERTER_DIFFERENTIAL_MODE (0)
155+
/* @brief Has register bit field REG0[REG_DCDC_IN_DET]. */
156+
#define FSL_FEATURE_DCDC_HAS_REG0_DCDC_IN_DET (0)
157+
/* @brief Has no register bit field REG0[EN_LP_OVERLOAD_SNS]. */
158+
#define FSL_FEATURE_DCDC_HAS_NO_REG0_EN_LP_OVERLOAD_SNS (0)
159+
/* @brief Has register bit field REG3[REG_FBK_SEL]). */
160+
#define FSL_FEATURE_DCDC_HAS_REG3_FBK_SEL (0)
161+
140162
/* EDMA module features */
141163

142164
/* @brief Number of DMA channels (related to number of registers TCD, DCHPRI, bit fields ERQ[ERQn], EEI[EEIn], INT[INTn], ERR[ERRn], HRS[HRSn] and bit field widths ES[ERRCHN], CEEI[CEEI], SEEI[SEEI], CERQ[CERQ], SERQ[SERQ], CDNE[CDNE], SSRT[SSRT], CERR[CERR], CINT[CINT], TCDn_CITER_ELINKYES[LINKCH], TCDn_CSR[MAJORLINKCH], TCDn_BITER_ELINKYES[LINKCH]). (Valid only for eDMA modules.) */
@@ -339,12 +361,23 @@
339361

340362
/* OCOTP module features */
341363

342-
/* No feature definitions */
364+
/* @brief Has timing control, (register TIMING). */
365+
#define FSL_FEATURE_OCOTP_HAS_TIMING_CTRL (1)
366+
/* @brief Support lock eFuse word write lock, (CTRL[WORDLOCK]). */
367+
#define FSL_FEATURE_OCOTP_HAS_WORDLOCK (0)
368+
/* @brief Has status register. (Register HW_OCOTP_OUT_STATUS0). */
369+
#define FSL_FEATURE_OCOTP_HAS_STATUS (0)
343370

344371
/* OTFAD module features */
345372

346373
/* @brief OTFAD has Security Violation Mode (SVM) */
347374
#define FSL_FEATURE_OTFAD_HAS_SVM_MODE (1)
375+
/* @brief OTFAD has Key Blob Processing */
376+
#define FSL_FEATURE_OTFAD_HAS_KEYBLOB_PROCESSING (1)
377+
/* @brief OTFAD has interrupt request enable */
378+
#define FSL_FEATURE_OTFAD_HAS_HAS_IRQ_ENABLE (1)
379+
/* @brief OTFAD has Force Error */
380+
#define FSL_FEATURE_OTFAD_HAS_FORCE_ERR (1)
348381

349382
/* PIT module features */
350383

@@ -361,24 +394,12 @@
361394

362395
/* PWM module features */
363396

364-
/* @brief Number of each EflexPWM module channels (outputs). */
365-
#define FSL_FEATURE_PWM_CHANNEL_COUNT (12U)
366-
/* @brief Number of EflexPWM module A channels (outputs). */
367-
#define FSL_FEATURE_PWM_CHANNELA_COUNT (4U)
368-
/* @brief Number of EflexPWM module B channels (outputs). */
369-
#define FSL_FEATURE_PWM_CHANNELB_COUNT (4U)
370-
/* @brief Number of EflexPWM module X channels (outputs). */
371-
#define FSL_FEATURE_PWM_CHANNELX_COUNT (4U)
372-
/* @brief Number of each EflexPWM module compare channels interrupts. */
373-
#define FSL_FEATURE_PWM_CMP_INT_HANDLER_COUNT (4U)
374-
/* @brief Number of each EflexPWM module reload channels interrupts. */
375-
#define FSL_FEATURE_PWM_RELOAD_INT_HANDLER_COUNT (4U)
376-
/* @brief Number of each EflexPWM module capture channels interrupts. */
377-
#define FSL_FEATURE_PWM_CAP_INT_HANDLER_COUNT (1U)
378-
/* @brief Number of each EflexPWM module reload error channels interrupts. */
379-
#define FSL_FEATURE_PWM_RERR_INT_HANDLER_COUNT (1U)
380-
/* @brief Number of each EflexPWM module fault channels interrupts. */
381-
#define FSL_FEATURE_PWM_FAULT_INT_HANDLER_COUNT (1U)
397+
/* @brief If EflexPWM has module A channels (outputs). */
398+
#define FSL_FEATURE_PWM_HAS_CHANNELA (1)
399+
/* @brief If EflexPWM has module B channels (outputs). */
400+
#define FSL_FEATURE_PWM_HAS_CHANNELB (1)
401+
/* @brief If EflexPWM has module X channels (outputs). */
402+
#define FSL_FEATURE_PWM_HAS_CHANNELX (1)
382403
/* @brief Number of submodules in each EflexPWM module. */
383404
#define FSL_FEATURE_PWM_SUBMODULE_COUNT (4U)
384405

@@ -507,6 +528,13 @@
507528
/* @brief Number of endpoints supported */
508529
#define FSL_FEATURE_USBHS_ENDPT_COUNT (8)
509530

531+
/* USBPHY module features */
532+
533+
/* @brief USBPHY contain DCD analog module */
534+
#define FSL_FEATURE_USBPHY_HAS_DCD_ANALOG (0)
535+
/* @brief USBPHY has register TRIM_OVERRIDE_EN */
536+
#define FSL_FEATURE_USBPHY_HAS_TRIM_OVERRIDE_EN (0)
537+
510538
/* XBARA module features */
511539

512540
/* @brief Number of interrupt requests. */

sdk/devices/MIMXRT1011/cmsis_drivers/fsl_lpi2c_cmsis.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ extern ARM_DRIVER_I2C Driver_I2C6;
6565

6666
/* I2C Driver state flags */
6767
#define I2C_FLAG_UNINIT (0)
68-
#define I2C_FLAG_INIT (1 << 0)
69-
#define I2C_FLAG_POWER (1 << 1)
68+
#define I2C_FLAG_INIT (1 << 0)
69+
#define I2C_FLAG_POWER (1 << 1)
7070

7171
#endif /* _FSL_LPI2C_CMSIS_H_ */

sdk/devices/MIMXRT1011/cmsis_drivers/fsl_lpspi_cmsis.c

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
#if ((RTE_SPI0 && defined(LPSPI0)) || (RTE_SPI1 && defined(LPSPI1)) || (RTE_SPI2 && defined(LPSPI2)) || \
2929
(RTE_SPI3 && defined(LPSPI3)) || (RTE_SPI4 && defined(LPSPI4)) || (RTE_SPI5 && defined(LPSPI5)))
3030

31-
#define ARM_LPSPI_DRV_VERSION ARM_DRIVER_VERSION_MAJOR_MINOR(2, 1) /* driver version */
31+
#define ARM_LPSPI_DRV_VERSION ARM_DRIVER_VERSION_MAJOR_MINOR(2, 2) /* driver version */
3232

3333
/*
3434
* ARMCC does not support split the data section automatically, so the driver
@@ -572,10 +572,11 @@ static int32_t LPSPI_EdmaSend(const void *data, uint32_t num, cmsis_lpspi_edma_d
572572
int32_t ret;
573573
status_t status;
574574
lpspi_transfer_t xfer = {0};
575+
uint32_t datawidth = (lpspi->resource->base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT;
575576

576577
xfer.rxData = NULL;
577578
xfer.txData = (uint8_t *)data;
578-
xfer.dataSize = num;
579+
xfer.dataSize = num * ((datawidth + 8U) / 8U);
579580

580581
LPSPI_SetTransferConfigFlags(LPSPI_IsMaster(lpspi->resource->base), lpspi->resource->instance, &xfer);
581582

@@ -612,10 +613,11 @@ static int32_t LPSPI_EdmaReceive(void *data, uint32_t num, cmsis_lpspi_edma_driv
612613
int32_t ret;
613614
status_t status;
614615
lpspi_transfer_t xfer = {0};
616+
uint32_t datawidth = (lpspi->resource->base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT;
615617

616618
xfer.txData = NULL;
617619
xfer.rxData = (uint8_t *)data;
618-
xfer.dataSize = num;
620+
xfer.dataSize = num * ((datawidth + 8U) / 8U);
619621

620622
LPSPI_SetTransferConfigFlags(LPSPI_IsMaster(lpspi->resource->base), lpspi->resource->instance, &xfer);
621623

@@ -655,10 +657,11 @@ static int32_t LPSPI_EdmaTransfer(const void *data_out,
655657
int32_t ret;
656658
status_t status;
657659
lpspi_transfer_t xfer = {0};
660+
uint32_t datawidth = (lpspi->resource->base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT;
658661

659662
xfer.txData = (uint8_t *)data_out;
660663
xfer.rxData = (uint8_t *)data_in;
661-
xfer.dataSize = num;
664+
xfer.dataSize = num * ((datawidth + 8U) / 8U);
662665

663666
LPSPI_SetTransferConfigFlags(LPSPI_IsMaster(lpspi->resource->base), lpspi->resource->instance, &xfer);
664667

@@ -693,6 +696,7 @@ static uint32_t LPSPI_EdmaGetCount(cmsis_lpspi_edma_driver_state_t *lpspi)
693696
{
694697
uint32_t cnt;
695698
size_t bytes;
699+
uint32_t datawidth = (lpspi->resource->base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT;
696700

697701
if (LPSPI_IsMaster(lpspi->resource->base))
698702
{
@@ -706,6 +710,7 @@ static uint32_t LPSPI_EdmaGetCount(cmsis_lpspi_edma_driver_state_t *lpspi)
706710
EDMA_GetRemainingMajorLoopCount(lpspi->dmaResource->rxEdmaBase, lpspi->dmaResource->rxEdmaChannel);
707711
cnt = lpspi->handle->slaveHandle.totalByteCount - bytes;
708712
}
713+
cnt /= ((datawidth + 8U) / 8U);
709714
return cnt;
710715
}
711716

@@ -943,10 +948,11 @@ static int32_t LPSPI_InterruptSend(const void *data, uint32_t num, cmsis_lpspi_i
943948
int32_t ret;
944949
status_t status;
945950
lpspi_transfer_t xfer = {0};
951+
uint32_t datawidth = (lpspi->resource->base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT;
946952

947953
xfer.rxData = NULL;
948954
xfer.txData = (uint8_t *)data;
949-
xfer.dataSize = num;
955+
xfer.dataSize = num * ((datawidth + 8U) / 8U);
950956

951957
LPSPI_SetTransferConfigFlags(LPSPI_IsMaster(lpspi->resource->base), lpspi->resource->instance, &xfer);
952958

@@ -983,10 +989,11 @@ static int32_t LPSPI_InterruptReceive(void *data, uint32_t num, cmsis_lpspi_inte
983989
int32_t ret;
984990
status_t status;
985991
lpspi_transfer_t xfer = {0};
992+
uint32_t datawidth = (lpspi->resource->base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT;
986993

987994
xfer.txData = NULL;
988995
xfer.rxData = (uint8_t *)data;
989-
xfer.dataSize = num;
996+
xfer.dataSize = num * ((datawidth + 8U) / 8U);
990997

991998
LPSPI_SetTransferConfigFlags(LPSPI_IsMaster(lpspi->resource->base), lpspi->resource->instance, &xfer);
992999

@@ -1026,10 +1033,11 @@ static int32_t LPSPI_InterruptTransfer(const void *data_out,
10261033
int32_t ret;
10271034
status_t status;
10281035
lpspi_transfer_t xfer = {0};
1036+
uint32_t datawidth = (lpspi->resource->base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT;
10291037

10301038
xfer.txData = (uint8_t *)data_out;
10311039
xfer.rxData = (uint8_t *)data_in;
1032-
xfer.dataSize = num;
1040+
xfer.dataSize = num * ((datawidth + 8U) / 8U);
10331041

10341042
LPSPI_SetTransferConfigFlags(LPSPI_IsMaster(lpspi->resource->base), lpspi->resource->instance, &xfer);
10351043

@@ -1062,14 +1070,19 @@ static int32_t LPSPI_InterruptTransfer(const void *data_out,
10621070
}
10631071
static uint32_t LPSPI_InterruptGetCount(cmsis_lpspi_interrupt_driver_state_t *lpspi)
10641072
{
1073+
uint32_t cnt;
1074+
uint32_t datawidth = (lpspi->resource->base->TCR & LPSPI_TCR_FRAMESZ_MASK) >> LPSPI_TCR_FRAMESZ_SHIFT;
10651075
if (LPSPI_IsMaster(lpspi->resource->base))
10661076
{
1067-
return lpspi->handle->masterHandle.totalByteCount - lpspi->handle->masterHandle.rxRemainingByteCount;
1077+
cnt = lpspi->handle->masterHandle.totalByteCount - lpspi->handle->masterHandle.rxRemainingByteCount;
10681078
}
10691079
else
10701080
{
1071-
return lpspi->handle->slaveHandle.totalByteCount - lpspi->handle->slaveHandle.rxRemainingByteCount;
1081+
cnt = lpspi->handle->slaveHandle.totalByteCount - lpspi->handle->slaveHandle.rxRemainingByteCount;
10721082
}
1083+
cnt /= ((datawidth + 8U) / 8U);
1084+
1085+
return cnt;
10731086
}
10741087

10751088
static int32_t LPSPI_InterruptControl(uint32_t control, uint32_t arg, cmsis_lpspi_interrupt_driver_state_t *lpspi)

sdk/devices/MIMXRT1011/cmsis_drivers/fsl_lpspi_cmsis.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,9 @@ extern ARM_DRIVER_SPI Driver_SPI5;
5757
#endif /* LPSPI5 */
5858

5959
/* SPI Driver state flags */
60-
#define SPI_FLAG_UNINIT (0)
61-
#define SPI_FLAG_INIT (1 << 0)
62-
#define SPI_FLAG_POWER (1 << 1)
60+
#define SPI_FLAG_UNINIT (0)
61+
#define SPI_FLAG_INIT (1 << 0)
62+
#define SPI_FLAG_POWER (1 << 1)
6363
#define SPI_FLAG_CONFIGURED (1 << 2)
6464

6565
#endif

sdk/devices/MIMXRT1011/cmsis_drivers/fsl_lpuart_cmsis.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,9 @@ extern ARM_DRIVER_USART Driver_USART5;
8181
#endif
8282

8383
/* USART Driver state flags */
84-
#define USART_FLAG_UNINIT (0)
85-
#define USART_FLAG_INIT (1 << 0)
86-
#define USART_FLAG_POWER (1 << 1)
84+
#define USART_FLAG_UNINIT (0)
85+
#define USART_FLAG_INIT (1 << 0)
86+
#define USART_FLAG_POWER (1 << 1)
8787
#define USART_FLAG_CONFIGURED (1 << 2)
8888

8989
#endif /* _FSL_LPUART_CMSIS_H_ */

sdk/devices/MIMXRT1011/drivers/fsl_adc.c

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
* Copyright (c) 2016, Freescale Semiconductor, Inc.
3-
* Copyright 2016-2017 NXP
3+
* Copyright 2016-2019 NXP
44
* All rights reserved.
55
*
66
* SPDX-License-Identifier: BSD-3-Clause
@@ -144,7 +144,7 @@ void ADC_GetDefaultConfig(adc_config_t *config)
144144
assert(NULL != config);
145145

146146
/* Initializes the configure structure to zero. */
147-
memset(config, 0, sizeof(*config));
147+
(void)memset(config, 0, sizeof(*config));
148148

149149
config->enableAsynchronousClockOutput = true;
150150
config->enableOverWrite = false;
@@ -244,7 +244,7 @@ status_t ADC_DoAutoCalibration(ADC_Type *base)
244244
while (0U != (base->GC & ADC_GC_CAL_MASK))
245245
{
246246
/* Check the CALF when the calibration is active. */
247-
if (0U != (ADC_GetStatusFlags(base) & kADC_CalibrationFailedFlag))
247+
if (0U != (ADC_GetStatusFlags(base) & (uint32_t)kADC_CalibrationFailedFlag))
248248
{
249249
status = kStatus_Fail;
250250
break;
@@ -256,13 +256,13 @@ status_t ADC_DoAutoCalibration(ADC_Type *base)
256256
{
257257
status = kStatus_Fail;
258258
}
259-
if (0U != (ADC_GetStatusFlags(base) & kADC_CalibrationFailedFlag)) /* Check the CALF status. */
259+
if (0U != (ADC_GetStatusFlags(base) & (uint32_t)kADC_CalibrationFailedFlag)) /* Check the CALF status. */
260260
{
261261
status = kStatus_Fail;
262262
}
263263

264264
/* Clear conversion done flag. */
265-
ADC_GetChannelConversionValue(base, 0U);
265+
(void)ADC_GetChannelConversionValue(base, 0U);
266266

267267
#if !(defined(FSL_FEATURE_ADC_SUPPORT_HARDWARE_TRIGGER_REMOVE) && FSL_FEATURE_ADC_SUPPORT_HARDWARE_TRIGGER_REMOVE)
268268
/* Restore original trigger mode. */
@@ -336,6 +336,7 @@ void ADC_SetHardwareCompareConfig(ADC_Type *base, const adc_hardware_compare_con
336336
tmp32 |= ADC_GC_ACFGT_MASK | ADC_GC_ACREN_MASK;
337337
break;
338338
default:
339+
assert(false);
339340
break;
340341
}
341342
base->GC = tmp32;
@@ -382,11 +383,11 @@ void ADC_ClearStatusFlags(ADC_Type *base, uint32_t mask)
382383
{
383384
uint32_t tmp32 = 0;
384385

385-
if (0U != (mask & kADC_CalibrationFailedFlag))
386+
if (0U != (mask & (uint32_t)kADC_CalibrationFailedFlag))
386387
{
387388
tmp32 |= ADC_GS_CALF_MASK;
388389
}
389-
if (0U != (mask & kADC_ConversionActiveFlag))
390+
if (0U != (mask & (uint32_t)kADC_ConversionActiveFlag))
390391
{
391392
tmp32 |= ADC_GS_ADACT_MASK;
392393
}

0 commit comments

Comments
 (0)