From: Paulo Alcantara <pcacjr@zytor.com>
To: "Ni, Ruiyu" <ruiyu.ni@intel.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Cc: "Kinney, Michael D" <michael.d.kinney@intel.com>,
"Gao, Liming" <liming.gao@intel.com>,
Laszlo Ersek <lersek@redhat.com>
Subject: Re: [PATCH v2 1/3] MdePkg: Add UDF volume structure definitions
Date: Mon, 18 Sep 2017 10:50:37 -0300 [thread overview]
Message-ID: <3481c2e6-0744-b50a-e287-30812a709949@zytor.com> (raw)
In-Reply-To: <734D49CCEBEEF84792F5B80ED585239D5BA4413A@SHSMSX151.ccr.corp.intel.com>
Hi Ruiyu,
On 9/17/2017 9:28 PM, Ni, Ruiyu wrote:
> #define _GET_TAG_ID(_Pointer) \
> (((UDF_DESCRIPTOR_TAG *)(_Pointer))->TagIdentifier)
>
> #define IS_PD(_Pointer) \
> ((BOOLEAN)(_GET_TAG_ID (_Pointer) == 5))
> #define IS_LVD(_Pointer) \
> ((BOOLEAN)(_GET_TAG_ID (_Pointer) == 6))
> #define IS_TD(_Pointer) \
> ((BOOLEAN)(_GET_TAG_ID (_Pointer) == 8))
>
> #define IS_AVDP(_Pointer) \
> ((BOOLEAN)(_GET_TAG_ID (_Pointer) == 2))
>
> Paulo,
> If you take a look at Pci22.h in the same directory, all macros are started
> as "IS_PCI_".
> How about changing the above IS_xxx to IS_UDF_xxx?
Looks good to me. I'll change them.
> Shall we change AVDP to AVD, following the same naming style as PD, LVD and TD?
There is no "Anchor Volume Descriptor" but "Anchor Volume Descriptor
Pointer", so we still need to keep 'P'.
> How about changing _Pointer to _Tag or DescriptorTag?
I will change it to _Tag. _Pointer is really a bad name. Thanks! :-)
Paulo
>
>
> Thanks/Ray
>
>> -----Original Message-----
>> From: Paulo Alcantara [mailto:pcacjr@zytor.com]
>> Sent: Sunday, September 17, 2017 9:13 PM
>> To: edk2-devel@lists.01.org
>> Cc: Paulo Alcantara <pcacjr@zytor.com>; Kinney, Michael D
>> <michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>; Laszlo
>> Ersek <lersek@redhat.com>; Ni, Ruiyu <ruiyu.ni@intel.com>
>> Subject: [PATCH v2 1/3] MdePkg: Add UDF volume structure definitions
>>
>> This patch adds a fewe more UDF structures in order to detect Logical
>> Volume and Partition descriptors during Main Volume Descriptor Sequence
>> in Partition driver.
>>
>> Cc: Michael D Kinney <michael.d.kinney@intel.com>
>> Cc: Liming Gao <liming.gao@intel.com>
>> Cc: Laszlo Ersek <lersek@redhat.com>
>> Cc: Ruiyu Ni <ruiyu.ni@intel.com>
>> Contributed-under: TianoCore Contribution Agreement 1.1
>> Signed-off-by: Paulo Alcantara <pcacjr@zytor.com>
>> ---
>> MdePkg/Include/IndustryStandard/Udf.h | 63 ++++++++++++++++++++
>> 1 file changed, 63 insertions(+)
>>
>> diff --git a/MdePkg/Include/IndustryStandard/Udf.h
>> b/MdePkg/Include/IndustryStandard/Udf.h
>> index 0febb4bcda..6cc42f8543 100644
>> --- a/MdePkg/Include/IndustryStandard/Udf.h
>> +++ b/MdePkg/Include/IndustryStandard/Udf.h
>> @@ -27,9 +27,19 @@
>> #define _GET_TAG_ID(_Pointer) \
>> (((UDF_DESCRIPTOR_TAG *)(_Pointer))->TagIdentifier)
>>
>> +#define IS_PD(_Pointer) \
>> + ((BOOLEAN)(_GET_TAG_ID (_Pointer) == 5)) #define IS_LVD(_Pointer) \
>> + ((BOOLEAN)(_GET_TAG_ID (_Pointer) == 6)) #define IS_TD(_Pointer) \
>> + ((BOOLEAN)(_GET_TAG_ID (_Pointer) == 8))
>> +
>> #define IS_AVDP(_Pointer) \
>> ((BOOLEAN)(_GET_TAG_ID (_Pointer) == 2))
>>
>> +#define LV_UDF_REVISION(_Lv) \
>> + *(UINT16 *)(UINTN)(_Lv)->DomainIdentifier.IdentifierSuffix
>> +
>> #pragma pack(1)
>>
>> typedef struct {
>> @@ -55,6 +65,59 @@ typedef struct {
>> UINT8 Reserved[480];
>> } UDF_ANCHOR_VOLUME_DESCRIPTOR_POINTER;
>>
>> +typedef struct {
>> + UINT8 CharacterSetType;
>> + UINT8 CharacterSetInfo[63];
>> +} UDF_CHAR_SPEC;
>> +
>> +typedef struct {
>> + UINT8 Flags;
>> + UINT8 Identifier[23];
>> + UINT8 IdentifierSuffix[8];
>> +} UDF_ENTITY_ID;
>> +
>> +typedef struct {
>> + UINT32 LogicalBlockNumber;
>> + UINT16 PartitionReferenceNumber;
>> +} UDF_LB_ADDR;
>> +
>> +typedef struct {
>> + UINT32 ExtentLength;
>> + UDF_LB_ADDR ExtentLocation;
>> + UINT8 ImplementationUse[6];
>> +} UDF_LONG_ALLOCATION_DESCRIPTOR;
>> +
>> +typedef struct {
>> + UDF_DESCRIPTOR_TAG DescriptorTag;
>> + UINT32 VolumeDescriptorSequenceNumber;
>> + UDF_CHAR_SPEC DescriptorCharacterSet;
>> + UINT8 LogicalVolumeIdentifier[128];
>> + UINT32 LogicalBlockSize;
>> + UDF_ENTITY_ID DomainIdentifier;
>> + UDF_LONG_ALLOCATION_DESCRIPTOR LogicalVolumeContentsUse;
>> + UINT32 MapTableLength;
>> + UINT32 NumberOfPartitionMaps;
>> + UDF_ENTITY_ID ImplementationIdentifier;
>> + UINT8 ImplementationUse[128];
>> + UDF_EXTENT_AD IntegritySequenceExtent;
>> + UINT8 PartitionMaps[6];
>> +} UDF_LOGICAL_VOLUME_DESCRIPTOR;
>> +
>> +typedef struct {
>> + UDF_DESCRIPTOR_TAG DescriptorTag;
>> + UINT32 VolumeDescriptorSequenceNumber;
>> + UINT16 PartitionFlags;
>> + UINT16 PartitionNumber;
>> + UDF_ENTITY_ID PartitionContents;
>> + UINT8 PartitionContentsUse[128];
>> + UINT32 AccessType;
>> + UINT32 PartitionStartingLocation;
>> + UINT32 PartitionLength;
>> + UDF_ENTITY_ID ImplementationIdentifier;
>> + UINT8 ImplementationUse[128];
>> + UINT8 Reserved[156];
>> +} UDF_PARTITION_DESCRIPTOR;
>> +
>> #pragma pack()
>>
>> #endif
>> --
>> 2.11.0
>
>
next prev parent reply other threads:[~2017-09-18 13:50 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-17 13:13 [PATCH v2 0/3] UDF partition driver fix Paulo Alcantara
2017-09-17 13:13 ` [PATCH v2 1/3] MdePkg: Add UDF volume structure definitions Paulo Alcantara
2017-09-18 0:28 ` Ni, Ruiyu
2017-09-18 0:42 ` Ni, Ruiyu
2017-09-18 13:52 ` Paulo Alcantara
2017-09-18 13:50 ` Paulo Alcantara [this message]
2017-09-17 13:13 ` [PATCH v2 2/3] MdeModulePkg/PartitionDxe: Fix creation of UDF logical partition Paulo Alcantara
2017-09-18 0:54 ` Ni, Ruiyu
2017-09-18 16:38 ` Paulo Alcantara
2017-09-20 8:14 ` Ni, Ruiyu
2017-09-20 9:59 ` Laszlo Ersek
2017-09-20 10:11 ` Ni, Ruiyu
2017-09-20 11:09 ` Laszlo Ersek
2017-09-20 12:36 ` Gao, Liming
2017-09-17 13:13 ` [PATCH v2 3/3] MdeModulePkg/UdfDxe: Rework driver to support PartitionDxe changes Paulo Alcantara
2017-09-18 1:00 ` Ni, Ruiyu
2017-09-18 16:51 ` Paulo Alcantara
2017-09-20 7:52 ` Ni, Ruiyu
2017-09-18 4:52 ` [PATCH v2 0/3] UDF partition driver fix Ni, Ruiyu
2017-09-18 17:49 ` Paulo Alcantara
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3481c2e6-0744-b50a-e287-30812a709949@zytor.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox