Commit 48aa3ddf authored by Dave Airlie's avatar Dave Airlie Committed by Alex Deucher

amdgpu/dc: inline dal grph object id functions.

This is worth 400 bytes.
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
Reviewed-by: default avatarHarry Wentland <harry.wentland@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent d8c893b4
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
#include "dm_services.h" #include "dm_services.h"
#include "include/grph_object_id.h" #include "include/grph_object_id.h"
bool dal_graphics_object_id_is_valid(struct graphics_object_id id) static bool dal_graphics_object_id_is_valid(struct graphics_object_id id)
{ {
bool rc = true; bool rc = true;
...@@ -72,63 +72,4 @@ bool dal_graphics_object_id_is_equal( ...@@ -72,63 +72,4 @@ bool dal_graphics_object_id_is_equal(
return false; return false;
} }
/* Based on internal data members memory layout */
uint32_t dal_graphics_object_id_to_uint(struct graphics_object_id id)
{
uint32_t object_id = 0;
object_id = id.id + (id.enum_id << 0x8) + (id.type << 0xc);
return object_id;
}
/*
* ******* get specific ID - internal safe cast into specific type *******
*/
enum controller_id dal_graphics_object_id_get_controller_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_CONTROLLER)
return id.id;
return CONTROLLER_ID_UNDEFINED;
}
enum clock_source_id dal_graphics_object_id_get_clock_source_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_CLOCK_SOURCE)
return id.id;
return CLOCK_SOURCE_ID_UNDEFINED;
}
enum encoder_id dal_graphics_object_id_get_encoder_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_ENCODER)
return id.id;
return ENCODER_ID_UNKNOWN;
}
enum connector_id dal_graphics_object_id_get_connector_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_CONNECTOR)
return id.id;
return CONNECTOR_ID_UNKNOWN;
}
enum audio_id dal_graphics_object_id_get_audio_id(struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_AUDIO)
return id.id;
return AUDIO_ID_UNKNOWN;
}
enum engine_id dal_graphics_object_id_get_engine_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_ENGINE)
return id.id;
return ENGINE_ID_UNKNOWN;
}
...@@ -233,24 +233,62 @@ static inline struct graphics_object_id dal_graphics_object_id_init( ...@@ -233,24 +233,62 @@ static inline struct graphics_object_id dal_graphics_object_id_init(
return result; return result;
} }
bool dal_graphics_object_id_is_valid(
struct graphics_object_id id);
bool dal_graphics_object_id_is_equal( bool dal_graphics_object_id_is_equal(
struct graphics_object_id id1, struct graphics_object_id id1,
struct graphics_object_id id2); struct graphics_object_id id2);
uint32_t dal_graphics_object_id_to_uint(
struct graphics_object_id id); /* Based on internal data members memory layout */
static inline uint32_t dal_graphics_object_id_to_uint(
enum controller_id dal_graphics_object_id_get_controller_id( struct graphics_object_id id)
struct graphics_object_id id); {
enum clock_source_id dal_graphics_object_id_get_clock_source_id( return id.id + (id.enum_id << 0x8) + (id.type << 0xc);
struct graphics_object_id id); }
enum encoder_id dal_graphics_object_id_get_encoder_id(
struct graphics_object_id id); static inline enum controller_id dal_graphics_object_id_get_controller_id(
enum connector_id dal_graphics_object_id_get_connector_id( struct graphics_object_id id)
struct graphics_object_id id); {
enum audio_id dal_graphics_object_id_get_audio_id( if (id.type == OBJECT_TYPE_CONTROLLER)
struct graphics_object_id id); return id.id;
enum engine_id dal_graphics_object_id_get_engine_id( return CONTROLLER_ID_UNDEFINED;
struct graphics_object_id id); }
static inline enum clock_source_id dal_graphics_object_id_get_clock_source_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_CLOCK_SOURCE)
return id.id;
return CLOCK_SOURCE_ID_UNDEFINED;
}
static inline enum encoder_id dal_graphics_object_id_get_encoder_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_ENCODER)
return id.id;
return ENCODER_ID_UNKNOWN;
}
static inline enum connector_id dal_graphics_object_id_get_connector_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_CONNECTOR)
return id.id;
return CONNECTOR_ID_UNKNOWN;
}
static inline enum audio_id dal_graphics_object_id_get_audio_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_AUDIO)
return id.id;
return AUDIO_ID_UNKNOWN;
}
static inline enum engine_id dal_graphics_object_id_get_engine_id(
struct graphics_object_id id)
{
if (id.type == OBJECT_TYPE_ENGINE)
return id.id;
return ENGINE_ID_UNKNOWN;
}
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment