Platform: Rockchip
OS: Android 6.0
Kernel: 3.10.92
有网友遇到/dev/ttyS0如何改成/dev/ttyS4的困惑,确实它的命名不是按顺序的,比如我使用了三个串口,名字不是连续的:
root@rk3288:/ # ls /dev/ttyS*
/dev/ttyS0
/dev/ttyS1
/dev/ttyS4
事实上这个值是在dtsi中获取的,代码流程:
static int serial_rk_probe(struct platform_device *pdev)
{
#ifdef CONFIG_OF
of_rk_serial_parse_dt(pdev->dev.of_node, &rks);
pdev->id = rks.id;
#endif
}
static int of_rk_serial_parse_dt(struct device_node *np, struct of_rk_serial *rks)