summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/display/dc/bios/bios_parser_interface.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/bios/bios_parser_interface.c')
-rw-r--r--drivers/gpu/drm/amd/display/dc/bios/bios_parser_interface.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/bios/bios_parser_interface.c b/drivers/gpu/drm/amd/display/dc/bios/bios_parser_interface.c
index 42272c35df2d..7fe2a791ef42 100644
--- a/drivers/gpu/drm/amd/display/dc/bios/bios_parser_interface.c
+++ b/drivers/gpu/drm/amd/display/dc/bios/bios_parser_interface.c
@@ -29,6 +29,10 @@
#include "bios_parser_interface.h"
#include "bios_parser.h"
+#if defined(CONFIG_DRM_AMD_DC_DCE12_0)
+#include "bios_parser2.h"
+#endif
+
struct dc_bios *dal_bios_parser_create(
struct bp_init_data *init,
@@ -36,7 +40,17 @@ struct dc_bios *dal_bios_parser_create(
{
struct dc_bios *bios = NULL;
+#if defined(CONFIG_DRM_AMD_DC_DCE12_0)
+ bios = firmware_parser_create(init, dce_version);
+
+ if (bios == NULL)
+ /* TODO: remove dce_version from bios_parser.
+ * cannot remove today because dal enum to bp enum translation is dce specific
+ */
+ bios = bios_parser_create(init, dce_version);
+#else
bios = bios_parser_create(init, dce_version);
+#endif
return bios;
}