【问题标题】:How to set dxe drivers loading sequence?如何设置 dxe 驱动程序加载顺序?
【发布时间】:2020-08-23 03:47:41
【问题描述】:

据我所知,DXE 调度程序首先加载在 Apriori 文件中指定的驱动程序。然后加载其他考虑依赖项。 我想在 AMITSE 之前或之后加载实用程序。如果在 AMITSE 之后,想法是 CreateEvent(EVT_SIGNAL_EXIT_BOOT_SERVICES, ..., MAINFCN,...),但在 MAINFCN 中我无法处理其他事件。 也许更好的策略是在收到 EVT_SIGNAL_EXIT_BOOT_SERVICES 时加载 UEFI_APPLICATION?

我要解决的主要问题是 AMITSE 屏幕之间的执行驱动程序(邀请按键进入设置和设置屏幕)。

所以我尝试了:

  1. 将驱动程序放在卷中的不同位置 - 未解决问题(驱动程序在 AMITSE 邀请屏幕后加载)。
  2. 在 [depex] 部分设置 TRUE - 根本没有加载驱动程序。
  3. CreateEvent(..) - 无法处理其他事件(捕捉按键)。

没试过:

  1. 在执行启动服务之前引发事件以加载应用程序的驱动程序。

也许有更简单的方法?

【问题讨论】:

    标签: uefi edk2


    【解决方案1】:

    通过编写建议运行应用程序的驱动程序解决。

    创建事件和捕获 EVT_SIGNAL_EXIT_BOOT_SERVICES 的想法不起作用,因为在此 [实际上是在 ExitBootServices()] 事件之后,EFI 系统表的几个字段应设置为 NULL。这些包括 ConsoleInHandle、ConIn、ConsoleOutHandle、ConOut、 StandardErrorHandle、StdErr 和 BootServicesTable。 [UEFI 规范,版本 2.8 第 218-219 页]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-02
      • 2020-02-06
      • 2011-08-24
      • 2015-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-22
      相关资源
      最近更新 更多