日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

am5728 是否支持aarch64_am5728开启uart0接口通讯

發(fā)布時(shí)間:2025/3/15 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 am5728 是否支持aarch64_am5728开启uart0接口通讯 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近在調(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)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。