am5728 是否支持aarch64_am5728开启uart0接口通讯
最近在調(diào)試開啟ttyS0接口,也就是開啟UART1,為該管教配置驅(qū)動,但是東修西改就是沒辦法解決似乎一直沒有改到點(diǎn)子上,,究竟需要修改的是哪個(gè)設(shè)備樹和生成設(shè)備樹的具體名稱是什么,懷疑是設(shè)備樹文件加載不對的問題。
這幾天一直在郁悶設(shè)備樹加載的問題:我的系統(tǒng)究竟在加載那個(gè)設(shè)備樹,在SD卡中/rfoot/boot文件中有那么多的設(shè)備樹文件,究竟是那個(gè),而且我uboot編譯使用的是am57xx_evm_nodt_defconfig配置項(xiàng),也就是沒有設(shè)備樹的意思,這又是什么意思。
那就想辦法驗(yàn)證一下具體是哪個(gè)設(shè)備樹,把/rfoot/boot中的設(shè)備樹文件全刪除掉,然后啟動內(nèi)核,這樣應(yīng)該就會提示找不到具體設(shè)備樹文件了,就能確定加載的是哪個(gè)設(shè)備樹了,刪除前先備份所有的設(shè)備樹文件,然后啟動,提示如下:
U-Boot 2016.05 (Apr 09 2018 - 23:09:39 +0800)
CPU? : DRA752-GP ES2.0
Board: UNKNOWN(BeagleBoard X15?) REV UNKNOWN
I2C:?? ready
DRAM:? 2 GiB
MMC:?? OMAP SD/MMC: 0, OMAP SD/MMC: 1
reading uboot.env
** Unable to read "uboot.env" from mmc0:1 **
Using default environment
SCSI:? SATA link 0 timeout.
AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
flags: 64bit ncq stag pm led clo only pmp pio slum part ccc apst
scanning bus for devices...
Found 0 device(s).
Net:?? not set. Validating first E-fuse MAC
Could not get PHY for cpsw: addr 1
cpsw
Hit any key to stop autoboot:? 0
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
reading boot.scr
** Unable to read file boot.scr **
reading uEnv.txt
** Unable to read file uEnv.txt **
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
3476768 bytes read in 180 ms (18.4 MiB/s)
** File not found /boot/am57xx-beagle-x15.dtb **? ?//設(shè)備樹文件加載錯(cuò)誤提示
Kernel image @ 0x82000000 [ 0x000000 - 0x350d20 ]
Starting kernel ...
所以,系統(tǒng)加載的是am57xx-beagle-x15.dtb文件,之前一直在生成什么鬼設(shè)備樹文件,也就無效了,所以從備份好的設(shè)備樹文件中將該設(shè)備樹文件和設(shè)備樹鏡像文件拷貝到rootfs/boot/中
[email?protected]:~/Desktop$ sudo cp am57xx-beagle-x15.dtb devicetree-zImage-am57xx-beagle-x15.dtb /media/nqp/rootfs/boot/
然后再修改與生成的am57xx-beagle-x15.dtb文件所需的文件。
第一個(gè)文件:am57xx-beagle-x15.dts
在&dra7_pmx_core {}中添加uart1的管教配置。
myuart1_pins_default: myuart1_pins_default {
pinctrl-single,pins = <
DRA7XX_CORE_IOPAD(0x37E0, PIN_INPUT | MUX_MODE0)
DRA7XX_CORE_IOPAD(0x37E4, PIN_INPUT | MUX_MODE0)
>;
};
因?yàn)閍m57xx-beagle-x15.dts中#include "am57xx-beagle-x15-common.dtsi"文件
所以看看該文件是否需要修改,可知該文件為節(jié)點(diǎn)時(shí)能文件,所以時(shí)能uart1接口。
&uart1 {
status = "okay";
interrupts-extended = ,
;
};
主要修改這兩個(gè)文件,其他的別的設(shè)備樹文件,修改了也沒有用,簡直了。
清除一下以前的內(nèi)核配置文件和生成文件
sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
在內(nèi)核編譯中使用的是tisdk_am57xx-evm_defconfig配置文件,因?yàn)槲覀兊南到y(tǒng)聲卡驅(qū)動會影響內(nèi)核啟動,所以需要將tisdk_am57xx-evm_defconfig文件中的
sound配置項(xiàng)注銷掉。
sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- tisdk_am57xx-evm_defconfig
生成.config文件
然后編譯內(nèi)核鏡像
sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage
并生成am57xx-beagle-x15.dtb設(shè)備樹,將
sudo make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am57xx-beagle-x15.dtb
然后將該設(shè)備樹和內(nèi)核鏡像拷貝到rootfs/boot/中,上電啟動系統(tǒng)。
am57xx-evm login: root
[email?protected]:~# cd /proc/tty/driver
[email?protected]:/proc/tty/driver# ls-l
-sh: ls-l: command not found
[email?protected]:/proc/tty/driver# ls -l
-r--r--r--??? 1 root???? root???????????? 0 Mar 29 21:01 serial
[email?protected]:/proc/tty/driver# cat serial
serinfo:1.0 driver revision:
0: uart:8250 mmio:0x4806A000 irq:299 tx:0 rx:0 DSR?? ?//uart0接口已經(jīng)被初始化成功,并加載了8250的串口驅(qū)動。
1: uart:unknown port:00000000 irq:0
2: uart:8250 mmio:0x48020000 irq:300 tx:8774 rx:70 RTS|DTR|DSR
3: uart:unknown port:00000000 irq:0
4: uart:unknown port:00000000 irq:0
5: uart:unknown port:00000000 irq:0
6: uart:unknown port:00000000 irq:0
7: uart:unknown port:00000000 irq:0
8: uart:unknown port:00000000 irq:0
9: uart:unknown port:00000000 irq:0
[email?protected]:/# dmesg | grep "ttyS"
[??? 0.000756] WARNING: Your ‘console=ttyO2‘ has been replaced by ‘ttyS2‘
[??? 0.578981] 4806a000.serial: ttyS0 at MMIO 0x4806a000 (irq = 299, base_baud = 3000000) is a 8250?? ?//已經(jīng)開起來
[??? 0.579799] console [ttyS2] disabled
[??? 0.579826] 48020000.serial: ttyS2 at MMIO 0x48020000 (irq = 300, base_baud = 3000000) is a 8250
[??? 1.445272] console [ttyS2] enabled
其中uart0的管腳映射可參考:https://blog.csdn.net/a249093278/article/details/79662477
心類
有問題可以咨詢 QQ748496426群
原文:https://www.cnblogs.com/nongqingpengzju/p/8778011.html
總結(jié)
以上是生活随笔為你收集整理的am5728 是否支持aarch64_am5728开启uart0接口通讯的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: quartus2管教锁定出不来_Quar
- 下一篇: antd 轮播图样式_React - A