mirror of
https://github.com/torvalds/linux.git
synced 2026-05-31 18:43:33 +02:00
drm/amd/display/dc: enable oem i2c support for DCE 12.x
Use the value pulled from the vbios just like newer chips. Reviewed-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
d957d4a3f8
commit
2ed83f2cc4
|
|
@ -67,6 +67,7 @@
|
|||
#include "reg_helper.h"
|
||||
|
||||
#include "dce100/dce100_resource.h"
|
||||
#include "link.h"
|
||||
|
||||
#ifndef mmDP0_DP_DPHY_INTERNAL_CTRL
|
||||
#define mmDP0_DP_DPHY_INTERNAL_CTRL 0x210f
|
||||
|
|
@ -659,6 +660,12 @@ static void dce120_resource_destruct(struct dce110_resource_pool *pool)
|
|||
|
||||
if (pool->base.dmcu != NULL)
|
||||
dce_dmcu_destroy(&pool->base.dmcu);
|
||||
|
||||
if (pool->base.oem_device != NULL) {
|
||||
struct dc *dc = pool->base.oem_device->ctx->dc;
|
||||
|
||||
dc->link_srv->destroy_ddc_service(&pool->base.oem_device);
|
||||
}
|
||||
}
|
||||
|
||||
static void read_dce_straps(
|
||||
|
|
@ -1054,6 +1061,7 @@ static bool dce120_resource_construct(
|
|||
struct dc *dc,
|
||||
struct dce110_resource_pool *pool)
|
||||
{
|
||||
struct ddc_service_init_data ddc_init_data = {0};
|
||||
unsigned int i;
|
||||
int j;
|
||||
struct dc_context *ctx = dc->ctx;
|
||||
|
|
@ -1257,6 +1265,15 @@ static bool dce120_resource_construct(
|
|||
|
||||
bw_calcs_data_update_from_pplib(dc);
|
||||
|
||||
if (dc->ctx->dc_bios->fw_info.oem_i2c_present) {
|
||||
ddc_init_data.ctx = dc->ctx;
|
||||
ddc_init_data.link = NULL;
|
||||
ddc_init_data.id.id = dc->ctx->dc_bios->fw_info.oem_i2c_obj_id;
|
||||
ddc_init_data.id.enum_id = 0;
|
||||
ddc_init_data.id.type = OBJECT_TYPE_GENERIC;
|
||||
pool->base.oem_device = dc->link_srv->create_ddc_service(&ddc_init_data);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
irqs_create_fail:
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user