From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ua0-x233.google.com (mail-ua0-x233.google.com [IPv6:2607:f8b0:400c:c08::233]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id E006B80380 for ; Wed, 15 Mar 2017 08:28:08 -0700 (PDT) Received: by mail-ua0-x233.google.com with SMTP id f54so11253280uaa.1 for ; Wed, 15 Mar 2017 08:28:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=cWPxhbVgLAqP7GWX8PK5r0XXbcDA7MvMtKvQEJYwFpo=; b=RXjNlGbirER0oPfPRLYeULUUpoKy5Y3HJj2loAnPWBynZ0KepD4/nljZcJ2krtguY7 /cs0L0fKGMNDMjEgdSEUdloRQO/nEdztT+nSjphSVStBz2UsyUXn0Zt3f6s80HLZpc/Q J4ra+DrifQaaCBlgAeQWApFYIQZL6FaP3NbzZxzFlmHhGnR6qMhnqWlbuaDiNeazRRqU yaFshOu8rrxxs4Z4dpMLkvaUVLd/5Ad6Eep8oUxa0G+8SOMAaG5X93+hF53J9LXw8B7w pCNeER8mIxseuQb+9rmqN1SBftU5ITJ6LYx6Z6ZKs7FmajDsZgrFhF65Z1ATD/cVUZcg qKfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=cWPxhbVgLAqP7GWX8PK5r0XXbcDA7MvMtKvQEJYwFpo=; b=LI8esiDNBD1ES2xKMWqez6TDOfCWnUC6yUm6EDgMMqgTjwL8ysAmVloPm6rie+nqac E/tY0LELFa1ZHJwKbb2LF9ADYL4c7lC2uuyDRmw2XgTWzNO6IO8yNdHutDjWk2O610XP RTBZI+8lONuj5cljcSTpBCiZYAY0p+dLn2yu61209NekwhDdLAPbdPqGT0wYV23yUdPa +E122fHAooYz1cly32khm+g+bldLWNWLSfl1t2LSrlQBOvUPtKyX1/mClj/luJNfLyZv /HV8+bOGY/hl+LHHtlbKybc9spOinOuKkXhp45POPu75dfQnZhzrqY8+pPRLfRiwYnDa 2NRw== X-Gm-Message-State: AFeK/H10TZeg7a71Z/rimQrE9hszDWYjwEr+UFEBrybsGpO630l1TIsUL/zXrNa7pGZpN4+g7tEPTnlpBsuelQ== X-Received: by 10.176.94.3 with SMTP id z3mr1354031uag.145.1489591687890; Wed, 15 Mar 2017 08:28:07 -0700 (PDT) MIME-Version: 1.0 Received: by 10.31.151.68 with HTTP; Wed, 15 Mar 2017 08:28:07 -0700 (PDT) In-Reply-To: <426920F0-4266-4BB2-BF19-40715A0F1C01@apple.com> References: <426920F0-4266-4BB2-BF19-40715A0F1C01@apple.com> From: Michael Zimmermann Date: Wed, 15 Mar 2017 16:28:07 +0100 Message-ID: To: Andrew Fish Cc: Laszlo Ersek , Feng Tian , "edk2-devel@lists.01.org" , Star Zeng , Liming Gao Subject: Re: how to load drivers from additional FV's? X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Mar 2017 15:28:09 -0000 Content-Type: text/plain; charset=UTF-8 Laszlo: As Andrew said, the problem is nesting FV's. I've also tried different ways and depths of nesting FV's in the main FV, but none of them worked. Also, I'm using PrePi, Andrew: Yea that seems to be the problem, but how would I access other sections? ReadSection doesn't seem to take any section id or current section pointer. Thanks Michael On Wed, Mar 15, 2017 at 4:13 PM, Andrew Fish wrote: > >> On Mar 15, 2017, at 8:07 AM, Laszlo Ersek wrote: >> >> On 03/15/17 13:23, Michael Zimmermann wrote: >>> I'm trying to add another FV section FVMAIN_COMPACT so I can keep >>> Platform specific drivers in a separate, included fdf. >>> >>> I did this: >>> FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { >>> SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF >>> PROCESSING_REQUIRED = TRUE { >>> SECTION FV_IMAGE = FVMAIN >>> SECTION FV_IMAGE = FVMAINPLATFORM >>> } >>> } >>> >>> The image builds file and using uefitool I can verify that the new FV >>> is inside the compressed section. >>> But none of the drivers gets discovered/loaded and I get 'Protocol not >>> present!!' errors. >> >> The FVs need to be exposed to the DXE core via FV HOBs. See >> - 9.8.5 "Firmware Volume HOBs" in Volume 2 of the Platform Init 1.5 >> spec, >> - and more importantly, 5.7 "Firmware Volume HOB" in Volume 3 of the >> same. >> >> You can use the BuildFvHob() function for this. >> >> If the firmware volume contains PEIMs (... as well), then it has to be >> exposed to the PEI core too, I think. I think the >> PeiServicesInstallFvInfoPpi() function can be used for that. (See 3.3 >> "PEI" in Volume 3 of the PI spec.) >> >> ... I used the PeiFvInitialization() function in >> OvmfPkg/PlatformPei/Fv.c as a "cheat sheet" for the above. >> > > Laszlo, > > I think this case is an FV that is compressed and nested in another FV that is discovered. I think the issues is multiple FV Sections in an FV file are not currently supported. > > Thanks, > > Andrew Fish > > >> Thanks >> Laszlo >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel@lists.01.org >> https://lists.01.org/mailman/listinfo/edk2-devel >