TI中文支持网
TI专业的中文技术问题搜集分享网站

关于AM335X的串口驱动的疑问

对于串口驱动我有以下疑问:
我在AM335X的打印信息里面看到以下打印信息:
omap_uart.0: ttySAC0 at MMIO 0x44e09000 (irq = 72) is a OMAP UART0
console [ttyO0] enabled
omap_uart.1: ttySAC1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
omap_uart.2: ttySAC2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
omap_uart.3: ttySAC3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
omap_uart.4: ttySAC4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
omap_uart.5: ttySAC5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
说明AM335X 已经使能了6个串口功能。然后我去找相应的配置发现
在board-am335xevm.c文件的数组embedsky_evm_dev_cfg[]中初始化了{uart1_wl12xx_init,    DEV_ON_BASEBOARD, (PROFILE_0 | PROFILE_3 |
 PROFILE_5)}和{uart2_init,    DEV_ON_DGHTR_BRD, PROFILE_3}这里只有2个设备(没有与打印信息中的6个设备相符)而且也没有对寄存器映射方面的内容,这样的话如何去设置串口的寄存器呢?打印信息中的ttySAC如何去对于相应的串口号呢?

cheng feng:

AM335X的内核对串口驱动的配置在board-am335xevm.c部分,只有对UART的引脚进行配置,而没有对UART的其他的寄存器进行操作,比如:0x44e09000、 0x48022000、0x48024000、0x481a6000、0x481aa0000x481a8000这几个地址是如何映射的?在omap-serial.c部分,函数static int serial_omap_probe(struct platform_device *pdev)中有对串口寄存器资源的获取,mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0);但是这些资源是在哪定义的呢?

kooking:

我是这么理解的,embedsky_evm_dev_cfg中只看到的uart1和uart2初始化的信息,可能是这两个uart使用需要一些pinmux配置或者有特殊要求,比如将uart0做为console,但这并不表示其它串口就没有初始化

Jian Zhou:

回复 kooking:

AM335x的串口设备名是/dev/ttyOx,请参考http://processors.wiki.ti.com/index.php/AM335x-PSP_04.06.00.11_Features_and_Performance_Guide#UART_Driver

shanshan wan:

你好,请问你的六个串口都能使用了吗?能不能把你的解决思路跟我分享一下?

Yaoming Qin:

回复 shanshan wan:

如果要用留个串口,首先您需要用pimux分配下引脚。

shanshan wan:

回复 Yaoming Qin:

启动时能打印出下面的信息也还需要pimux分配下引脚吗?

omap_uart.0: ttyO0 at MMIO 0x44e09000 (irq = 72) is a OMAP UART0console [ttyO0] enabledomap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5

Yaoming Qin:

回复 shanshan wan:

您最好还是检查下代码

shanshan wan:

回复 Yaoming Qin:

你好,能说说要看那些代码吗?我是新手,对代码不太熟悉!

Jian Zhou:

回复 shanshan wan:

建议你看看\arch\arm\mach-omap2\board-am335xevm.c这是driver入口点。

赞(0)
未经允许不得转载:TI中文支持网 » 关于AM335X的串口驱动的疑问
分享到: 更多 (0)