18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright (C) 2012-2015 Freescale Semiconductor, Inc. 48c2ecf20Sopenharmony_ci */ 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#ifndef __DEBUG_IMX_UART_H 78c2ecf20Sopenharmony_ci#define __DEBUG_IMX_UART_H 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#define IMX1_UART1_BASE_ADDR 0x00206000 108c2ecf20Sopenharmony_ci#define IMX1_UART2_BASE_ADDR 0x00207000 118c2ecf20Sopenharmony_ci#define IMX1_UART_BASE_ADDR(n) IMX1_UART##n##_BASE_ADDR 128c2ecf20Sopenharmony_ci#define IMX1_UART_BASE(n) IMX1_UART_BASE_ADDR(n) 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci#define IMX25_UART1_BASE_ADDR 0x43f90000 158c2ecf20Sopenharmony_ci#define IMX25_UART2_BASE_ADDR 0x43f94000 168c2ecf20Sopenharmony_ci#define IMX25_UART3_BASE_ADDR 0x5000c000 178c2ecf20Sopenharmony_ci#define IMX25_UART4_BASE_ADDR 0x50008000 188c2ecf20Sopenharmony_ci#define IMX25_UART5_BASE_ADDR 0x5002c000 198c2ecf20Sopenharmony_ci#define IMX25_UART_BASE_ADDR(n) IMX25_UART##n##_BASE_ADDR 208c2ecf20Sopenharmony_ci#define IMX25_UART_BASE(n) IMX25_UART_BASE_ADDR(n) 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci#define IMX27_UART1_BASE_ADDR 0x1000a000 238c2ecf20Sopenharmony_ci#define IMX27_UART2_BASE_ADDR 0x1000b000 248c2ecf20Sopenharmony_ci#define IMX27_UART3_BASE_ADDR 0x1000c000 258c2ecf20Sopenharmony_ci#define IMX27_UART4_BASE_ADDR 0x1000d000 268c2ecf20Sopenharmony_ci#define IMX27_UART_BASE_ADDR(n) IMX27_UART##n##_BASE_ADDR 278c2ecf20Sopenharmony_ci#define IMX27_UART_BASE(n) IMX27_UART_BASE_ADDR(n) 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci#define IMX31_UART1_BASE_ADDR 0x43f90000 308c2ecf20Sopenharmony_ci#define IMX31_UART2_BASE_ADDR 0x43f94000 318c2ecf20Sopenharmony_ci#define IMX31_UART3_BASE_ADDR 0x5000c000 328c2ecf20Sopenharmony_ci#define IMX31_UART4_BASE_ADDR 0x43fb0000 338c2ecf20Sopenharmony_ci#define IMX31_UART5_BASE_ADDR 0x43fb4000 348c2ecf20Sopenharmony_ci#define IMX31_UART_BASE_ADDR(n) IMX31_UART##n##_BASE_ADDR 358c2ecf20Sopenharmony_ci#define IMX31_UART_BASE(n) IMX31_UART_BASE_ADDR(n) 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci#define IMX35_UART1_BASE_ADDR 0x43f90000 388c2ecf20Sopenharmony_ci#define IMX35_UART2_BASE_ADDR 0x43f94000 398c2ecf20Sopenharmony_ci#define IMX35_UART3_BASE_ADDR 0x5000c000 408c2ecf20Sopenharmony_ci#define IMX35_UART_BASE_ADDR(n) IMX35_UART##n##_BASE_ADDR 418c2ecf20Sopenharmony_ci#define IMX35_UART_BASE(n) IMX35_UART_BASE_ADDR(n) 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ci#define IMX50_UART1_BASE_ADDR 0x53fbc000 448c2ecf20Sopenharmony_ci#define IMX50_UART2_BASE_ADDR 0x53fc0000 458c2ecf20Sopenharmony_ci#define IMX50_UART3_BASE_ADDR 0x5000c000 468c2ecf20Sopenharmony_ci#define IMX50_UART4_BASE_ADDR 0x53ff0000 478c2ecf20Sopenharmony_ci#define IMX50_UART5_BASE_ADDR 0x63f90000 488c2ecf20Sopenharmony_ci#define IMX50_UART_BASE_ADDR(n) IMX50_UART##n##_BASE_ADDR 498c2ecf20Sopenharmony_ci#define IMX50_UART_BASE(n) IMX50_UART_BASE_ADDR(n) 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ci#define IMX51_UART1_BASE_ADDR 0x73fbc000 528c2ecf20Sopenharmony_ci#define IMX51_UART2_BASE_ADDR 0x73fc0000 538c2ecf20Sopenharmony_ci#define IMX51_UART3_BASE_ADDR 0x7000c000 548c2ecf20Sopenharmony_ci#define IMX51_UART_BASE_ADDR(n) IMX51_UART##n##_BASE_ADDR 558c2ecf20Sopenharmony_ci#define IMX51_UART_BASE(n) IMX51_UART_BASE_ADDR(n) 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci#define IMX53_UART1_BASE_ADDR 0x53fbc000 588c2ecf20Sopenharmony_ci#define IMX53_UART2_BASE_ADDR 0x53fc0000 598c2ecf20Sopenharmony_ci#define IMX53_UART3_BASE_ADDR 0x5000c000 608c2ecf20Sopenharmony_ci#define IMX53_UART4_BASE_ADDR 0x53ff0000 618c2ecf20Sopenharmony_ci#define IMX53_UART5_BASE_ADDR 0x63f90000 628c2ecf20Sopenharmony_ci#define IMX53_UART_BASE_ADDR(n) IMX53_UART##n##_BASE_ADDR 638c2ecf20Sopenharmony_ci#define IMX53_UART_BASE(n) IMX53_UART_BASE_ADDR(n) 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci#define IMX6Q_UART1_BASE_ADDR 0x02020000 668c2ecf20Sopenharmony_ci#define IMX6Q_UART2_BASE_ADDR 0x021e8000 678c2ecf20Sopenharmony_ci#define IMX6Q_UART3_BASE_ADDR 0x021ec000 688c2ecf20Sopenharmony_ci#define IMX6Q_UART4_BASE_ADDR 0x021f0000 698c2ecf20Sopenharmony_ci#define IMX6Q_UART5_BASE_ADDR 0x021f4000 708c2ecf20Sopenharmony_ci#define IMX6Q_UART_BASE_ADDR(n) IMX6Q_UART##n##_BASE_ADDR 718c2ecf20Sopenharmony_ci#define IMX6Q_UART_BASE(n) IMX6Q_UART_BASE_ADDR(n) 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ci#define IMX6SL_UART1_BASE_ADDR 0x02020000 748c2ecf20Sopenharmony_ci#define IMX6SL_UART2_BASE_ADDR 0x02024000 758c2ecf20Sopenharmony_ci#define IMX6SL_UART3_BASE_ADDR 0x02034000 768c2ecf20Sopenharmony_ci#define IMX6SL_UART4_BASE_ADDR 0x02038000 778c2ecf20Sopenharmony_ci#define IMX6SL_UART5_BASE_ADDR 0x02018000 788c2ecf20Sopenharmony_ci#define IMX6SL_UART_BASE_ADDR(n) IMX6SL_UART##n##_BASE_ADDR 798c2ecf20Sopenharmony_ci#define IMX6SL_UART_BASE(n) IMX6SL_UART_BASE_ADDR(n) 808c2ecf20Sopenharmony_ci 818c2ecf20Sopenharmony_ci#define IMX6SX_UART1_BASE_ADDR 0x02020000 828c2ecf20Sopenharmony_ci#define IMX6SX_UART2_BASE_ADDR 0x021e8000 838c2ecf20Sopenharmony_ci#define IMX6SX_UART3_BASE_ADDR 0x021ec000 848c2ecf20Sopenharmony_ci#define IMX6SX_UART4_BASE_ADDR 0x021f0000 858c2ecf20Sopenharmony_ci#define IMX6SX_UART5_BASE_ADDR 0x021f4000 868c2ecf20Sopenharmony_ci#define IMX6SX_UART6_BASE_ADDR 0x022a0000 878c2ecf20Sopenharmony_ci#define IMX6SX_UART_BASE_ADDR(n) IMX6SX_UART##n##_BASE_ADDR 888c2ecf20Sopenharmony_ci#define IMX6SX_UART_BASE(n) IMX6SX_UART_BASE_ADDR(n) 898c2ecf20Sopenharmony_ci 908c2ecf20Sopenharmony_ci#define IMX6UL_UART1_BASE_ADDR 0x02020000 918c2ecf20Sopenharmony_ci#define IMX6UL_UART2_BASE_ADDR 0x021e8000 928c2ecf20Sopenharmony_ci#define IMX6UL_UART3_BASE_ADDR 0x021ec000 938c2ecf20Sopenharmony_ci#define IMX6UL_UART4_BASE_ADDR 0x021f0000 948c2ecf20Sopenharmony_ci#define IMX6UL_UART5_BASE_ADDR 0x021f4000 958c2ecf20Sopenharmony_ci#define IMX6UL_UART6_BASE_ADDR 0x021fc000 968c2ecf20Sopenharmony_ci#define IMX6UL_UART7_BASE_ADDR 0x02018000 978c2ecf20Sopenharmony_ci#define IMX6UL_UART8_BASE_ADDR 0x02024000 988c2ecf20Sopenharmony_ci#define IMX6UL_UART_BASE_ADDR(n) IMX6UL_UART##n##_BASE_ADDR 998c2ecf20Sopenharmony_ci#define IMX6UL_UART_BASE(n) IMX6UL_UART_BASE_ADDR(n) 1008c2ecf20Sopenharmony_ci 1018c2ecf20Sopenharmony_ci#define IMX7D_UART1_BASE_ADDR 0x30860000 1028c2ecf20Sopenharmony_ci#define IMX7D_UART2_BASE_ADDR 0x30890000 1038c2ecf20Sopenharmony_ci#define IMX7D_UART3_BASE_ADDR 0x30880000 1048c2ecf20Sopenharmony_ci#define IMX7D_UART4_BASE_ADDR 0x30a60000 1058c2ecf20Sopenharmony_ci#define IMX7D_UART5_BASE_ADDR 0x30a70000 1068c2ecf20Sopenharmony_ci#define IMX7D_UART6_BASE_ADDR 0x30a80000 1078c2ecf20Sopenharmony_ci#define IMX7D_UART7_BASE_ADDR 0x30a90000 1088c2ecf20Sopenharmony_ci#define IMX7D_UART_BASE_ADDR(n) IMX7D_UART##n##_BASE_ADDR 1098c2ecf20Sopenharmony_ci#define IMX7D_UART_BASE(n) IMX7D_UART_BASE_ADDR(n) 1108c2ecf20Sopenharmony_ci 1118c2ecf20Sopenharmony_ci#define IMX_DEBUG_UART_BASE(soc) soc##_UART_BASE(CONFIG_DEBUG_IMX_UART_PORT) 1128c2ecf20Sopenharmony_ci 1138c2ecf20Sopenharmony_ci#ifdef CONFIG_DEBUG_IMX1_UART 1148c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX1) 1158c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX25_UART) 1168c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX25) 1178c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX27_UART) 1188c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX27) 1198c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX31_UART) 1208c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX31) 1218c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX35_UART) 1228c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX35) 1238c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX50_UART) 1248c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX50) 1258c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX51_UART) 1268c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX51) 1278c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX53_UART) 1288c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX53) 1298c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX6Q_UART) 1308c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX6Q) 1318c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX6SL_UART) 1328c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX6SL) 1338c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX6SX_UART) 1348c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX6SX) 1358c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX6UL_UART) 1368c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX6UL) 1378c2ecf20Sopenharmony_ci#elif defined(CONFIG_DEBUG_IMX7D_UART) 1388c2ecf20Sopenharmony_ci#define UART_PADDR IMX_DEBUG_UART_BASE(IMX7D) 1398c2ecf20Sopenharmony_ci 1408c2ecf20Sopenharmony_ci#endif 1418c2ecf20Sopenharmony_ci 1428c2ecf20Sopenharmony_ci#endif /* __DEBUG_IMX_UART_H */ 143