X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=MdePkg%2FInclude%2FBase.h;h=00cce609f5622bce72c70ca9f9d3ac408487f765;hb=6149e6bb4f3b77f1f60379fb51b6bb414e9d9062;hp=d1b6c82f6ddaeb1c0609ae58c42be309a1bfe4df;hpb=f4ec40abd6533850edb914de59b7ef5f1c1c1bb6;p=mirror_edk2.git diff --git a/MdePkg/Include/Base.h b/MdePkg/Include/Base.h index d1b6c82f6d..00cce609f5 100644 --- a/MdePkg/Include/Base.h +++ b/MdePkg/Include/Base.h @@ -70,7 +70,7 @@ struct _LIST_ENTRY { #define STATIC static /// -/// Undclared type +/// Undeclared type /// #define VOID void @@ -183,6 +183,116 @@ struct _LIST_ENTRY { #define BIT62 0x4000000000000000ULL #define BIT63 0x8000000000000000ULL +#define SIZE_1KB 0x00000400 +#define SIZE_2KB 0x00000800 +#define SIZE_4KB 0x00001000 +#define SIZE_8KB 0x00002000 +#define SIZE_16KB 0x00004000 +#define SIZE_32KB 0x00008000 +#define SIZE_64KB 0x00010000 +#define SIZE_128KB 0x00020000 +#define SIZE_256KB 0x00040000 +#define SIZE_512KB 0x00080000 +#define SIZE_1MB 0x00100000 +#define SIZE_2MB 0x00200000 +#define SIZE_4MB 0x00400000 +#define SIZE_8MB 0x00800000 +#define SIZE_16MB 0x01000000 +#define SIZE_32MB 0x02000000 +#define SIZE_64MB 0x04000000 +#define SIZE_128MB 0x08000000 +#define SIZE_256MB 0x10000000 +#define SIZE_512MB 0x20000000 +#define SIZE_1GB 0x40000000 +#define SIZE_2GB 0x80000000 +#define SIZE_4GB 0x0000000100000000ULL +#define SIZE_8GB 0x0000000200000000ULL +#define SIZE_16GB 0x0000000400000000ULL +#define SIZE_32GB 0x0000000800000000ULL +#define SIZE_64GB 0x0000001000000000ULL +#define SIZE_128GB 0x0000002000000000ULL +#define SIZE_256GB 0x0000004000000000ULL +#define SIZE_512GB 0x0000008000000000ULL +#define SIZE_1TB 0x0000010000000000ULL +#define SIZE_2TB 0x0000020000000000ULL +#define SIZE_4TB 0x0000040000000000ULL +#define SIZE_8TB 0x0000080000000000ULL +#define SIZE_16TB 0x0000100000000000ULL +#define SIZE_32TB 0x0000200000000000ULL +#define SIZE_64TB 0x0000400000000000ULL +#define SIZE_128TB 0x0000800000000000ULL +#define SIZE_256TB 0x0001000000000000ULL +#define SIZE_512TB 0x0002000000000000ULL +#define SIZE_1PB 0x0004000000000000ULL +#define SIZE_2PB 0x0008000000000000ULL +#define SIZE_4PB 0x0010000000000000ULL +#define SIZE_8PB 0x0020000000000000ULL +#define SIZE_16PB 0x0040000000000000ULL +#define SIZE_32PB 0x0080000000000000ULL +#define SIZE_64PB 0x0100000000000000ULL +#define SIZE_128PB 0x0200000000000000ULL +#define SIZE_256PB 0x0400000000000000ULL +#define SIZE_512PB 0x0800000000000000ULL +#define SIZE_1EB 0x1000000000000000ULL +#define SIZE_2EB 0x2000000000000000ULL +#define SIZE_4EB 0x4000000000000000ULL +#define SIZE_8EB 0x8000000000000000ULL + +#define BASE_1KB 0x00000400 +#define BASE_2KB 0x00000800 +#define BASE_4KB 0x00001000 +#define BASE_8KB 0x00002000 +#define BASE_16KB 0x00004000 +#define BASE_32KB 0x00008000 +#define BASE_64KB 0x00010000 +#define BASE_128KB 0x00020000 +#define BASE_256KB 0x00040000 +#define BASE_512KB 0x00080000 +#define BASE_1MB 0x00100000 +#define BASE_2MB 0x00200000 +#define BASE_4MB 0x00400000 +#define BASE_8MB 0x00800000 +#define BASE_16MB 0x01000000 +#define BASE_32MB 0x02000000 +#define BASE_64MB 0x04000000 +#define BASE_128MB 0x08000000 +#define BASE_256MB 0x10000000 +#define BASE_512MB 0x20000000 +#define BASE_1GB 0x40000000 +#define BASE_2GB 0x80000000 +#define BASE_4GB 0x0000000100000000ULL +#define BASE_8GB 0x0000000200000000ULL +#define BASE_16GB 0x0000000400000000ULL +#define BASE_32GB 0x0000000800000000ULL +#define BASE_64GB 0x0000001000000000ULL +#define BASE_128GB 0x0000002000000000ULL +#define BASE_256GB 0x0000004000000000ULL +#define BASE_512GB 0x0000008000000000ULL +#define BASE_1TB 0x0000010000000000ULL +#define BASE_2TB 0x0000020000000000ULL +#define BASE_4TB 0x0000040000000000ULL +#define BASE_8TB 0x0000080000000000ULL +#define BASE_16TB 0x0000100000000000ULL +#define BASE_32TB 0x0000200000000000ULL +#define BASE_64TB 0x0000400000000000ULL +#define BASE_128TB 0x0000800000000000ULL +#define BASE_256TB 0x0001000000000000ULL +#define BASE_512TB 0x0002000000000000ULL +#define BASE_1PB 0x0004000000000000ULL +#define BASE_2PB 0x0008000000000000ULL +#define BASE_4PB 0x0010000000000000ULL +#define BASE_8PB 0x0020000000000000ULL +#define BASE_16PB 0x0040000000000000ULL +#define BASE_32PB 0x0080000000000000ULL +#define BASE_64PB 0x0100000000000000ULL +#define BASE_128PB 0x0200000000000000ULL +#define BASE_256PB 0x0400000000000000ULL +#define BASE_512PB 0x0800000000000000ULL +#define BASE_1EB 0x1000000000000000ULL +#define BASE_2EB 0x2000000000000000ULL +#define BASE_4EB 0x4000000000000000ULL +#define BASE_8EB 0x8000000000000000ULL + // // Support for variable length argument lists using the ANSI standard. // @@ -223,6 +333,13 @@ struct _LIST_ENTRY { // } // +/** + Return the size of argument that has been aligned to sizeof (UINTN). + + @param n The parameter size is to be aligned. + + @return The aligned size +**/ #define _INT_SIZE_OF(n) ((sizeof (n) + sizeof (UINTN) - 1) &~(sizeof (UINTN) - 1)) /// @@ -398,37 +515,37 @@ typedef INTN RETURN_STATUS; /** Produces a RETURN_STATUS code with the highest bit set. - @param StatusCode The status code value to convert into a warning code. + @param StatusCode The status code value to convert into a warning code. StatusCode must be in the range 0x00000000..0x7FFFFFFF. @return The value specified by StatusCode with the highest bit set. **/ -#define ENCODE_ERROR(StatusCode) (MAX_BIT | (StatusCode)) +#define ENCODE_ERROR(StatusCode) ((RETURN_STATUS)(MAX_BIT | (StatusCode))) /** Produces a RETURN_STATUS code with the highest bit clear. - @param StatusCode The status code value to convert into a warning code. + @param StatusCode The status code value to convert into a warning code. StatusCode must be in the range 0x00000000..0x7FFFFFFF. @return The value specified by StatusCode with the highest bit clear. **/ -#define ENCODE_WARNING(StatusCode) (StatusCode) +#define ENCODE_WARNING(StatusCode) ((RETURN_STATUS)(StatusCode)) /** Returns TRUE if a specified RETURN_STATUS code is an error code. This function returns TRUE if StatusCode has the high bit set. Otherwise FALSE is returned. - @param StatusCode The status code value to evaluate. + @param StatusCode The status code value to evaluate. @retval TRUE The high bit of StatusCode is set. @retval FALSE The high bit of StatusCode is clear. **/ -#define RETURN_ERROR(StatusCode) ((INTN) (StatusCode) < 0) +#define RETURN_ERROR(StatusCode) (((RETURN_STATUS)(StatusCode)) < 0) /// /// The operation completed successfully. @@ -463,7 +580,7 @@ typedef INTN RETURN_STATUS; #define RETURN_BUFFER_TOO_SMALL ENCODE_ERROR (5) /// -/// There is no data oending upon return. +/// There is no data pending upon return. /// #define RETURN_NOT_READY ENCODE_ERROR (6) @@ -484,7 +601,7 @@ typedef INTN RETURN_STATUS; #define RETURN_OUT_OF_RESOURCES ENCODE_ERROR (9) /// -/// An inconsistancy was detected on the file system causing the +/// An inconsistency was detected on the file system causing the /// operation to fail. /// #define RETURN_VOLUME_CORRUPTED ENCODE_ERROR (10) @@ -547,23 +664,23 @@ typedef INTN RETURN_STATUS; #define RETURN_ABORTED ENCODE_ERROR (21) /// -/// An ICMP error occurred during the nrtwork operation. +/// An ICMP error occurred during the network operation. /// #define RETURN_ICMP_ERROR ENCODE_ERROR (22) /// -/// A TFTP error occurred during the nrtwork operation. +/// A TFTP error occurred during the network operation. /// #define RETURN_TFTP_ERROR ENCODE_ERROR (23) /// -/// A protocol error occurred during the nrtwork operation. +/// A protocol error occurred during the network operation. /// #define RETURN_PROTOCOL_ERROR ENCODE_ERROR (24) /// /// A function encountered an internal version that was -/// iuncomptible with a version requested by the caller. +/// incompatible with a version requested by the caller. /// #define RETURN_INCOMPATIBLE_VERSION ENCODE_ERROR (25)