Skip to content
This repository has been archived by the owner on Jan 8, 2024. It is now read-only.

Commit

Permalink
Update pal from commit: 7b7ea6f3e
Browse files Browse the repository at this point in the history
* Bump version number to 312
* Remove public references to ThreadTraceViewer
* [cmake] Move shared, res, include functionality to the appropriate locations
* Enable shader write compression for Depth+Stencil images on GFX10
* [GpuDebug] SurfaceCapture add missing barriers
* CPU Perf Simplify Binning code
* [PAL]gfx9CommandGenerator using wrong packet to set index_type
  • Loading branch information
JaxLinAMD committed May 26, 2021
1 parent de5f376 commit 9786fa8
Show file tree
Hide file tree
Showing 69 changed files with 23,143 additions and 21,164 deletions.
6 changes: 4 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,11 @@ add_library(pal STATIC)
add_library(AMD::PAL ALIAS pal)

### Add Subdirectories #################################################################################################
add_subdirectory(src)
add_subdirectory(inc)
add_subdirectory(cmake)
add_subdirectory(inc)
add_subdirectory(res)
add_subdirectory(src)
add_subdirectory(shared)

### Build Definitions ##################################################################################################
pal_compile_definitions(pal)
Expand Down
2 changes: 1 addition & 1 deletion cmake/PalOptions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,6 @@ set( PAL_VAM_PATH ${PROJECT_SOURCE_DIR}/src/core/imported/vam CACHE P
set( PAL_ADDR_PATH ${PROJECT_SOURCE_DIR}/src/core/imported/addrlib CACHE PATH "Specify the path to the ADDRLIB project.")

if (PAL_BUILD_GPUOPEN)
set(PAL_GPUOPEN_PATH ${PROJECT_SOURCE_DIR}/shared/gpuopen CACHE PATH "Specify the path to the GPUOPEN_PATH project.")
set(PAL_GPUOPEN_PATH "default" CACHE PATH "Specify the path to the GPUOPEN_PATH project.")
endif()

1 change: 1 addition & 0 deletions cmake/PalOverrides.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ if(PAL_BUILD_GPUOPEN)

# PAL override to build GPUOpen with support for the standard driver protocols
pal_override(GPUOPEN_BUILD_STANDARD_DRIVER_PROTOCOLS ON)

endif()

# GPU Overrides
Expand Down
8 changes: 8 additions & 0 deletions inc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,11 @@

file(GLOB_RECURSE PAL_HEADER_SOURCES CONFIGURE_DEPENDS *.h *.hpp)
target_sources(pal PRIVATE ${PAL_HEADER_SOURCES} CMakeLists.txt)

target_include_directories(pal PUBLIC
.
core
gpuUtil
util
)

40 changes: 40 additions & 0 deletions inc/core/palDevice.h
Original file line number Diff line number Diff line change
Expand Up @@ -1090,6 +1090,9 @@ struct DeviceProperties
/// CPU coherent.
/// Note: Only valid if @ref supportGl2Uncached is true.

uint32 maxGsOutputVert; ///< Maximum number of GS output vertices.
uint32 maxGsTotalOutputComponents; ///< Maximum number of GS output components totally.

union
{
struct
Expand Down Expand Up @@ -4737,6 +4740,43 @@ class IDevice
m_pClientData = pClientData;
}

#if defined(PAL_DOPP)
/// Sets Primary Source ID For DOPP processing.
/// This function is an Escape call to tell KMD which Screen DOPP will process.
///
/// @param [in] pScreen Pal::IScreen* of the Primary selected for DOPP processing.
///
/// @returns Success if Primary for DOPP processing is set.
virtual Result SetPrimarySourceIDForDopp(Pal::IScreen* pScreen) = 0;

/// Get Dopp Primary Surface Info for previously selected Screen.
/// This function is an Escape call to query KMD about Primary surface properties
/// of previously selected surface.
///
/// @param [out] pDesktopProp A pointer to Extent3d structure.
/// @returns Success if Extent3d properties are retreved.
virtual Result GetDoppPrimarySurfaceInfo(Extent3d* pDesktopProp) = 0;

/// Enable Post Processing in DOPP.
/// This function is an Escape call to tell KMD to enable DOPP post processing.
///
/// @param [in] enable Enable/Disable DOPP Post Processing.
///
/// @returns Success if call is successful.
virtual Result EnablePostProcessDopp(bool enable) = 0;

/// Present Texture To Video Dopp
/// This function is an Escape call to pass present texture handle to KMD.
/// Then KMD will flip (make visible) this surface instead of original desktop
/// surface on next SwapBuffers call.
///
/// @param [in] pPresentTexture Present Texture memory pointer
/// @param [in] isBlocking If true, call is blocking.
///
/// @returns Success if call is successful.
virtual Result PresentTextureToVideoDopp(Pal::IGpuMemory* pPresentTexture, bool isBlocking) = 0;
#endif

protected:
/// @internal Constructor. Prevent use of new operator on this interface. Client must create objects by explicitly
/// called the proper create method.
Expand Down
12 changes: 11 additions & 1 deletion inc/core/palGpuMemory.h
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,12 @@ union GpuMemoryCreateFlags
#else
uint32 placeholder657 : 1;
#endif
uint32 reserved : 5; ///< Reserved for future use.
#if PAL_CLIENT_INTERFACE_MAJOR_VERSION >= 659
uint32 doppDesktopTexture : 1; ///< Indicate dopp desktop texture
uint32 reserved : 4; ///< Reserved for future use.
#else
uint32 reserved : 5; ///< Reserved for future use.
#endif
};
uint32 u32All; ///< Flags packed as 32-bit uint.
};
Expand Down Expand Up @@ -354,7 +359,12 @@ struct GpuMemoryDesc
uint32 isExecutable : 1; ///< GPU memory is used for execution. Valid only when IOMMUv2 is supported
uint32 isExternPhys : 1; ///< GPU memory is External Physical memory
uint32 placeholder0 : 1; ///< Reserved for future memory flag
#if PAL_CLIENT_INTERFACE_MAJOR_VERSION >= 659
uint32 isDoppDesktopTexture : 1; ///< GPU memory is allocated for dopp desktop texture
uint32 reserved : 23; ///< Reserved for future use
#else
uint32 reserved : 24; ///< Reserved for future use
#endif
};
uint32 u32All; ///< Flags packed as 32-bit uint.
} flags; ///< GPU memory desc flags.
Expand Down
5 changes: 5 additions & 0 deletions inc/core/palImage.h
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,12 @@ union ImageCreateFlags
#else
uint32 reserved616 : 1;
#endif
#if PAL_CLIENT_INTERFACE_MAJOR_VERSION >= 659
uint32 isDoppTexture : 1; ///< Indicates DOPP texture
uint32 reserved : 8; ///< Reserved for future use.
#else
uint32 reserved : 9; ///< Reserved for future use.
#endif
};
uint32 u32All; ///< Flags packed as 32-bit uint.
};
Expand Down
2 changes: 1 addition & 1 deletion inc/core/palLib.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
/// of the existing enum values will change. This number will be reset to 0 when the major version is incremented.
///
/// @ingroup LibInit
#define PAL_INTERFACE_MINOR_VERSION 0
#define PAL_INTERFACE_MINOR_VERSION 1

/// Minimum major interface version. This is the minimum interface version PAL supports in order to support backward
/// compatibility. When it is equal to PAL_INTERFACE_MAJOR_VERSION, only the latest interface version is supported.
Expand Down
Loading

0 comments on commit 9786fa8

Please sign in to comment.