Skip to content

Commit 19983e6

Browse files
danieldegrassecarlescufi
authored andcommitted
boards: mimxrt1060_evk: Enable ADC on RT1060
Enables the ADC on the RT1060 evaluation board. Channels 0 and 15 of ADC1 are available on pins 1 and 0 of J23, respectively. Signed-off-by: Daniel DeGrasse <[email protected]>
1 parent 478d6a4 commit 19983e6

File tree

6 files changed

+39
-1
lines changed

6 files changed

+39
-1
lines changed

boards/arm/mimxrt1060_evk/doc/index.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,8 @@ features:
119119
+-----------+------------+-------------------------------------+
120120
| DMA | on-chip | dma |
121121
+-----------+------------+-------------------------------------+
122+
| ADC | on-chip | adc |
123+
+-----------+------------+-------------------------------------+
122124

123125

124126
The default configuration can be found in the defconfig file:
@@ -246,6 +248,10 @@ The MIMXRT1060 SoC has five pairs of pinmux/gpio controllers.
246248
+---------------+-----------------+---------------------------+
247249
| GPIO_SD_B0_05 | USDHC1_DATA3 | SD Card |
248250
+---------------+-----------------+---------------------------+
251+
| GPIO_AD_B1_11 | ADC | ADC1 Channel 0 |
252+
+---------------+-----------------+---------------------------+
253+
| GPIO_AD_B1_10 | ADC | ADC1 Channel 15 |
254+
+---------------+-----------------+---------------------------+
249255

250256
.. note::
251257
In order to use the SPI peripheral on this board, resistors R278, R279,

boards/arm/mimxrt1060_evk/mimxrt1060_evk.dts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,10 @@ arduino_serial: &lpuart3 {};
172172
};
173173
};
174174

175+
&adc1 {
176+
status = "okay";
177+
};
178+
175179
zephyr_udc0: &usb1 {
176180
status = "okay";
177181
};

boards/arm/mimxrt1060_evk/mimxrt1060_evk.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,4 @@ supported:
2929
- dma
3030
- can
3131
- watchdog
32+
- adc

boards/arm/mimxrt1060_evk/pinmux.c

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -280,6 +280,7 @@ static int mimxrt1060_evk_init(const struct device *dev)
280280
GPIO_PinInit(GPIO2, 31, &config);
281281
#endif
282282

283+
283284
#if DT_NODE_HAS_STATUS(DT_NODELABEL(flexcan1), okay) && CONFIG_CAN
284285
/* FLEXCAN1 TX, RX */
285286
IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B1_08_FLEXCAN1_TX, 1);
@@ -298,6 +299,19 @@ static int mimxrt1060_evk_init(const struct device *dev)
298299
IOMUXC_SetPinConfig(IOMUXC_GPIO_AD_B0_15_FLEXCAN2_RX, 0x10B0u);
299300
#endif
300301

302+
#if DT_NODE_HAS_STATUS(DT_NODELABEL(adc1), okay) && CONFIG_ADC
303+
/* ADC1 Input 0 */
304+
IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B1_11_GPIO1_IO27, 0U);
305+
IOMUXC_SetPinConfig(IOMUXC_GPIO_AD_B1_11_GPIO1_IO27,
306+
IOMUXC_SW_PAD_CTL_PAD_SPEED(2) |
307+
IOMUXC_SW_PAD_CTL_PAD_DSE(6));
308+
/* ADC1 Input 15 */
309+
IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B1_10_GPIO1_IO26, 0U);
310+
IOMUXC_SetPinConfig(IOMUXC_GPIO_AD_B1_10_GPIO1_IO26,
311+
IOMUXC_SW_PAD_CTL_PAD_SPEED(2) |
312+
IOMUXC_SW_PAD_CTL_PAD_DSE(6));
313+
#endif
314+
301315
#if DT_NODE_HAS_STATUS(DT_NODELABEL(flexcan3), okay) && CONFIG_CAN
302316
/* FLEXCAN3 TX, RX */
303317
IOMUXC_SetPinMux(IOMUXC_GPIO_EMC_36_FLEXCAN3_TX, 1);
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
/*
2+
* SPDX-License-Identifier: Apache-2.0
3+
*
4+
* Copyright (c) 2021 NXP
5+
*/
6+
7+
/ {
8+
zephyr,user {
9+
/* adjust channel number according to pinmux in board.dts */
10+
io-channels = <&adc1 0>;
11+
};
12+
};

tests/drivers/adc/adc_api/src/test_adc.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,8 @@
297297

298298
#elif defined(CONFIG_BOARD_MIMXRT1050_EVK) || \
299299
defined(CONFIG_BOARD_MIMXRT1050_EVK_QSPI) || \
300-
defined(CONFIG_BOARD_MIMXRT1064_EVK)
300+
defined(CONFIG_BOARD_MIMXRT1064_EVK) || \
301+
defined(CONFIG_BOARD_MIMXRT1060_EVK)
301302
#define ADC_DEVICE_NAME DT_LABEL(DT_INST(0, nxp_mcux_12b1msps_sar))
302303
#define ADC_RESOLUTION 12
303304
#define ADC_GAIN ADC_GAIN_1

0 commit comments

Comments
 (0)