Commit Graph

49 Commits

Author SHA1 Message Date
niruiyu c86b273d90 Grub4Dos copies the BPB of the first partition to the MBR. If the DriverBindingStart() of the Fat driver gets run before that of Partition driver only the first partition can be recognized.
Let the driver binding version of Partition driver be higher than that of Fat driver to make sure the DriverBindingStart() of the Partition driver gets run before that of Fat driver so that all the partitions can be recognized.

Signed-off-by: niruiyu
Reviewed-by: erictian

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12528 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-12 02:45:02 +00:00
niruiyu 65fd395218 The patch enhances the Partition driver to return the media status (EFI_NO_MEDIA/EFI_MEDIA_CHANGED) even the other parameters are not valid for BlockIo2 interfaces.
Signed-off-by: niruiyu
Reviewed-by: erictian
Reviewed-by: qianouyang

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12378 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-19 06:24:50 +00:00
niruiyu 284ee2e829 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11987 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 03:55:36 +00:00
geekboy15a c582ad454b MdeModulePkg: Fixed memory corruption when BlockIo2 is not present
Fixed NULL pointer reference of BlockIo2.Media in partition code.  This resulted
in the interrupt vector table being corrupted in a legacy (CSM) based system.

Signed-off-by: geekboy15a
Reviewed-by: mdkinney
Reviewed-by: niruiyu
Reviewed-by: jljusten



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11711 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-27 20:04:45 +00:00
niruiyu 0e87144ee0 Change Partition/ScsiDxe driver to produce Block IO revision 3.
Signed-off-by: niruiyu
Reviewed-by: erictian

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11692 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-23 07:47:19 +00:00
qianouyang 86d8e19942 Update the function's descriptions (which is in AtaBus, AtaAtapiPassThru, Partition drivers) to make them be consistent with the code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11678 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-19 06:12:58 +00:00
qianouyang d0844d133b Add Pointer check for NULL before referring it and remove unnecessary pointer check in AtaAtapiPassThru and Partition Drivers.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11627 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-06 07:15:41 +00:00
qianouyang 490b5ea10b Add BlockIO2 Protocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11606 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-03 10:31:41 +00:00
niruiyu fcf5e49dc9 Change BlockIo drivers to return EFI_NO_MEDIA or EFI_MEDIA_CHANGED even the Buffer/BufferSize/Lba is invalid so that caller can probe the media status easier.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11584 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-25 09:31:57 +00:00
niruiyu 67f802edba Set the BlockIo.Media.IoAlign to 0 because the BlockIo produced by Partition driver consumes DiskIo for read/write operation which doesn't have IO alignment requirement.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11493 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-01 03:07:38 +00:00
niruiyu fe3b68bb0f Per UEFI Spec, LowestAlignedLba and LogicalBlocksPerPhysicalBlock must be 0 for logical partitions.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10668 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-20 03:11:58 +00:00
erictian 15cc67e616 raise TPL to TPL_CALLBACK level at DriverBindingStart() for all usb-related modules, which prevent DriverBindingStop() from being invoked when DriverBindingStart() runs.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10460 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-05 05:21:38 +00:00
hhtian e5eed7d364 Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10418 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24 09:33:45 +00:00
lgao4 6bfbb5f0e0 1. Correct File header to ## @file
2. Remove unnecessary .common] postfix on section.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10052 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-24 00:21:16 +00:00
qhuang8 47e1a80bbc Update partition driver to not produce BlockIo if a GPT with OS-specific field (BIT1) set in its partition attributes.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9293 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-21 14:22:14 +00:00
vanjeff 9be2900668 1. updated "the Bus Driver that creates all of its child handles on the first call to Start()" not to create any child handle if RemainingDeviepath is the End of Device Path Node, per UEFI 2.3.
The others changes include:
a. Check RemainingDevicePath at beginning of Supported(), make sure it has been verified before Start() is called.
b. Check IO protocol firstly rather than EfiDevicePathProtocolGuid, reduce the times entering into Start() function because EfiDevicePathProtocolGuid existed on most of handle.

