Linux 是否只有使用我们的内核模块才能设置波特率、线路规程等?
我为触摸屏监视器编写了一个内核模块,之前我使用在用户空间中编写的inputattach来打开串行端口、设置波特率、控制标志、线路规程等 但是现在我想在我们的驱动程序中直接实现inputattach的功能,因为我们不想从用户空间程序即inputattch触发我们的驱动程序 但是我无法在内核空间中设置c_-ispeed、c_-ospeed、c_-cflag、c_-iflag、行规程等Linux 是否只有使用我们的内核模块才能设置波特率、线路规程等?,linux,linux-kernel,kernel,linux-device-driver,kernel-module,Linux,Linux Kernel,Kernel,Linux Device Driver,Kernel Module,我为触摸屏监视器编写了一个内核模块,之前我使用在用户空间中编写的inputattach来打开串行端口、设置波特率、控制标志、线路规程等 但是现在我想在我们的驱动程序中直接实现inputattach的功能,因为我们不想从用户空间程序即inputattch触发我们的驱动程序 但是我无法在内核空间中设置c_-ispeed、c_-ospeed、c_-cflag、c_-iflag、行规程等 只有使用我们的内核模块才能设置波特率、线路规程等吗?您不能。termios和ioctl函数或系统调用用于用户地代码。
只有使用我们的内核模块才能设置波特率、线路规程等吗?您不能。termios和ioctl函数或系统调用用于用户地代码。而你可能不应该!保留userland inputattach。@BasileStrynkEvitch Starynkevitch是否有其他方法从内核空间设置波特率?我了解到可以使用serial_core.c ref在内核空间配置串行端口:[.如果是这样,有人能告诉我怎么做吗?即使可能,我建议尽量避免使用内核空间。我能知道为什么不建议在内核空间配置串行端口吗?