aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.14.71/0758-drm-amd-display-dc-add-DCE_VERSION-for-DCE8-APUs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/0758-drm-amd-display-dc-add-DCE_VERSION-for-DCE8-APUs.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.14.71/0758-drm-amd-display-dc-add-DCE_VERSION-for-DCE8-APUs.patch165
1 files changed, 165 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/0758-drm-amd-display-dc-add-DCE_VERSION-for-DCE8-APUs.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/0758-drm-amd-display-dc-add-DCE_VERSION-for-DCE8-APUs.patch
new file mode 100644
index 00000000..25e4126e
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/0758-drm-amd-display-dc-add-DCE_VERSION-for-DCE8-APUs.patch
@@ -0,0 +1,165 @@
+From 3409362d4fee3a44dc70db41771599fe2f4c6fb0 Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexdeucher@gmail.com>
+Date: Thu, 10 Aug 2017 14:39:50 -0400
+Subject: [PATCH 0758/4131] drm/amd/display/dc: add DCE_VERSION for DCE8 APUs
+
+DCE 8.1 = Kaveri
+DCE 8.3 = Kabini/Mullins
+
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Reviewed-by: Harry Wentland <harry.wentland@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/display/dc/bios/command_table_helper.c | 2 ++
+ drivers/gpu/drm/amd/display/dc/bios/command_table_helper2.c | 2 ++
+ drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 11 ++++++++++-
+ drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c | 6 ++++++
+ drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c | 2 ++
+ drivers/gpu/drm/amd/display/dc/gpio/hw_translate.c | 2 ++
+ drivers/gpu/drm/amd/display/dc/i2caux/i2caux.c | 2 ++
+ drivers/gpu/drm/amd/display/include/dal_types.h | 2 ++
+ 8 files changed, 28 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/bios/command_table_helper.c b/drivers/gpu/drm/amd/display/dc/bios/command_table_helper.c
+index 40d9a99..2979358 100644
+--- a/drivers/gpu/drm/amd/display/dc/bios/command_table_helper.c
++++ b/drivers/gpu/drm/amd/display/dc/bios/command_table_helper.c
+@@ -37,6 +37,8 @@ bool dal_bios_parser_init_cmd_tbl_helper(
+ {
+ switch (dce) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ *h = dal_cmd_tbl_helper_dce80_get_table();
+ return true;
+
+diff --git a/drivers/gpu/drm/amd/display/dc/bios/command_table_helper2.c b/drivers/gpu/drm/amd/display/dc/bios/command_table_helper2.c
+index 9084a32..35c3f3a 100644
+--- a/drivers/gpu/drm/amd/display/dc/bios/command_table_helper2.c
++++ b/drivers/gpu/drm/amd/display/dc/bios/command_table_helper2.c
+@@ -39,6 +39,8 @@ bool dal_bios_parser_init_cmd_tbl_helper2(
+ {
+ switch (dce) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ *h = dal_cmd_tbl_helper_dce80_get_table();
+ return true;
+
+diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
+index b2086be..e7d9045 100644
+--- a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
++++ b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
+@@ -50,9 +50,16 @@ enum dce_version resource_parse_asic_id(struct hw_asic_id asic_id)
+ switch (asic_id.chip_family) {
+
+ case FAMILY_CI:
+- case FAMILY_KV:
+ dc_version = DCE_VERSION_8_0;
+ break;
++ case FAMILY_KV:
++ if (ASIC_REV_IS_KALINDI(asic_id.hw_internal_rev) ||
++ ASIC_REV_IS_BHAVANI(asic_id.hw_internal_rev) ||
++ ASIC_REV_IS_GODAVARI(asic_id.hw_internal_rev))
++ dc_version = DCE_VERSION_8_3;
++ else
++ dc_version = DCE_VERSION_8_1;
++ break;
+ case FAMILY_CZ:
+ dc_version = DCE_VERSION_11_0;
+ break;
+@@ -94,6 +101,8 @@ struct resource_pool *dc_create_resource_pool(
+
+ switch (dc_version) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ res_pool = dce80_create_resource_pool(
+ num_virtual_links, dc);
+ break;
+diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c b/drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c
+index dd7e1dd..88e266a 100644
+--- a/drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c
++++ b/drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c
+@@ -578,6 +578,8 @@ static uint32_t dce110_get_pix_clk_dividers(
+
+ switch (cs->ctx->dce_version) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ case DCE_VERSION_10_0:
+ case DCE_VERSION_11_0:
+ pll_calc_error =
+@@ -862,6 +864,8 @@ static bool dce110_program_pix_clk(
+
+ switch (clock_source->ctx->dce_version) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ case DCE_VERSION_10_0:
+ case DCE_VERSION_11_0:
+ bp_pc_params.reference_divider = pll_settings->reference_divider;
+@@ -1209,6 +1213,8 @@ bool dce110_clk_src_construct(
+
+ switch (clk_src->base.ctx->dce_version) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ case DCE_VERSION_10_0:
+ case DCE_VERSION_11_0:
+
+diff --git a/drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c b/drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c
+index 425f1c4..25f6f91 100644
+--- a/drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c
++++ b/drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c
+@@ -66,6 +66,8 @@ bool dal_hw_factory_init(
+
+ switch (dce_version) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ dal_hw_factory_dce80_init(factory);
+ return true;
+
+diff --git a/drivers/gpu/drm/amd/display/dc/gpio/hw_translate.c b/drivers/gpu/drm/amd/display/dc/gpio/hw_translate.c
+index 3b55d45..0ae8ace 100644
+--- a/drivers/gpu/drm/amd/display/dc/gpio/hw_translate.c
++++ b/drivers/gpu/drm/amd/display/dc/gpio/hw_translate.c
+@@ -65,6 +65,8 @@ bool dal_hw_translate_init(
+
+ switch (dce_version) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ dal_hw_translate_dce80_init(translate);
+ return true;
+ case DCE_VERSION_10_0:
+diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/i2caux.c b/drivers/gpu/drm/amd/display/dc/i2caux/i2caux.c
+index 4035caf..9b115e1 100644
+--- a/drivers/gpu/drm/amd/display/dc/i2caux/i2caux.c
++++ b/drivers/gpu/drm/amd/display/dc/i2caux/i2caux.c
+@@ -79,6 +79,8 @@ struct i2caux *dal_i2caux_create(
+
+ switch (ctx->dce_version) {
+ case DCE_VERSION_8_0:
++ case DCE_VERSION_8_1:
++ case DCE_VERSION_8_3:
+ return dal_i2caux_dce80_create(ctx);
+ case DCE_VERSION_11_2:
+ return dal_i2caux_dce112_create(ctx);
+diff --git a/drivers/gpu/drm/amd/display/include/dal_types.h b/drivers/gpu/drm/amd/display/include/dal_types.h
+index 1bfc191..fa54396 100644
+--- a/drivers/gpu/drm/amd/display/include/dal_types.h
++++ b/drivers/gpu/drm/amd/display/include/dal_types.h
+@@ -35,6 +35,8 @@ struct dc_bios;
+ enum dce_version {
+ DCE_VERSION_UNKNOWN = (-1),
+ DCE_VERSION_8_0,
++ DCE_VERSION_8_1,
++ DCE_VERSION_8_3,
+ DCE_VERSION_10_0,
+ DCE_VERSION_11_0,
+ DCE_VERSION_11_2,
+--
+2.7.4
+