From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-oa1-f54.google.com (mail-oa1-f54.google.com [209.85.160.54]) by mx.groups.io with SMTP id smtpd.web09.2420.1652737791761260003 for ; Mon, 16 May 2022 14:49:51 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20210112 header.b=MnruMv9c; spf=pass (domain: gmail.com, ip: 209.85.160.54, mailfrom: kingsumos@gmail.com) Received: by mail-oa1-f54.google.com with SMTP id 586e51a60fabf-d6e29fb3d7so21960061fac.7 for ; Mon, 16 May 2022 14:49:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=QjLfD6Nl0bD27MIXhWCcLluwVXcQXBEbMo+0Ge8KONg=; b=MnruMv9ct18kXdjKMbwE3mBWr5uhBEttYQxMv7AgdeR4vRCxpc7IK2vfCfb6ey0x5r cJ3sWaUTnq/3zqy97FlAId/AqJQJ6jWN/qWCzv7gLl15VuKgzfm9OW1YWD11ZCMsvx5M wY4GoQpVEgcj89E8WpbnzEhHMnDr4k+4x67AWuD9N4sN4dH+ctiFRdAN472OtWfE+Ghv 7MjF1+ElbUt0qyOU6Qrek9yDm8VwWmnlNe60uPAUOj2beRFdGh4eTpFObNFQKh0b1q4O 0Gxj/FqSfuRLpdL683hQOYIgYxNM2ELIZ+EDWR2DFiz3rgHNf1Z/HqW/3YSBC70a1OqE IpFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=QjLfD6Nl0bD27MIXhWCcLluwVXcQXBEbMo+0Ge8KONg=; b=d5kyixcimTeWhGF1nThQEhP9ENEvQEbowmjVCjAGi4S7IollbFPslZpeL8P8WzRKOF tV6vP43Yf2UjDN7a94g84dEVG+twWWQab4f1zvhhDVEdn6TrPu/3XAJmI20F9BnW5I0A m1RPWJTzqNg0yMEheZlmy1OZXrjE8wTcjZLEqBcXijJpCDu2YRHp7M9sIY+WMIUZxEkI LRgSsnj3ujdmF/SZDnP7gVB/WUwmvKqpP1TXZE0+kdUiwtWh6Y9k/BmYqZLBy3V/t12z 0KHs8Zx1Q8GQY+O9jGaH3AIUVHkzadzlKNuUgaG7lNu/iFblswIMOZbc9u4Qtf+NLTF/ /0WA== X-Gm-Message-State: AOAM531f1+LOVOrZVU5sMSe+bRzPopVjDNmSIuc30qdpHR2s9b35Psh+ 8q4RFI6FDwyDtCGecIPazitZzucTgQCmh81ULsGsyc/RvAc= X-Google-Smtp-Source: ABdhPJyPgv9xjxdto6rYw+RG2Vg7DdHsYQaMlmYJLFl4up1u7MQy7Gg1XLI9bwIDcspmOaKLwI1f7g7Ruasta19pmmU= X-Received: by 2002:a05:6871:b07:b0:f1:a629:2b85 with SMTP id fq7-20020a0568710b0700b000f1a6292b85mr3153976oab.76.1652737790672; Mon, 16 May 2022 14:49:50 -0700 (PDT) MIME-Version: 1.0 From: "King Sumo" Date: Mon, 16 May 2022 18:49:44 -0300 Message-ID: Subject: How to prevent a DXE driver from loading automatically To: devel@edk2.groups.io Content-Type: multipart/alternative; boundary="000000000000eb874805df280076" --000000000000eb874805df280076 Content-Type: text/plain; charset="UTF-8" Hi All, I'm including EFI drivers for an Intel Network card, but this adds a huge delay in the system startup when the ports are being initialized (the server has several slots). The network cards will be used only for PXE boot during the staging/setup process, so I'm thinking of adding a configurable option to enable/disable the PXE boot. So only if enabled the drivers will be loaded, and after the staging the PXE can be disabled via BMC or something else. Do we have any way to prevent a driver from being loaded automatically? Such as using some conditions or dependencies? For instance, if some driver is not loaded or some protocol isn't available? One option will be setting the EFI files as RAW or FREEFORM so they will not be recognized as a DRIVER during the DXE phase. But it will be required to implement the driver loading, I'm not sure how difficult it will be (maybe using GetSectionFromAnyFv to load the contents to a buffer, but how to load it?). Kind Regards, Sumo --000000000000eb874805df280076 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi All,

I'm including EFI drivers f= or an Intel=C2=A0Network card, but this adds a huge delay in the=C2=A0syste= m startup when the ports are being initialized (the server has several slot= s). The network cards will be used only for PXE boot during the staging/set= up process, so I'm thinking of adding a configurable option to enable/d= isable the PXE boot. So only if enabled the drivers will be loaded, and aft= er the staging the PXE can be disabled via BMC or something else.

Do we have any way to prevent a driver from being load= ed automatically? Such as using some conditions or dependencies? For instan= ce, if some driver is not loaded or some protocol isn't available?

One option will be setting the EFI files as RAW = or FREEFORM so they will not be recognized as a DRIVER during the DXE phase= . But it will be required to implement the driver loading, I'm not sure= how difficult it will be (maybe using=C2=A0GetSectionFromAnyFv to load the= contents to a buffer, but how to load it?).=C2=A0

Kind Regards,
Sumo
--000000000000eb874805df280076--