3536开启UART2

找到sdk的内核文件

           l路径为 Hi3536_SDK_V2.0.4.0/osdrv/opensource/kernel/linux-3.10.y/arch/arm/mach-hi353

    打开core.c 找到

     

HIL_AMBA_DEVICE(uart0, "uart:0",  UART0,    NULL);
HIL_AMBA_DEVICE(uart1, "uart:1",  UART1,    NULL);
+ HIL_AMBA_DEVICE(uart2, "uart:2",  UART2,    NULL);


{
/* UART0 */
.dev_id = "uart:0",
.clk = &uart_clk,
},
{
/* UART1 */
.dev_id = "uart:1",
.clk = &uart_clk,
},
{
/* UART1 */
.dev_id = "uart:2",
.clk = &uart_clk,

},


然后转到 include/mach文件下找到platform.h

#define REG_BASE_UART1 0x12090000
#define REG_BASE_UART2 0x120a0000

#define REG_BASE_UART3 0x120b0000

添加串口的基地址,具体的地址可以在海思的文档中找到

进行过以上操作之后 内核中可以开启UART2了

不过在使用之前还需要开启端口复用

uart 1
himm 0x120F0130 0x01 
himm 0x120F0134 0x01
himm 0x120F0138 0x01
himm 0x120F013C 0x01


URT2:
himm 0x120F0140 0x01

himm 0x120F0144 0x01

添加好串口复用之后就可以愉快的使用啦,复用的地址在手册中都可以找到,我也是找了很久。

猜你喜欢

转载自blog.csdn.net/weixin_36704535/article/details/79654664
今日推荐