u-boot - 控制字符支持已禁用

时间:2013-08-02 09:25:17

标签: u-boot

要停止自动引导,我们有2个ifdef(CONFIG_AUTOBOOT_STOP_ [STR2 || STR1])。实施起来非常容易和直接。使用单个“击键”或使用相位来停止启动对用户来说具有其自身的优势。但是,为什么忽略关键支持被忽略,比如[ctrl + anykey]组合。特别是,BIOS供应商更喜欢至少同时按下2个或更多键来停止启动。避免这种情况的任何具体原因。除了简单之外,有任何具体的理由坚持这一点。

1 个答案:

答案 0 :(得分:0)

CTRL 键是一个修饰符。并且 CTRL + KEY 组合注册为正常 KEY 按下事件并设置其他标志以指示修改键的状态。请阅读Linux kernel keyboard driver documentation中的键盘驱动程序中的修饰符

另请查看优秀的 article on how keyboards work

处理所有修饰符需要代码中的额外复杂性。 Bootloader在严格受限的环境中运行。特别是在嵌入式系统(u-boot的用途)上,期望整个u-boot在64 / 128K的RAM(二进制+堆栈)内加载和运行是很常见的。

考虑到在我们需要使用修饰符之前我们的键盘上有> 50个唯一键才能发出声音,因此通常不会在u-boot中实现对它们的软件支持。