海思3559a_怎么开启SHUB_UART1功能
目录
- 重新编译内核
- 查看是否开启成功
- 怎么配置使用SHUB_UART1
重新编译内核
open_source/linux/linux-4.19.y_multi-core/arch/arm64/boot/dts/hisilicon/hi3559av100.dtsi
可见。我们要使用的是uart6
open_source/linux/linux-4.19.y_multi-core/arch/arm64/boot/dts/hisilicon/hi3559av100-demb.dts
修改uart6,status = “okay”;
open_source/linux/linux-4.19.y_multi-core/drivers/tty/serial/amba-pl011.c
修改后,进入osdrv目录下,按照readme_cn.txt中的单独编译内核部分,进行内核编译:
a.待进入内核源代码目录后,执行以下操作cp arch/arm64/configs/hi3559av100_arm64_big_little_emmc_defconfig .configmake ARCH=arm64 CROSS_COMPILE=aarch64-himix210-linux- menuconfigcp .config arch/arm64/configs/hi3559av100_arm64_big_little_emmc_defconfigosdrv顶层目录下执行:make BOOT_MEDIA=emmc AMP_TYPE=linux atf
注意!!!
发送make ARCH=arm64 CROSS_COMPILE=aarch64-himix210-linux- menuconfig后进入内核配置页面,需要进入platform selection–>enable to access the devices of m7
编译成功后,在osdrv/pub/hi3559av100_emmc_image_glibc_multi-core_arm64目录下可以看到最新生成的uImage_hi3559av100
通过hitool给开发板烧录
查看是否开启成功
使用标准版的sdk,没做任何修改,编译生成的内核,给开发板烧录后,发送ls /dev/,情况如下:
使用修改后的内核,情况如下:
可以看到出现ttyAMA6,这就是我们要使用的SHUB_UART1。
怎么配置使用SHUB_UART1
在Hi3559AV100_PINOUT_CN.xlsx找到引脚对应的复用寄存器,如下图所示:
himm 0x18050044 0x15f1
himm 0x1805004c 0x15f1stty -F /dev/ttyAMA6 ispeed 9600 ospeed 9600 cs8echo "test 1234567890" > /dev/ttyAMA6