在Linux中,当控制台和UART绑定发生时,是否可以从控制台解除UART绑定,并在运行时将其绑定到其他模块(GPS)。
我的主板有一个通用异步收发器,我可以在runtime.if的控制台和全球定位系统之间切换吗?是,我该怎么做?如果没有,我需要做的黑客是什么?
发布于 2015-07-23 14:29:30
是的你可以。在运行时,您可以解除绑定/绑定任何驱动程序。您可以在此处找到更多信息:
https://lwn.net/Articles/143397/
你可以为你的UART (和GPS )找到正确的驱动程序,但我不确定。从来没有玩过)这里:
cd /sys/class/tty/<your-device>/device/driver/然后,在这些目录中有sysfs文件bind和unbind。用于解除设备与驱动程序绑定的设备ID通常显示在驱动程序目录中。
platform_device一点也不特殊,它的行为与其他驱动程序一样。通常情况下,平台设备的设备id是它的名称(后面没有总线枚举)。下面是在我的PC上使用platform_device的示例:
# ls /sys/bus/platform/devices/
alarmtimer gpio_ich iTCO_wdt platform-framebuffer.0 PNP0800:00 PNP0C14:00
coretemp.0 hp-wmi microcode PNP0003:00 PNP0C04:00 serial8250
Fixed MDIO bus.0 i8042 pcspkr PNP0103:00 PNP0C0C:00
# cd /sys/bus/platform/drivers/serial8250/
# ls
bind serial8250 uevent unbindhttps://stackoverflow.com/questions/31578475
复制相似问题