From c4a39fe28428791a7ed8ec4b179d6fd72bcbe86a Mon Sep 17 00:00:00 2001 From: Dave Airlie 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 Reviewed-by: Harry Wentland Signed-off-by: Alex Deucher --- .../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