Skip to content

Commit ad1dbd9

Browse files
[bsp/nxp/mcx/mcxa] Fix UART clock configuration type mismatch
Fixed implicit type conversion warning in UART driver by correctly separating clock_name_t and clock_attach_id_t enum types. Changes: - Use kCLOCK_Fro12M (clock_name_t) for clock_src field - Keep kFRO12M_to_LPUARTx (clock_attach_id_t) for clock_attach_id field - Remove unnecessary CPU model conditional compilation - Fix mcx_getc() to use correct status flag kLPUART_RxDataRegFullFlag This resolves the compiler warning: "implicit conversion from 'int' to 'clock_name_t' changes value from 16777216 to 0" Signed-off-by: Yucai Liu [email protected]
1 parent 7499790 commit ad1dbd9

File tree

1 file changed

+3
-15
lines changed

1 file changed

+3
-15
lines changed

bsp/nxp/mcx/mcxa/Libraries/drivers/drv_uart.c

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,7 @@ static const struct mcx_uart uarts[] =
6464
&serial0,
6565
LPUART0,
6666
LPUART0_IRQn,
67-
#if (defined(CPU_MCXA346VLH) || defined(CPU_MCXA346VLL) || defined(CPU_MCXA346VLQ) || defined(CPU_MCXA346VPN))
68-
kFRO_LF_DIV_to_LPUART0,
69-
#else
70-
kFRO12M_to_LPUART0,
71-
#endif
67+
kCLOCK_Fro12M,
7268
kFRO12M_to_LPUART0,
7369
kCLOCK_GateLPUART0,
7470
kCLOCK_DivLPUART0,
@@ -80,11 +76,7 @@ static const struct mcx_uart uarts[] =
8076
&serial1,
8177
LPUART1,
8278
LPUART1_IRQn,
83-
#if (defined(CPU_MCXA346VLH) || defined(CPU_MCXA346VLL) || defined(CPU_MCXA346VLQ) || defined(CPU_MCXA346VPN))
84-
kFRO_LF_DIV_to_LPUART1,
85-
#else
86-
kFRO12M_to_LPUART1,
87-
#endif
79+
kCLOCK_Fro12M,
8880
kFRO12M_to_LPUART1,
8981
kCLOCK_GateLPUART1,
9082
kCLOCK_DivLPUART1,
@@ -97,11 +89,7 @@ static const struct mcx_uart uarts[] =
9789
LPUART2,
9890
LPUART2_IRQn,
9991
kCLOCK_Fro12M,
100-
#if (defined(CPU_MCXA346VLH) || defined(CPU_MCXA346VLL) || defined(CPU_MCXA346VLQ) || defined(CPU_MCXA346VPN))
101-
kFRO_LF_DIV_to_LPUART2,
102-
#else
10392
kFRO12M_to_LPUART2,
104-
#endif
10593
kCLOCK_GateLPUART2,
10694
kCLOCK_DivLPUART2,
10795
"uart2",
@@ -182,7 +170,7 @@ static int mcx_getc(struct rt_serial_device *serial)
182170
{
183171
struct mcx_uart *uart = (struct mcx_uart *)serial->parent.user_data;
184172

185-
if (kLPUART_RxDataRegFullInterruptEnable & LPUART_GetStatusFlags(uart->uart_base))
173+
if (kLPUART_RxDataRegFullFlag & LPUART_GetStatusFlags(uart->uart_base))
186174
{
187175
return LPUART_ReadByte(uart->uart_base);
188176
}

0 commit comments

Comments
 (0)