2. roll back serial drivers not to create child device, if the device speicifed by remainingdevicepath cannot find in the created devices list. 

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9267 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-16 03:05:46 +00:00
qhuang8 9afd0514a6 Enhance Partition driver for EFI_NO_MEDIA case
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9070 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-14 05:41:10 +00:00
qhuang8 339c754a01 Enhance GPT to remove the assumption that GPT partition entry in PMBR must be the first partition entry.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9069 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-14 05:39:12 +00:00
qhuang8 737dfc3612 Fix a potential issue to use FreePool() with NULL pointer.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9068 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-14 05:37:38 +00:00
eric_tian 15a865075c Roll back the change in Partition driver. currently we enhance the EHCI driver to guarantee that the EHCI controller get attached to the EHCI controller before the UHCI driver attaches to the UHCI controller. This way can avoid the case happen that UHCI sees the disconnect and EHCI sees the connect event due to the control transfer in shared port. It may cause Partition.Start to be interrupted by Partition.Stop.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8991 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-24 04:53:12 +00:00
eric_tian c8148ea20d if Usb mass storage interface returns EFI_DEVICE_ERROR, we should jump out the loop which is used to determine if the current block device supports GPT/Torito/MBR in Partition driver. This way can avoid Partition.start is interrupted by itself Partition.stop().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8977 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-22 02:01:41 +00:00
qhuang8 071b7221a5 Use DiskIo->WriteDisk() API to avoid alignment issue.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8445 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-02 23:51:18 +00:00
gikidy 0254efc01e Replace references to RFC 3066 with RFC 4646.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8212 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-30 05:32:11 +00:00
qhuang8 7059dad904 Fix the bug that the "Offset" parameter for DiskIo protocol should be byte-oriented.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8175 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-27 04:03:40 +00:00
qhuang8 96f99e1df8 Use DiskIo->ReadDisk() API to avoid alignment issue.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8144 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-22 02:52:32 +00:00
gikidy f1e2b80277 Using sizeof(EFO_BLOCK_IO_MEDIA) replace Macro.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8054 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-10 02:50:31 +00:00
gikidy 9e9f86ecb6 Modified for use reversion field and fix a typo.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8006 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-02 02:27:07 +00:00
gikidy a503cc6971 Meta-data review.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7313 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-20 03:04:55 +00:00
qhuang8 48557c6550 Code scrub DxeIpl, Runtime, DevicePath, FvbServicesLib, DiskIo, Partition, English, EBC.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7105 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-23 16:20:43 +00:00
jji4 7df7393feb check the usage of %d,%x,%ld,%lx and so on in debug print statement.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7080 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-18 08:48:36 +00:00
qhuang8 f3f2e05db8 Clean up to update the reference of the these macros:
EFI_SIGNATURE_16 -> SIGNATURE_16
  EFI_SIGNATURE_32 -> SIGNATURE_32
  EFI_SIGNATURE_64 -> SIGNATURE_64
  EFI_FIELD_OFFSET -> OFFSET_OF
  EFI_MAX_BIT      -> MAX_BIT
  EFI_MAX_ADDRESS  -> MAX_ADDRESS
These macros are not defined in UEFI spec. It makes more sense to use the equivalent macros in Base.h to avoid alias.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7056 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-16 15:34:21 +00:00
jji4 d354ab7ff9 1)Global variables have been moved backward ahead of functions.
2)INF comments have been reviewed.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6839 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-04 07:12:25 +00:00
gikidy cfc8865f17 Remove some useless EDK_RELEASE_VERSION, EFI_SPECIFICATION_VERSION ,and review VALID_ARCHITECTURES in inf files with DSC file.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6818 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-03 09:08:05 +00:00
klu2 1232b21473 1, Add <Library/DevicePathLib.h> for all source that use device path utility macros
2, Add DevicePathLib library class to module's INF that use device path utility macros

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6456 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-11 15:42:40 +00:00
vanjeff 88a1936797 re-defined CDROM_VOLUME_DESCRIPTOR to be a union including Boot Record Volume Descriptor and Primary Volume Description.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6251 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-27 06:51:17 +00:00
xli24 4f06d35a0f Move definition of EFI_PARTITION_ENTRY_STATUS from IndustryStandard in MDE Package to implementation of PartitionDxe module.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6156 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-20 15:21:09 +00:00
lgao4 e872988180 remove the unused msa files in MdeModulePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5726 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-25 05:03:29 +00:00
qhuang8 ff61847ddc Code scrub for DiskIo, Partition & Unicode Collation
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5519 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-18 09:49:25 +00:00
qhuang8 ea7cb08c0a Minor coding style adjustment for DiskIo, Partition, English and Ebc modules.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5200 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-14 06:07:07 +00:00
qhuang8 a8d0c20e7a Add doxygen style comments for functions in Partition & Disk IO modules.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5182 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-08 04:17:44 +00:00
qhuang8 f42be64210 Update all files to follow doxygen style file header.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5002 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-08 04:46:45 +00:00
vanjeff c63cd426a8 Merger tracker: Dell - Cannot detect FAT16 partition if the 1st entry in the partition table is
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4807 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-07 07:47:21 +00:00
qhuang8 8a7d75b062 Clean up: update "EFI" to "UEFI" if applicable.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4317 6f19259b-4bc3-4df7-8a09-765794883524
2007-11-22 06:00:39 +00:00
qhuang8 d1aeb0bdc3 Add compiler hint of "GLOBAL_REMOVE_IF_UNREFERENCED" to prevent static unicode string table linked into final image if both PcdComponentNameDisabled and PcdComponentName2Disabled are set to TRUE.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4084 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-11 03:36:31 +00:00
qhuang8 1307dcd745 Add compiler hint of "GLOBAL_REMOVE_IF_UNREFERENCED" to prevent component name structures linked into final image if PcdComponentNameDisabled or PcdComponentName2Disabled is set to TRUE.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4057 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-09 07:08:08 +00:00
qhuang8 d38a0f446f Update to support to produce Component Name and & Component Name 2 protocol based on Feature flag PcdComponentNameDisable & PcdComponentName2Disable.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4003 6f19259b-4bc3-4df7-8a09-765794883524
2007-09-30 03:01:48 +00:00
mdkinney cd2d846866 Fix bug in GPT check that was introduced when a CompareMem() call was changed to a '==' operator. It should be a '!=' operator.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3557 6f19259b-4bc3-4df7-8a09-765794883524
2007-08-06 22:59:42 +00:00
vanjeff dd0687a4b1 remove some comments introduced by tools.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3383 6f19259b-4bc3-4df7-8a09-765794883524
2007-07-20 04:33:45 +00:00
vanjeff adbcbf8ffc Modules cleanup.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3244 6f19259b-4bc3-4df7-8a09-765794883524
2007-07-16 05:48:11 +00:00