Ryan, I'm uncomfortable with this hack and its side effects -- if you want to 
ensure that the boot process will boot any device path regardless of the MBR 
signature this can be handled as a modification to the device path matching 
logic in BDS.  This could be a platform policy PCD boolean like 
'BootIgnoreMbrSignature' or something.

Also you mentioned about changes going upstream -- are the details of the 
upstreaming process from uefi.next to edk2 svn documented somewhere?  Are you 
ensuring that all upstreamed patches come from parties that have signed the 
Contributor's Agreement?

Thanks,

Eugene

-----Original Message-----
From: [email protected] 
[mailto:[email protected]] On Behalf Of Ryan Harkin
Sent: Tuesday, February 19, 2013 5:09 AM
To: [email protected]; [email protected]; 
[email protected]; [email protected]; [email protected]
Subject: [PATCH] MdeModulePkg/PartitionDxe: hack MBR unique signature to zero

This is a hack and is not intended to go upstream, but will be useful for 
Linaro's short term goals.

Linaro's development boards use SD cards, currently we have a problem where 
each unique SD card has a different UUID when created with linaro-media-create 
/ linaro-android-media create.

This means that no one Boot Device configuration can boot Linaro images without 
some manual intervention from the user.

This hack will zero the signature (UUID) read from the card meaning that all SD 
cards will appear to be the same card.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ryan Harkin <[email protected]>
---
 MdeModulePkg/Universal/Disk/PartitionDxe/Mbr.c |    9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/MdeModulePkg/Universal/Disk/PartitionDxe/Mbr.c 
b/MdeModulePkg/Universal/Disk/PartitionDxe/Mbr.c
index 4c64663..ef16396 100644
--- a/MdeModulePkg/Universal/Disk/PartitionDxe/Mbr.c
+++ b/MdeModulePkg/Universal/Disk/PartitionDxe/Mbr.c
@@ -155,6 +155,15 @@ PartitionInstallMbrChildHandles (
                      BlockSize,
                      Mbr
                      );
+
+  // RMH - hack - Linaro's development boards use SD cards, currently 
+ we have  // a problem where each unique SD card has a different UUID 
+ when created  // with linaro-media-create / linaro-android-media create.
+  // This means that no one Boot Device configuration can boot Linaro 
+ images  // without some manual intervention from the user.
+  // This hack will zero the signature (UUID) read from the card.
+  ZeroMem(&(Mbr->UniqueMbrSignature[0]), sizeof 
+ (Mbr->UniqueMbrSignature));
+
   if (EFI_ERROR (Status)) {
     Found = Status;
     goto Done;
--
1.7.9.5


_______________________________________________
boot-architecture mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/boot-architecture

_______________________________________________
boot-architecture mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/boot-architecture

Reply via email to