aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amdfalconx86/recipes-kernel/linux/files/1020-drm-amd-dal-kill-bunch-of-unused-code.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amdfalconx86/recipes-kernel/linux/files/1020-drm-amd-dal-kill-bunch-of-unused-code.patch')
-rw-r--r--meta-amdfalconx86/recipes-kernel/linux/files/1020-drm-amd-dal-kill-bunch-of-unused-code.patch539
1 files changed, 539 insertions, 0 deletions
diff --git a/meta-amdfalconx86/recipes-kernel/linux/files/1020-drm-amd-dal-kill-bunch-of-unused-code.patch b/meta-amdfalconx86/recipes-kernel/linux/files/1020-drm-amd-dal-kill-bunch-of-unused-code.patch
new file mode 100644
index 00000000..6a32a82f
--- /dev/null
+++ b/meta-amdfalconx86/recipes-kernel/linux/files/1020-drm-amd-dal-kill-bunch-of-unused-code.patch
@@ -0,0 +1,539 @@
+From c4a39fe28428791a7ed8ec4b179d6fd72bcbe86a Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 11 Apr 2016 17:54:21 +1000
+Subject: [PATCH 1020/1110] drm/amd/dal: kill bunch of unused code.
+
+Signed-off-by: Dave Airlie <airlied@redhat.com>
+Reviewed-by: Harry Wentland <harry.wentland@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ .../gpu/drm/amd/dal/dc/bios/bios_parser_helper.c | 75 ------
+ .../gpu/drm/amd/dal/dc/bios/bios_parser_helper.h | 27 --
+ .../dal/dc/bios/dce110/bios_parser_helper_dce110.c | 11 -
+ .../dal/dc/bios/dce80/bios_parser_helper_dce80.c | 283 ---------------------
+ drivers/gpu/drm/amd/dal/dc/dc_bios_types.h | 1 -
+ .../drm/amd/dal/include/bios_parser_interface.h | 24 --
+ 6 files changed, 421 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/dal/dc/bios/bios_parser_helper.c b/drivers/gpu/drm/amd/dal/dc/bios/bios_parser_helper.c
+index af7a3b8..e96314d 100644
+--- a/drivers/gpu/drm/amd/dal/dc/bios/bios_parser_helper.c
++++ b/drivers/gpu/drm/amd/dal/dc/bios/bios_parser_helper.c
+@@ -98,13 +98,6 @@ bool dal_bios_parser_is_lid_status_changed(
+ bp->ctx);
+ }
+
+-bool dal_bios_parser_is_display_config_changed(
+- struct bios_parser *bp)
+-{
+- return bp->bios_helper->is_display_config_changed(
+- bp->ctx);
+-}
+-
+ /**
+ * dal_bios_parser_get_scratch_lcd_scale
+ *
+@@ -121,71 +114,3 @@ enum lcd_scale dal_bios_parser_get_scratch_lcd_scale(
+ bp->ctx);
+ }
+
+-void dal_bios_parser_get_bios_event_info(
+- struct bios_parser *bp,
+- struct bios_event_info *info)
+-{
+- bp->bios_helper->get_bios_event_info(
+- bp->ctx, info);
+-}
+-
+-/* ABM related */
+-
+-void dal_bios_parser_update_requested_backlight_level(
+- struct bios_parser *bp,
+- uint32_t backlight_8bit)
+-{
+- bp->bios_helper->update_requested_backlight_level(
+- bp->ctx,
+- backlight_8bit);
+-}
+-
+-uint32_t dal_bios_parser_get_requested_backlight_level(
+- struct bios_parser *bp)
+-{
+- return bp->bios_helper->get_requested_backlight_level(
+- bp->ctx);
+-}
+-
+-void dal_bios_parser_take_backlight_control(
+- struct bios_parser *bp,
+- bool cntl)
+-{
+- bp->bios_helper->take_backlight_control(
+- bp->ctx, cntl);
+-}
+-
+-/**
+- * dal_bios_parser_is_active_display
+- * Check video bios active display.
+- */
+-bool dal_bios_parser_is_active_display(
+- struct bios_parser *bp,
+- enum signal_type signal,
+- const struct connector_device_tag_info *device_tag)
+-{
+- return bp->bios_helper->is_active_display(
+- bp->ctx, signal, device_tag);
+-}
+-
+-/**
+- * dal_bios_parser_get_embedded_display_controller_id
+- * Get controller ID for embedded display from scratch registers
+- */
+-enum controller_id dal_bios_parser_get_embedded_display_controller_id(
+- struct bios_parser *bp)
+-{
+- return bp->bios_helper->get_embedded_display_controller_id(
+- bp->ctx);
+-}
+-
+-/**
+- * dal_bios_parser_get_embedded_display_refresh_rate
+- * Get refresh rate for embedded display from scratch registers
+- */
+-uint32_t dal_bios_parser_get_embedded_display_refresh_rate(
+- struct bios_parser *bp)
+-{
+- return bp->bios_helper->get_embedded_display_refresh_rate(
+- bp->ctx);
+-}
+diff --git a/drivers/gpu/drm/amd/dal/dc/bios/bios_parser_helper.h b/drivers/gpu/drm/amd/dal/dc/bios/bios_parser_helper.h
+index 1e17e74..556c57c 100644
+--- a/drivers/gpu/drm/amd/dal/dc/bios/bios_parser_helper.h
++++ b/drivers/gpu/drm/amd/dal/dc/bios/bios_parser_helper.h
+@@ -55,8 +55,6 @@ struct bios_parser_helper {
+ struct dc_context *ctx);
+ bool (*is_lid_status_changed)(
+ struct dc_context *ctx);
+- bool (*is_display_config_changed)(
+- struct dc_context *ctx);
+ void (*set_scratch_acc_mode_change)(
+ struct dc_context *ctx);
+ bool (*is_accelerated_mode)(
+@@ -68,31 +66,6 @@ struct bios_parser_helper {
+ const struct connector_device_tag_info *dev_tag);
+ enum lcd_scale (*get_scratch_lcd_scale)(
+ struct dc_context *ctx);
+- uint32_t (*fmt_control)(
+- struct dc_context *ctx,
+- enum controller_id id, uint32_t *value);
+- uint32_t (*fmt_bit_depth_control)(
+- struct dc_context *ctx,
+- enum controller_id id,
+- uint32_t *value);
+- void (*get_bios_event_info)(
+- struct dc_context *ctx,
+- struct bios_event_info *info);
+- void (*take_backlight_control)(
+- struct dc_context *ctx, bool control);
+- uint32_t (*get_requested_backlight_level)(
+- struct dc_context *ctx);
+- void (*update_requested_backlight_level)(
+- struct dc_context *ctx,
+- uint32_t backlight_8bit);
+- bool (*is_active_display)(
+- struct dc_context *ctx,
+- enum signal_type signal,
+- const struct connector_device_tag_info *dev_tag);
+- enum controller_id (*get_embedded_display_controller_id)(
+- struct dc_context *ctx);
+- uint32_t (*get_embedded_display_refresh_rate)(
+- struct dc_context *ctx);
+ };
+
+ bool dal_bios_parser_init_bios_helper(
+diff --git a/drivers/gpu/drm/amd/dal/dc/bios/dce110/bios_parser_helper_dce110.c b/drivers/gpu/drm/amd/dal/dc/bios/dce110/bios_parser_helper_dce110.c
+index 2a275b1..88c3470 100644
+--- a/drivers/gpu/drm/amd/dal/dc/bios/dce110/bios_parser_helper_dce110.c
++++ b/drivers/gpu/drm/amd/dal/dc/bios/dce110/bios_parser_helper_dce110.c
+@@ -295,22 +295,11 @@ static bool is_lid_open(struct dc_context *ctx)
+ /* function table */
+ static const struct bios_parser_helper bios_parser_helper_funcs = {
+ .detect_sink = detect_sink,
+- .fmt_bit_depth_control = NULL,
+- .fmt_control = NULL,
+- .get_bios_event_info = NULL,
+- .get_embedded_display_controller_id = NULL,
+- .get_embedded_display_refresh_rate = NULL,
+- .get_requested_backlight_level = NULL,
+ .get_scratch_lcd_scale = get_scratch_lcd_scale,
+ .is_accelerated_mode = is_accelerated_mode,
+- .is_active_display = NULL,
+- .is_display_config_changed = NULL,
+ .is_lid_open = is_lid_open,
+- .is_lid_status_changed = NULL,
+ .prepare_scratch_active_and_requested =
+ prepare_scratch_active_and_requested,
+- .take_backlight_control = NULL,
+- .update_requested_backlight_level = NULL,
+ };
+
+ /*
+diff --git a/drivers/gpu/drm/amd/dal/dc/bios/dce80/bios_parser_helper_dce80.c b/drivers/gpu/drm/amd/dal/dc/bios/dce80/bios_parser_helper_dce80.c
+index bff8fd4..ea0cfcb 100644
+--- a/drivers/gpu/drm/amd/dal/dc/bios/dce80/bios_parser_helper_dce80.c
++++ b/drivers/gpu/drm/amd/dal/dc/bios/dce80/bios_parser_helper_dce80.c
+@@ -149,29 +149,6 @@ static bool is_lid_status_changed(
+ return result;
+ }
+
+-static bool is_display_config_changed(
+- struct dc_context *ctx)
+-{
+- bool result = false;
+-
+- /* VBIOS does not provide bitfield definitions */
+- uint32_t reg;
+-
+- reg = dm_read_reg(ctx,
+- mmBIOS_SCRATCH_6);
+-
+- /* lid is open if the bit is not set */
+- if (reg & ATOM_S6_CONFIG_DISPLAY_CHANGE_MASK) {
+- reg &= ~ATOM_S6_CONFIG_DISPLAY_CHANGE_MASK;
+- dm_write_reg(ctx,
+- mmBIOS_SCRATCH_6, reg);
+-
+- result = true;
+- }
+-
+- return result;
+-}
+-
+ /**
+ * is_accelerated_mode
+ *
+@@ -290,274 +267,14 @@ static enum lcd_scale get_scratch_lcd_scale(
+ return LCD_SCALE_NONE;
+ }
+
+-static uint32_t fmt_control(
+- struct dc_context *ctx,
+- enum controller_id id,
+- uint32_t *value)
+-{
+- uint32_t result = 0;
+- uint32_t reg;
+-
+- switch (id) {
+- case CONTROLLER_ID_D0:
+- reg = mmFMT0_FMT_CONTROL;
+- break;
+- case CONTROLLER_ID_D1:
+- reg = mmFMT1_FMT_CONTROL;
+- break;
+- case CONTROLLER_ID_D2:
+- reg = mmFMT2_FMT_CONTROL;
+- break;
+- case CONTROLLER_ID_D3:
+- reg = mmFMT3_FMT_CONTROL;
+- break;
+- case CONTROLLER_ID_D4:
+- reg = mmFMT4_FMT_CONTROL;
+- break;
+- case CONTROLLER_ID_D5:
+- reg = mmFMT5_FMT_CONTROL;
+- break;
+- default:
+- return result;
+- }
+-
+- if (value != NULL)
+- dm_write_reg(ctx, reg, *value);
+- else
+- result = dm_read_reg(ctx, reg);
+-
+- return result;
+-}
+-
+-static uint32_t fmt_bit_depth_control(
+- struct dc_context *ctx,
+- enum controller_id id,
+- uint32_t *value)
+-{
+- uint32_t addr;
+-
+- switch (id) {
+- case CONTROLLER_ID_D0:
+- addr = mmFMT0_FMT_BIT_DEPTH_CONTROL;
+- break;
+- case CONTROLLER_ID_D1:
+- addr = mmFMT1_FMT_BIT_DEPTH_CONTROL;
+- break;
+- case CONTROLLER_ID_D2:
+- addr = mmFMT2_FMT_BIT_DEPTH_CONTROL;
+- break;
+- case CONTROLLER_ID_D3:
+- addr = mmFMT3_FMT_BIT_DEPTH_CONTROL;
+- break;
+- case CONTROLLER_ID_D4:
+- addr = mmFMT4_FMT_BIT_DEPTH_CONTROL;
+- break;
+- case CONTROLLER_ID_D5:
+- addr = mmFMT5_FMT_BIT_DEPTH_CONTROL;
+- break;
+- default:
+- BREAK_TO_DEBUGGER();
+- return 0;
+- }
+-
+- if (value != NULL) {
+- dm_write_reg(ctx, addr, *value);
+- return 0;
+- } else {
+- return dm_read_reg(ctx, addr);
+- }
+-}
+-
+-/**
+- * Read various BIOS Scratch registers and put the resulting information into a
+- * PowerPlay internal structure (which is not dependent on register bit layout).
+- */
+-static void get_bios_event_info(
+- struct dc_context *ctx,
+- struct bios_event_info *info)
+-{
+- uint32_t s2, s6;
+- uint32_t clear_mask;
+-
+- memset(info, 0, sizeof(struct bios_event_info));
+-
+- /* Handle backlight event ONLY. PPLib still handling other events */
+- s6 = dm_read_reg(ctx, mmBIOS_SCRATCH_6);
+-
+- clear_mask = s6 & (ATOM_S6_VRI_BRIGHTNESS_CHANGE);
+-
+- dm_write_reg(ctx,
+- mmBIOS_SCRATCH_6, s6 & ~clear_mask);
+-
+- s2 = dm_read_reg(ctx, mmBIOS_SCRATCH_2);
+-
+- info->backlight_level = (s2 & ATOM_S2_CURRENT_BL_LEVEL_MASK)
+- >> ATOM_S2_CURRENT_BL_LEVEL_SHIFT;
+- info->backlight_changed = (0 != (s6 & ATOM_S6_VRI_BRIGHTNESS_CHANGE));
+-}
+-
+-static void take_backlight_control(
+- struct dc_context *ctx,
+- bool control)
+-{
+- const uint32_t addr = mmBIOS_SCRATCH_2;
+-
+- uint32_t s2;
+-
+- s2 = dm_read_reg(ctx, addr);
+-
+- if (control)
+- s2 |= ATOM_S2_VRI_BRIGHT_ENABLE;
+- else
+- s2 &= ~ATOM_S2_VRI_BRIGHT_ENABLE;
+-
+- dm_write_reg(ctx, addr, s2);
+-}
+-
+-static uint32_t get_requested_backlight_level(
+- struct dc_context *ctx)
+-{
+- uint32_t s2;
+-
+- s2 = dm_read_reg(ctx, mmBIOS_SCRATCH_2);
+-
+- return (s2 & ATOM_S2_CURRENT_BL_LEVEL_MASK)
+- >> ATOM_S2_CURRENT_BL_LEVEL_SHIFT;
+-}
+-
+-static void update_requested_backlight_level(
+- struct dc_context *ctx,
+- uint32_t backlight_8bit)
+-{
+- const uint32_t addr = mmBIOS_SCRATCH_2;
+-
+- uint32_t s2;
+-
+- s2 = dm_read_reg(ctx, addr);
+-
+- s2 &= ~ATOM_S2_CURRENT_BL_LEVEL_MASK;
+- backlight_8bit &= (ATOM_S2_CURRENT_BL_LEVEL_MASK
+- >> ATOM_S2_CURRENT_BL_LEVEL_SHIFT);
+- s2 |= (backlight_8bit << ATOM_S2_CURRENT_BL_LEVEL_SHIFT);
+-
+- dm_write_reg(ctx, addr, s2);
+-}
+-
+-static bool is_active_display(
+- struct dc_context *ctx,
+- enum signal_type signal,
+- const struct connector_device_tag_info *dev_tag)
+-{
+- uint32_t active = 0;
+-
+- uint32_t reg;
+-
+- switch (signal) {
+- case SIGNAL_TYPE_DVI_SINGLE_LINK:
+- case SIGNAL_TYPE_DVI_DUAL_LINK:
+- case SIGNAL_TYPE_HDMI_TYPE_A:
+- case SIGNAL_TYPE_DISPLAY_PORT:
+- case SIGNAL_TYPE_DISPLAY_PORT_MST:
+- if (dev_tag->dev_id.device_type == DEVICE_TYPE_DFP) {
+- switch (dev_tag->dev_id.enum_id) {
+- case 1:
+- active = ATOM_S3_DFP1_ACTIVE;
+- break;
+- case 2:
+- active = ATOM_S3_DFP2_ACTIVE;
+- break;
+- case 3:
+- active = ATOM_S3_DFP3_ACTIVE;
+- break;
+- case 4:
+- active = ATOM_S3_DFP4_ACTIVE;
+- break;
+- case 5:
+- active = ATOM_S3_DFP5_ACTIVE;
+- break;
+-
+- case 6:
+- active = ATOM_S3_DFP6_ACTIVE;
+- break;
+- default:
+- break;
+- }
+- }
+- break;
+- case SIGNAL_TYPE_LVDS:
+- case SIGNAL_TYPE_EDP:
+- active = ATOM_S3_LCD1_ACTIVE;
+- break;
+- case SIGNAL_TYPE_RGB:
+- if (dev_tag->dev_id.device_type == DEVICE_TYPE_CRT)
+- active = ATOM_S3_CRT1_ACTIVE;
+- break;
+- default:
+- break;
+- }
+-
+- reg = dm_read_reg(ctx, mmBIOS_SCRATCH_3);
+- reg &= ATOM_S3_DEVICE_ACTIVE_MASK;
+-
+- return 0 != (active & reg);
+-}
+-
+-static enum controller_id get_embedded_display_controller_id(
+- struct dc_context *ctx)
+-{
+- uint32_t reg;
+-
+- reg = dm_read_reg(ctx, mmBIOS_SCRATCH_3);
+-
+- if (ATOM_S3_LCD1_ACTIVE & reg)
+- return (reg & ATOM_S3_LCD1_CRTC_ACTIVE) ?
+- CONTROLLER_ID_D1 : CONTROLLER_ID_D0;
+-
+- return CONTROLLER_ID_UNDEFINED;
+-}
+-
+-static uint32_t get_embedded_display_refresh_rate(
+- struct dc_context *ctx)
+-{
+- uint32_t result = 0;
+-
+- uint32_t reg_3;
+-
+- reg_3 = dm_read_reg(ctx, mmBIOS_SCRATCH_3);
+-
+- if (ATOM_S3_LCD1_ACTIVE & reg_3) {
+- uint32_t reg_4;
+-
+- reg_4 = dm_read_reg(ctx,
+- mmBIOS_SCRATCH_4);
+-
+- result = (reg_4 & ATOM_S4_LCD1_REFRESH_MASK)
+- >> ATOM_S4_LCD1_REFRESH_SHIFT;
+- }
+-
+- return result;
+-}
+-
+ static const struct bios_parser_helper bios_parser_helper_funcs = {
+ .detect_sink = detect_sink,
+- .fmt_bit_depth_control = fmt_bit_depth_control,
+- .fmt_control = fmt_control,
+- .get_bios_event_info = get_bios_event_info,
+- .get_embedded_display_controller_id =
+- get_embedded_display_controller_id,
+- .get_embedded_display_refresh_rate =
+- get_embedded_display_refresh_rate,
+- .get_requested_backlight_level = get_requested_backlight_level,
+ .get_scratch_lcd_scale = get_scratch_lcd_scale,
+ .is_accelerated_mode = is_accelerated_mode,
+- .is_active_display = is_active_display,
+- .is_display_config_changed = is_display_config_changed,
+ .is_lid_open = is_lid_open,
+ .is_lid_status_changed = is_lid_status_changed,
+ .prepare_scratch_active_and_requested =
+ prepare_scratch_active_and_requested,
+- .take_backlight_control = take_backlight_control,
+- .update_requested_backlight_level = update_requested_backlight_level,
+ };
+
+ const struct bios_parser_helper *dal_bios_parser_helper_dce80_get_table()
+diff --git a/drivers/gpu/drm/amd/dal/dc/dc_bios_types.h b/drivers/gpu/drm/amd/dal/dc/dc_bios_types.h
+index 73127c4..bd94ecd 100644
+--- a/drivers/gpu/drm/amd/dal/dc/dc_bios_types.h
++++ b/drivers/gpu/drm/amd/dal/dc/dc_bios_types.h
+@@ -127,7 +127,6 @@ bool dc_bios_is_lid_open(struct dc_bios *bios);
+ #if 0 /* unused trap to debugger functions */
+
+ bool dc_bios_is_lid_status_changed(struct dc_bios *bios);
+-bool dc_bios_is_display_config_changed(struct dc_bios *bios);
+
+ enum lcd_scale dc_bios_get_scratch_lcd_scale(struct dc_bios *bios);
+ void dc_bios_get_bios_event_info(struct dc_bios *bios,
+diff --git a/drivers/gpu/drm/amd/dal/include/bios_parser_interface.h b/drivers/gpu/drm/amd/dal/include/bios_parser_interface.h
+index a8f313a..a177e15 100644
+--- a/drivers/gpu/drm/amd/dal/include/bios_parser_interface.h
++++ b/drivers/gpu/drm/amd/dal/include/bios_parser_interface.h
+@@ -49,31 +49,7 @@ bool dal_bios_parser_is_lid_open(
+ struct bios_parser *bp);
+ bool dal_bios_parser_is_lid_status_changed(
+ struct bios_parser *bp);
+-bool dal_bios_parser_is_display_config_changed(
+- struct bios_parser *bp);
+-void dal_bios_parser_set_scratch_lcd_scale(
+- struct bios_parser *bp,
+- enum lcd_scale scale);
+ enum lcd_scale dal_bios_parser_get_scratch_lcd_scale(
+ struct bios_parser *bp);
+-void dal_bios_parser_get_bios_event_info(
+- struct bios_parser *bp,
+- struct bios_event_info *info);
+-void dal_bios_parser_update_requested_backlight_level(
+- struct bios_parser *bp,
+- uint32_t backlight_8bit);
+-uint32_t dal_bios_parser_get_requested_backlight_level(
+- struct bios_parser *bp);
+-void dal_bios_parser_take_backlight_control(
+- struct bios_parser *bp,
+- bool cntl);
+-bool dal_bios_parser_is_active_display(
+- struct bios_parser *bp,
+- enum signal_type signal,
+- const struct connector_device_tag_info *device_tag);
+-enum controller_id dal_bios_parser_get_embedded_display_controller_id(
+- struct bios_parser *bp);
+-uint32_t dal_bios_parser_get_embedded_display_refresh_rate(
+- struct bios_parser *bp);
+
+ #endif /* __DAL_BIOS_PARSER_INTERFACE_H__ */
+--
+2.7.4
+