AnsweredAssumed Answered

Pins Tool does not generate code for some pins

Question asked by George Makarov on Mar 31, 2019
Latest reply on Apr 7, 2019 by George Makarov

Here is an issue with Pins Tool v.5.0 for processor MIMXRT1052xxxxB.
It doesn't generate GPIO configuration structure and invoke of GPIO_PinInit for pin 31 of any port.

To reproduce the bug I configured pins GPIO1_00, GPIO1_31, GPIO2_30, GPIO2_31. It generates gpio1_pinM14_config and gpio2_pinC14_config for GPIO1_00 and GPIO2_30 respectively, but doesn't for GPIO1_31 and GPIO2_31

/*
* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
BOARD_InitPins:
- options: {callFromInitBoot: 'false', coreID: core0, enableClock: 'true'}
- pin_list:
- {pin_num: M14, peripheral: GPIO1, signal: 'gpio_io, 00', pin_signal: GPIO_AD_B0_00, direction: OUTPUT, gpio_init_state: 'true'}
- {pin_num: J14, peripheral: GPIO1, signal: 'gpio_io, 31', pin_signal: GPIO_AD_B1_15, direction: OUTPUT, gpio_init_state: 'true'}
- {pin_num: C14, peripheral: GPIO2, signal: 'gpio_io, 30', pin_signal: GPIO_B1_14, direction: OUTPUT}
- {pin_num: B14, peripheral: GPIO2, signal: 'gpio_io, 31', pin_signal: GPIO_B1_15, direction: OUTPUT}
* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS ***********
*/

/* FUNCTION ************************************************************************************************************
*
* Function Name : BOARD_InitPins
* Description : Configures pin routing and optionally pin electrical features.
*
* END ****************************************************************************************************************/
void BOARD_InitPins(void) {
CLOCK_EnableClock(kCLOCK_Iomuxc); /* iomuxc clock (iomuxc_clk_enable): 0x03U */

/* GPIO configuration on GPIO_AD_B0_00 (pin M14) */
gpio_pin_config_t gpio1_pinM14_config = {
.direction = kGPIO_DigitalOutput,
.outputLogic = 1U,
.interruptMode = kGPIO_NoIntmode
};
/* Initialize GPIO functionality on GPIO_AD_B0_00 (pin M14) */
GPIO_PinInit(GPIO1, 0U, &gpio1_pinM14_config);

/* GPIO configuration on GPIO_B1_14 (pin C14) */
gpio_pin_config_t gpio2_pinC14_config = {
.direction = kGPIO_DigitalOutput,
.outputLogic = 0U,
.interruptMode = kGPIO_NoIntmode
};
/* Initialize GPIO functionality on GPIO_B1_14 (pin C14) */
GPIO_PinInit(GPIO2, 30U, &gpio2_pinC14_config);

IOMUXC_SetPinMux(
IOMUXC_GPIO_AD_B0_00_GPIO1_IO00, /* GPIO_AD_B0_00 is configured as GPIO1_IO00 */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_AD_B1_15_GPIO1_IO31, /* GPIO_AD_B1_15 is configured as GPIO1_IO31 */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_B1_14_GPIO2_IO30, /* GPIO_B1_14 is configured as GPIO2_IO30 */
0U); /* Software Input On Field: Input Path is determined by functionality */
IOMUXC_SetPinMux(
IOMUXC_GPIO_B1_15_GPIO2_IO31, /* GPIO_B1_15 is configured as GPIO2_IO31 */
0U); /* Software Input On Field: Input Path is determined by functionality */
}

 

Here's detailed information about used tool:

 

*** About MCUXpresso Config Tools:
Version and Build id: 5.0.0.201811140908
Installed tools:
Pins (5.0)

Locally installed data:
C:\ProgramData\NXP\mcu_data_v5
Processors:
MCIMX6QxxVT (5.0.0) - i.MX 6Quad
MIMXRT1051xxxxB (5.0.1) - i.MX RT
MIMXRT1051xxxxx (5.0.0) - i.MX RT
MIMXRT1052xxxxB (5.0.2) - i.MX RT

Boards:
FRDM-K64F (5.0.0)
IMXRT1050-EVKB (5.0.0)
MCIMX6Q-SDB-REV-B (5.0.0)

