rk3288_ubuntu系统uart2 debug口无法使用

hi,
自带的固件可以用ttys2。
下载了android4.4的源码,用里面自带的内核源码,重新编译,把得出的resource.img重新烧进去,发觉没有了ttys2设备。这个内核源码dtsi里面关于uart2的描述和uart1、uart3有所不同。
uart_bb: serial@ff190000 {
compatible = “rockchip,serial”;
reg = <0xff190000 0x100>;
interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
clock-frequency = <24000000>;
clocks = <&clk_uart1>, <&clk_gates6 9>;
clock-names = “sclk_uart”, “pclk_uart”;
reg-shift = <2>;
reg-io-width = <4>;
dmas = <&pdma1 3>, <&pdma1 4>;
#dma-cells = <2>;
pinctrl-names = “default”;
pinctrl-0 = <&uart1_xfer &uart1_cts &uart1_rts>;
status = “disabled”;
};

uart_dbg: serial@ff690000 {
	compatible = "rockchip,serial";
	reg = <0xff690000 0x100>;
	interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
	clock-frequency = <24000000>;
	clocks = <&clk_uart2>, <&clk_gates11 9>;
	clock-names = "sclk_uart", "pclk_uart";
	reg-shift = <2>;
	reg-io-width = <4>;
	dmas = <&pdma0 4>, <&pdma0 5>;
	#dma-cells = <2>;
	pinctrl-names = "default";
	pinctrl-0 = <&uart2_xfer>;
	status = "disabled";
};

uart_gps: serial@ff1b0000 {
	compatible = "rockchip,serial";
	reg = <0xff1b0000 0x100>;
	interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
	clock-frequency = <24000000>;
	clocks = <&clk_uart3>, <&clk_gates6 11>;
	clock-names = "sclk_uart", "pclk_uart";
	current-speed = <115200>;
	reg-shift = <2>;
	reg-io-width = <4>;
	dmas = <&pdma1 7>, <&pdma1 8>;
	#dma-cells = <2>;
	pinctrl-names = "default";
	pinctrl-0 = <&uart3_xfer &uart3_cts &uart3_rts>;
	status = "disabled";
};

关于uart2的描述,pinctrl-0的值没有&uart2_cts &uart2_rts,同时没有指定波特率。
在dts文件里面可以打开uart1和uart3,但打开uart2以后,内核启动时,加载uart驱动的时候会卡6分钟左右,然后一直等待,无法将进入桌面。
请问想要用起uart2,怎么修改dtsi和dts?
有技术人员能够回答的吗?
能不能把自带的ubuntu系统固件的dts等放出来?

内核默认使用uart2作为调试串口,楼主想用uart2做什么呢?接外部设备?
官方自带的ubuntu系统固件的dts文件在sdk里面,跟android系统是用同一个的。

linjc 发表于 2016-7-6 17:27
内核默认使用uart2作为调试串口,楼主想用uart2做什么呢?接外部设备?
官方自带的ubuntu系统固件的dts文 …

我用官方android4.4的sdk里面的内核源码,查看了一下,里面的dts和dtsi没有开启uart2。开启的话就会出现上面的问题。
我只是想用官方的sdk自带的源码编译一下,下载下去看各设备有没有正常工作而已,结果发现没有ttys2设备了。
我烧写了自带的ubuntu固件,然后用官方sdk内核源码编译出来的resource.img(里面包含了dtb)重新烧一下,ttys2设备消失了。
所以,sdk自带的dts等文件默认应该是没有开启uart2的。

内核驱动应该是加了的,因为我在dts里面开启了uart1,uart3,可以正常工作,只有uart2开启后出现异常。

gyfkyu 发表于 2016-7-6 18:42
我用官方android4.4的sdk里面的内核源码,查看了一下,里面的dts和dtsi没有开启uart2。开启的话就会出现 …

android4.4的sdk打开了fiq,uart2当做fiq调试串口用了,你可以在设备上看到/dev/ttyFIQ0

linjc 发表于 2016-7-7 09:17
android4.4的sdk打开了fiq,uart2当做fiq调试串口用了,你可以在设备上看到/dev/ttyFIQ0

原来是这样。

用自带的sdk编译出来的resource.img,uart2被识别成ttyFIQ0,而非ttyS2.但百度盘下的ubuntu固件,把uart2识别成ttyS2,而非ttyFIQ0。
OK,已解决问题。
谢谢指导!