Components:
adc12_5324d28dd0212c08055a9d9cd4317082 (5.0.0)
adc12_582213dfbd3d6bcee209acc93ebafd79 (5.0.0)
adc16_7d827be2dc433dc756d94a7ce88cbcc5 (5.0.0)
adc_12b1msps_sar_6a490e886349a7b2b07bed10ce7b299b (5.0.1)
adc_etc_f54f0f22e1814a87101dbc3d3da0f030 (5.0.1)
aoi_5a2efbfd7a8a5208f8f552077e2b4ded (5.0.0)
cmp_306724f57b92dbe1771f1514089d2b18 (5.0.0)
cmt_4b415df0953c334612ffa4b1d9ce84dd (5.0.0)
crc_9fd5aeb8f898a23808d5f975e5443f11 (5.0.0)
csi_3739ec1355c7b915be929f3b7e35095b (5.0.0)
csi_b2cf1faba8074e676ac4be93ec552c5a (5.0.0)
dac_a54f338a6fa6fd273bc89d61f5a3b85e (5.0.0)
dcp_95a1068fdf77eaec189146622e54f5e0 (5.0.0)
dcp_972afb0e5bdd98ba89e5860deaf0bf5c (5.0.0)
dma_cb8220597343022981727d8655725baf (5.0.0)
dspi_305e5b03c593d065f61ded8061d15797 (5.0.0)
edma_a23fca76a894e1bcdf9d01a687505ff9 (5.0.0)
elcdif_1c39bcb43ed1a24bc8980672c7378576 (5.0.1)
enc_a31ae546b0cbfc3aa2c35851e1fcb3b8 (5.0.0)
ewm_4792127f422c23cc3392826dba86b9fd (5.0.0)
flexbus_c0f98ce230f06c38b26b546b16ee96cc (5.0.0)
flexcan_ba45456ec815807245205237e2bf425b (5.0.1)
flexcan_d4764a197c0db35c88f36862312557e4 (5.0.1)
flexcomm_i2c_567d1a9d97c12e5d39b00259c3436dc4 (5.0.0)
flexcomm_spi_fa73bcfbc0a2fd3b8c6ba5b0b1f1446f (5.0.0)
flexcomm_usart_fcc110cc6b16332e9dfd9e0df675e21f (5.0.0)
flexio_i2c_master_b1c6d75a13c223349acb4bdd6d771f21 (5.0.0)
flexio_i2s_a594b82e98584b93cd0e9c6b6e73df7f (5.0.0)
flexio_spi_d67d6584d62b130dba246fa5abb61949 (5.0.0)
flexio_uart_fc94dc0ace2887e1e4712084856919fa (5.0.0)
ftm_04a15ae4af2b404bf2ae403c3dbe98b3 (5.0.0)
ftm_5e037045c21cf6f361184c371dbbbab2 (5.0.0)
gpio_65d133e8884c2b67e1400b2f76d174b8 (5.0.0)
gpio_be9de87e5addb6b0f416d9acbab34797 (5.0.0)
gpio_f970a92e447fa4793838db25a2947ed7 (5.0.0)
gpt_e92a0cbd07e389b82a1d19b05eb9fdda (5.0.1)
i2c_2566d7363e7e9aaedabb432110e372d7 (5.0.0)
igpio_b1c1fa279aa7069dca167502b8589cb7 (5.0.0)
kpp_42e527b886eb45655f11a320d8e4317a (5.0.0)
llwu_3300b573fd6e3303f27cdce526747338 (5.0.0)
lpadc_c198e31251158bdd3f87ff4098caeba3 (5.0.0)
lpc_adc_bb2d0dc1b8ebf962ff3f75df84677aae (5.0.0)
lpc_adc_c8a42a3971e43028d68a2161b5fcb2b2 (5.0.0)
lpc_adc_d4840b616722dd9291a911597277144f (5.0.0)
lpc_dma_073e226789af4d91fdf79312787d777b (5.0.0)
lpc_gpio_8c9ab9b3668a514c1f4609fe43001865 (5.0.0)
lpc_gpio_cafc42e5f2c30132836e2ae7603e8a1e (5.0.0)
lpi2c_540b08a1d4a23952ca7a6ac43c82d1e6 (5.0.1)
lpi2c_db68d4f4f06a22e25ab51fe9bd6db4d2 (5.0.1)
lpsci_6cb860df0090aefbbd9e197ba914a87c (5.0.0)
lpsci_d7d643c7d665ff9a7a181303138bb697 (5.0.0)
lpspi_2e4230bc6f188eb74b5476d1b09fc7bf (5.0.1)
lpspi_6e21a1e0a09f0a012d683c4f91752db8 (5.0.1)
lptmr_2eeab91a1a42f8238f9ac768f18c65ae (5.0.1)
lpuart_bebe3e12b6ec22bbd14199038f2bf459 (5.0.0)
pdb_32eb8756416d042c4a30e2cf9bd8fca4 (5.0.0)
pit_a4782ba5223c8a2527ba91aeb2bc4159 (5.0.1)
qtmr_460dd7aa3f3371843c2548acd54252b0 (5.0.0)
rnga_e3462b71d05dedbc6eec554b71e8aafc (5.0.0)
rtc_5a0edd77b33c110032c2a0f5e3d1bd2f (5.0.0)
rtwdog_67fd785e8bb4ab28416270fb114d2253 (5.0.0)
sai_e171ee1d4e17db4b5b234f946b59a148 (5.0.1)
sai_e7c250a6f9f5ec36ac5d0ffad0941743 (5.0.1)
sctimer_11116c58643bd290f0e74db0acbc9466 (5.0.0)
snvs_hp_5fc0a925779e7e5f8b9bedf272c8d94e (5.0.0)
snvs_hp_8aa1d6897a8f71c776216caab5be8259 (5.0.0)
snvs_lp_214d2a8e2ab7b1cb98af7868b3016bee (5.0.0)
snvs_lp_3b9e952b0ef37d4c4fffea74821e74e2 (5.0.0)
spdif_040614b5288766ad77a1a386b39d0a3c (5.0.0)
spi_672b694426b0a10a1d774659ee8f8435 (5.0.0)
system_54b53072540eeeb8f8e9343e71f28176 (5.0.2)
tempmon_c966e400757748d37785414258f2801c (5.0.1)
tpm_e7472ea12d53461b8d293488f3ed72ec (5.0.0)
trng_dd5b2a6f14d45ca091cf6c9a38560d5e (5.0.0)
uart_c6ca9befff8c3e28c85e70f512c4576e (5.0.0)
uart_cd31a12aa8c79051fda42cc851a27c37 (5.0.0)
usb_62ed973d963913bb55111a7b8116ace1 (5.0.0)
usb_e7971d25631a360e2da78a4fcd2653f5 (5.0.1)
vref_62f8e6ca39d44fd8d933f98728e18183 (5.0.0)
wdog01_425640a4cd6cc847fe8bf3baf0d666fc (5.0.0)
wdog01_510a9c5ba7e0ced8deac305549f23fa9 (5.0.0)
wdog_362a0fbc7b41b2e6c7f96894cfc2f4d4 (5.0.0)

Outcomes