aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd
diff options
context:
space:
mode:
authorHarry Wentland <harry.wentland@amd.com>2017-09-27 10:53:50 -0400
committerAlex Deucher <alexander.deucher@amd.com>2017-09-28 16:46:15 -0400
commit2004f45ef83f07f43f5da6ede780b08068c7583d (patch)
tree011ac2087c8a8c9272a4c4c5eaacd69d44c2319a /drivers/gpu/drm/amd
parent82b400a62f2fd42b87f91a298c5641d0ead99251 (diff)
drm/amd/display: Use kernel alloc/free
Abstractions are frowned upon. cocci script: virtual context virtual patch virtual org virtual report @@ expression ptr; @@ - dm_alloc(ptr) + kzalloc(ptr, GFP_KERNEL) @@ expression ptr, size; @@ - dm_realloc(ptr, size) + krealloc(ptr, size, GFP_KERNEL) @@ expression ptr; @@ - dm_free(ptr) + kfree(ptr) v2: use GFP_KERNEL, not GFP_ATOMIC. add cocci script Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd')
-rw-r--r--drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/basics/logger.c18
-rw-r--r--drivers/gpu/drm/amd/display/dc/basics/vector.c19
-rw-r--r--drivers/gpu/drm/amd/display/dc/bios/bios_parser.c17
-rw-r--r--drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c14
-rw-r--r--drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c5
-rw-r--r--drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc.c42
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc_link.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c18
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc_resource.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc_sink.c11
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc_stream.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc_surface.c15
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce/dce_abm.c4
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce/dce_audio.c4
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce/dce_clock_source.c12
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c10
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce/dce_ipp.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce/dce_opp.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c43
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce110/dce110_compressor.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c61
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce112/dce112_compressor.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c43
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c43
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce80/dce80_compressor.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c47
-rw-r--r--drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c56
-rw-r--r--drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c4
-rw-r--r--drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c21
-rw-r--r--drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce100/i2caux_dce100.c4
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce110/aux_engine_dce110.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_hw_engine_dce110.c7
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_sw_engine_dce110.c7
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce112/i2caux_dce112.c4
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce120/i2caux_dce120.c4
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_hw_engine_dce80.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_sw_engine_dce80.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2caux_dce80.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.c4
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/diagnostics/i2caux_diag.c7
-rw-r--r--drivers/gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.c6
-rw-r--r--drivers/gpu/drm/amd/display/dc/irq/dce110/irq_service_dce110.c5
-rw-r--r--drivers/gpu/drm/amd/display/dc/irq/dce120/irq_service_dce120.c5
-rw-r--r--drivers/gpu/drm/amd/display/dc/irq/dce80/irq_service_dce80.c5
-rw-r--r--drivers/gpu/drm/amd/display/dc/irq/dcn10/irq_service_dcn10.c5
-rw-r--r--drivers/gpu/drm/amd/display/dc/irq/irq_service.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c2
-rw-r--r--drivers/gpu/drm/amd/display/dc/virtual/virtual_stream_encoder.c4
-rw-r--r--drivers/gpu/drm/amd/display/modules/freesync/freesync.c14
59 files changed, 362 insertions, 330 deletions
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index 36635486b937..dba54c0a7b5f 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -2429,7 +2429,7 @@ dm_crtc_duplicate_state(struct drm_crtc *crtc)
2429 if (WARN_ON(!crtc->state)) 2429 if (WARN_ON(!crtc->state))
2430 return NULL; 2430 return NULL;
2431 2431
2432 state = dm_alloc(sizeof(*state)); 2432 state = kzalloc(sizeof(*state), GFP_KERNEL);
2433 2433
2434 __drm_atomic_helper_crtc_duplicate_state(crtc, &state->base); 2434 __drm_atomic_helper_crtc_duplicate_state(crtc, &state->base);
2435 2435
diff --git a/drivers/gpu/drm/amd/display/dc/basics/logger.c b/drivers/gpu/drm/amd/display/dc/basics/logger.c
index 5895dd3903a3..afb6d2d80e0c 100644
--- a/drivers/gpu/drm/amd/display/dc/basics/logger.c
+++ b/drivers/gpu/drm/amd/display/dc/basics/logger.c
@@ -70,8 +70,8 @@ static bool construct(struct dc_context *ctx, struct dal_logger *logger,
70{ 70{
71 /* malloc buffer and init offsets */ 71 /* malloc buffer and init offsets */
72 logger->log_buffer_size = DAL_LOGGER_BUFFER_MAX_SIZE; 72 logger->log_buffer_size = DAL_LOGGER_BUFFER_MAX_SIZE;
73 logger->log_buffer = (char *)dm_alloc(logger->log_buffer_size * 73 logger->log_buffer = (char *)kzalloc(logger->log_buffer_size * sizeof(char),
74 sizeof(char)); 74 GFP_KERNEL);
75 75
76 if (!logger->log_buffer) 76 if (!logger->log_buffer)
77 return false; 77 return false;
@@ -97,7 +97,7 @@ static bool construct(struct dc_context *ctx, struct dal_logger *logger,
97static void destruct(struct dal_logger *logger) 97static void destruct(struct dal_logger *logger)
98{ 98{
99 if (logger->log_buffer) { 99 if (logger->log_buffer) {
100 dm_free(logger->log_buffer); 100 kfree(logger->log_buffer);
101 logger->log_buffer = NULL; 101 logger->log_buffer = NULL;
102 } 102 }
103} 103}
@@ -105,12 +105,13 @@ static void destruct(struct dal_logger *logger)
105struct dal_logger *dal_logger_create(struct dc_context *ctx, uint32_t log_mask) 105struct dal_logger *dal_logger_create(struct dc_context *ctx, uint32_t log_mask)
106{ 106{
107 /* malloc struct */ 107 /* malloc struct */
108 struct dal_logger *logger = dm_alloc(sizeof(struct dal_logger)); 108 struct dal_logger *logger = kzalloc(sizeof(struct dal_logger),
109 GFP_KERNEL);
109 110
110 if (!logger) 111 if (!logger)
111 return NULL; 112 return NULL;
112 if (!construct(ctx, logger, log_mask)) { 113 if (!construct(ctx, logger, log_mask)) {
113 dm_free(logger); 114 kfree(logger);
114 return NULL; 115 return NULL;
115 } 116 }
116 117
@@ -122,7 +123,7 @@ uint32_t dal_logger_destroy(struct dal_logger **logger)
122 if (logger == NULL || *logger == NULL) 123 if (logger == NULL || *logger == NULL)
123 return 1; 124 return 1;
124 destruct(*logger); 125 destruct(*logger);
125 dm_free(*logger); 126 kfree(*logger);
126 *logger = NULL; 127 *logger = NULL;
127 128
128 return 0; 129 return 0;
@@ -390,7 +391,8 @@ void dm_logger_open(
390 entry->type = log_type; 391 entry->type = log_type;
391 entry->logger = logger; 392 entry->logger = logger;
392 393
393 entry->buf = dm_alloc(DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char)); 394 entry->buf = kzalloc(DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char),
395 GFP_KERNEL);
394 396
395 entry->buf_offset = 0; 397 entry->buf_offset = 0;
396 entry->max_buf_bytes = DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char); 398 entry->max_buf_bytes = DAL_LOGGER_BUFFER_MAX_SIZE * sizeof(char);
@@ -421,7 +423,7 @@ void dm_logger_close(struct log_entry *entry)
421 423
422cleanup: 424cleanup:
423 if (entry->buf) { 425 if (entry->buf) {
424 dm_free(entry->buf); 426 kfree(entry->buf);
425 entry->buf = NULL; 427 entry->buf = NULL;
426 entry->buf_offset = 0; 428 entry->buf_offset = 0;
427 entry->max_buf_bytes = 0; 429 entry->max_buf_bytes = 0;
diff --git a/drivers/gpu/drm/amd/display/dc/basics/vector.c b/drivers/gpu/drm/amd/display/dc/basics/vector.c
index bb72a1857160..e00fc4db3ac4 100644
--- a/drivers/gpu/drm/amd/display/dc/basics/vector.c
+++ b/drivers/gpu/drm/amd/display/dc/basics/vector.c
@@ -40,7 +40,7 @@ bool dal_vector_construct(
40 return false; 40 return false;
41 } 41 }
42 42
43 vector->container = dm_alloc(struct_size * capacity); 43 vector->container = kzalloc(struct_size * capacity, GFP_KERNEL);
44 if (vector->container == NULL) 44 if (vector->container == NULL)
45 return false; 45 return false;
46 vector->capacity = capacity; 46 vector->capacity = capacity;
@@ -67,7 +67,7 @@ bool dal_vector_presized_costruct(
67 return false; 67 return false;
68 } 68 }
69 69
70 vector->container = dm_alloc(struct_size * count); 70 vector->container = kzalloc(struct_size * count, GFP_KERNEL);
71 71
72 if (vector->container == NULL) 72 if (vector->container == NULL)
73 return false; 73 return false;
@@ -95,7 +95,7 @@ struct vector *dal_vector_presized_create(
95 void *initial_value, 95 void *initial_value,
96 uint32_t struct_size) 96 uint32_t struct_size)
97{ 97{
98 struct vector *vector = dm_alloc(sizeof(struct vector)); 98 struct vector *vector = kzalloc(sizeof(struct vector), GFP_KERNEL);
99 99
100 if (vector == NULL) 100 if (vector == NULL)
101 return NULL; 101 return NULL;
@@ -105,7 +105,7 @@ struct vector *dal_vector_presized_create(
105 return vector; 105 return vector;
106 106
107 BREAK_TO_DEBUGGER(); 107 BREAK_TO_DEBUGGER();
108 dm_free(vector); 108 kfree(vector);
109 return NULL; 109 return NULL;
110} 110}
111 111
@@ -114,7 +114,7 @@ struct vector *dal_vector_create(
114 uint32_t capacity, 114 uint32_t capacity,
115 uint32_t struct_size) 115 uint32_t struct_size)
116{ 116{
117 struct vector *vector = dm_alloc(sizeof(struct vector)); 117 struct vector *vector = kzalloc(sizeof(struct vector), GFP_KERNEL);
118 118
119 if (vector == NULL) 119 if (vector == NULL)
120 return NULL; 120 return NULL;
@@ -123,7 +123,7 @@ struct vector *dal_vector_create(
123 return vector; 123 return vector;
124 124
125 BREAK_TO_DEBUGGER(); 125 BREAK_TO_DEBUGGER();
126 dm_free(vector); 126 kfree(vector);
127 return NULL; 127 return NULL;
128} 128}
129 129
@@ -131,7 +131,7 @@ void dal_vector_destruct(
131 struct vector *vector) 131 struct vector *vector)
132{ 132{
133 if (vector->container != NULL) 133 if (vector->container != NULL)
134 dm_free(vector->container); 134 kfree(vector->container);
135 vector->count = 0; 135 vector->count = 0;
136 vector->capacity = 0; 136 vector->capacity = 0;
137} 137}
@@ -142,7 +142,7 @@ void dal_vector_destroy(
142 if (vector == NULL || *vector == NULL) 142 if (vector == NULL || *vector == NULL)
143 return; 143 return;
144 dal_vector_destruct(*vector); 144 dal_vector_destruct(*vector);
145 dm_free(*vector); 145 kfree(*vector);
146 *vector = NULL; 146 *vector = NULL;
147} 147}
148 148
@@ -290,7 +290,8 @@ bool dal_vector_reserve(struct vector *vector, uint32_t capacity)
290 if (capacity <= vector->capacity) 290 if (capacity <= vector->capacity)
291 return true; 291 return true;
292 292
293 new_container = dm_realloc(vector->container, capacity * vector->struct_size); 293 new_container = krealloc(vector->container,
294 capacity * vector->struct_size, GFP_KERNEL);
294 295
295 if (new_container) { 296 if (new_container) {
296 vector->container = new_container; 297 vector->container = new_container;
diff --git a/drivers/gpu/drm/amd/display/dc/bios/bios_parser.c b/drivers/gpu/drm/amd/display/dc/bios/bios_parser.c
index 2c411441771b..47d673a1f688 100644
--- a/drivers/gpu/drm/amd/display/dc/bios/bios_parser.c
+++ b/drivers/gpu/drm/amd/display/dc/bios/bios_parser.c
@@ -116,14 +116,14 @@ struct dc_bios *bios_parser_create(
116{ 116{
117 struct bios_parser *bp = NULL; 117 struct bios_parser *bp = NULL;
118 118
119 bp = dm_alloc(sizeof(struct bios_parser)); 119 bp = kzalloc(sizeof(struct bios_parser), GFP_KERNEL);
120 if (!bp) 120 if (!bp)
121 return NULL; 121 return NULL;
122 122
123 if (bios_parser_construct(bp, init, dce_version)) 123 if (bios_parser_construct(bp, init, dce_version))
124 return &bp->base; 124 return &bp->base;
125 125
126 dm_free(bp); 126 kfree(bp);
127 BREAK_TO_DEBUGGER(); 127 BREAK_TO_DEBUGGER();
128 return NULL; 128 return NULL;
129} 129}
@@ -131,10 +131,10 @@ struct dc_bios *bios_parser_create(
131static void destruct(struct bios_parser *bp) 131static void destruct(struct bios_parser *bp)
132{ 132{
133 if (bp->base.bios_local_image) 133 if (bp->base.bios_local_image)
134 dm_free(bp->base.bios_local_image); 134 kfree(bp->base.bios_local_image);
135 135
136 if (bp->base.integrated_info) 136 if (bp->base.integrated_info)
137 dm_free(bp->base.integrated_info); 137 kfree(bp->base.integrated_info);
138} 138}
139 139
140static void bios_parser_destroy(struct dc_bios **dcb) 140static void bios_parser_destroy(struct dc_bios **dcb)
@@ -148,7 +148,7 @@ static void bios_parser_destroy(struct dc_bios **dcb)
148 148
149 destruct(bp); 149 destruct(bp);
150 150
151 dm_free(bp); 151 kfree(bp);
152 *dcb = NULL; 152 *dcb = NULL;
153} 153}
154 154
@@ -3531,7 +3531,8 @@ static void process_ext_display_connection_info(struct bios_parser *bp)
3531 uint8_t *original_bios; 3531 uint8_t *original_bios;
3532 /* Step 1: Replace bios image with the new copy which will be 3532 /* Step 1: Replace bios image with the new copy which will be
3533 * patched */ 3533 * patched */
3534 bp->base.bios_local_image = dm_alloc(bp->base.bios_size); 3534 bp->base.bios_local_image = kzalloc(bp->base.bios_size,
3535 GFP_KERNEL);
3535 if (bp->base.bios_local_image == NULL) { 3536 if (bp->base.bios_local_image == NULL) {
3536 BREAK_TO_DEBUGGER(); 3537 BREAK_TO_DEBUGGER();
3537 /* Failed to alloc bp->base.bios_local_image */ 3538 /* Failed to alloc bp->base.bios_local_image */
@@ -3965,7 +3966,7 @@ static struct integrated_info *bios_parser_create_integrated_info(
3965 struct bios_parser *bp = BP_FROM_DCB(dcb); 3966 struct bios_parser *bp = BP_FROM_DCB(dcb);
3966 struct integrated_info *info = NULL; 3967 struct integrated_info *info = NULL;
3967 3968
3968 info = dm_alloc(sizeof(struct integrated_info)); 3969 info = kzalloc(sizeof(struct integrated_info), GFP_KERNEL);
3969 3970
3970 if (info == NULL) { 3971 if (info == NULL) {
3971 ASSERT_CRITICAL(0); 3972 ASSERT_CRITICAL(0);
@@ -3975,7 +3976,7 @@ static struct integrated_info *bios_parser_create_integrated_info(
3975 if (construct_integrated_info(bp, info) == BP_RESULT_OK) 3976 if (construct_integrated_info(bp, info) == BP_RESULT_OK)
3976 return info; 3977 return info;
3977 3978
3978 dm_free(info); 3979 kfree(info);
3979 3980
3980 return NULL; 3981 return NULL;
3981} 3982}
diff --git a/drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c b/drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c
index 95fe50f62c57..3f8e605efde9 100644
--- a/drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c
+++ b/drivers/gpu/drm/amd/display/dc/bios/bios_parser2.c
@@ -107,10 +107,10 @@ static struct atom_encoder_caps_record *get_encoder_cap_record(
107static void destruct(struct bios_parser *bp) 107static void destruct(struct bios_parser *bp)
108{ 108{
109 if (bp->base.bios_local_image) 109 if (bp->base.bios_local_image)
110 dm_free(bp->base.bios_local_image); 110 kfree(bp->base.bios_local_image);
111 111
112 if (bp->base.integrated_info) 112 if (bp->base.integrated_info)
113 dm_free(bp->base.integrated_info); 113 kfree(bp->base.integrated_info);
114} 114}
115 115
116static void firmware_parser_destroy(struct dc_bios **dcb) 116static void firmware_parser_destroy(struct dc_bios **dcb)
@@ -124,7 +124,7 @@ static void firmware_parser_destroy(struct dc_bios **dcb)
124 124
125 destruct(bp); 125 destruct(bp);
126 126
127 dm_free(bp); 127 kfree(bp);
128 *dcb = NULL; 128 *dcb = NULL;
129} 129}
130 130
@@ -2030,7 +2030,7 @@ static struct integrated_info *bios_parser_create_integrated_info(
2030 struct bios_parser *bp = BP_FROM_DCB(dcb); 2030 struct bios_parser *bp = BP_FROM_DCB(dcb);
2031 struct integrated_info *info = NULL; 2031 struct integrated_info *info = NULL;
2032 2032
2033 info = dm_alloc(sizeof(struct integrated_info)); 2033 info = kzalloc(sizeof(struct integrated_info), GFP_KERNEL);
2034 2034
2035 if (info == NULL) { 2035 if (info == NULL) {
2036 ASSERT_CRITICAL(0); 2036 ASSERT_CRITICAL(0);
@@ -2040,7 +2040,7 @@ static struct integrated_info *bios_parser_create_integrated_info(
2040 if (construct_integrated_info(bp, info) == BP_RESULT_OK) 2040 if (construct_integrated_info(bp, info) == BP_RESULT_OK)
2041 return info; 2041 return info;
2042 2042
2043 dm_free(info); 2043 kfree(info);
2044 2044
2045 return NULL; 2045 return NULL;
2046} 2046}
@@ -2205,14 +2205,14 @@ struct dc_bios *firmware_parser_create(
2205{ 2205{
2206 struct bios_parser *bp = NULL; 2206 struct bios_parser *bp = NULL;
2207 2207
2208 bp = dm_alloc(sizeof(struct bios_parser)); 2208 bp = kzalloc(sizeof(struct bios_parser), GFP_KERNEL);
2209 if (!bp) 2209 if (!bp)
2210 return NULL; 2210 return NULL;
2211 2211
2212 if (bios_parser_construct(bp, init, dce_version)) 2212 if (bios_parser_construct(bp, init, dce_version))
2213 return &bp->base; 2213 return &bp->base;
2214 2214
2215 dm_free(bp); 2215 kfree(bp);
2216 return NULL; 2216 return NULL;
2217} 2217}
2218 2218
diff --git a/drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c b/drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c
index dba25853f7f9..15cbfc400633 100644
--- a/drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c
+++ b/drivers/gpu/drm/amd/display/dc/calcs/dce_calcs.c
@@ -2792,7 +2792,8 @@ bool bw_calcs(struct dc_context *ctx,
2792 int pipe_count, 2792 int pipe_count,
2793 struct dce_bw_output *calcs_output) 2793 struct dce_bw_output *calcs_output)
2794{ 2794{
2795 struct bw_calcs_data *data = dm_alloc(sizeof(struct bw_calcs_data)); 2795 struct bw_calcs_data *data = kzalloc(sizeof(struct bw_calcs_data),
2796 GFP_KERNEL);
2796 2797
2797 populate_initial_data(pipe, pipe_count, data); 2798 populate_initial_data(pipe, pipe_count, data);
2798 2799
@@ -3248,7 +3249,7 @@ bool bw_calcs(struct dc_context *ctx,
3248 calcs_output->sclk_khz = 0; 3249 calcs_output->sclk_khz = 0;
3249 } 3250 }
3250 3251
3251 dm_free(data); 3252 kfree(data);
3252 3253
3253 return is_display_configuration_supported(vbios, calcs_output); 3254 return is_display_configuration_supported(vbios, calcs_output);
3254} 3255}
diff --git a/drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c b/drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c
index 1b0f64756be6..91f43a1b88ee 100644
--- a/drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c
+++ b/drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c
@@ -481,8 +481,8 @@ static void dcn_dml_wm_override(
481{ 481{
482 int i, in_idx, active_count; 482 int i, in_idx, active_count;
483 483
484 struct _vcs_dpi_display_e2e_pipe_params_st *input = dm_alloc(pool->pipe_count * 484 struct _vcs_dpi_display_e2e_pipe_params_st *input = kzalloc(pool->pipe_count * sizeof(struct _vcs_dpi_display_e2e_pipe_params_st),
485 sizeof(struct _vcs_dpi_display_e2e_pipe_params_st)); 485 GFP_KERNEL);
486 struct wm { 486 struct wm {
487 double urgent; 487 double urgent;
488 struct _vcs_dpi_cstate_pstate_watermarks_st cpstate; 488 struct _vcs_dpi_cstate_pstate_watermarks_st cpstate;
@@ -560,7 +560,7 @@ static void dcn_dml_wm_override(
560 pipe->plane_state->flip_immediate); 560 pipe->plane_state->flip_immediate);
561 in_idx++; 561 in_idx++;
562 } 562 }
563 dm_free(input); 563 kfree(input);
564} 564}
565 565
566static void split_stream_across_pipes( 566static void split_stream_across_pipes(
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c
index 58c5083bef2a..d86d9796e4cc 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc.c
@@ -113,7 +113,7 @@ static bool create_links(
113 } 113 }
114 114
115 for (i = 0; i < num_virtual_links; i++) { 115 for (i = 0; i < num_virtual_links; i++) {
116 struct dc_link *link = dm_alloc(sizeof(*link)); 116 struct dc_link *link = kzalloc(sizeof(*link), GFP_KERNEL);
117 struct encoder_init_data enc_init = {0}; 117 struct encoder_init_data enc_init = {0};
118 118
119 if (link == NULL) { 119 if (link == NULL) {
@@ -127,7 +127,7 @@ static bool create_links(
127 link->link_id.type = OBJECT_TYPE_CONNECTOR; 127 link->link_id.type = OBJECT_TYPE_CONNECTOR;
128 link->link_id.id = CONNECTOR_ID_VIRTUAL; 128 link->link_id.id = CONNECTOR_ID_VIRTUAL;
129 link->link_id.enum_id = ENUM_ID_1; 129 link->link_id.enum_id = ENUM_ID_1;
130 link->link_enc = dm_alloc(sizeof(*link->link_enc)); 130 link->link_enc = kzalloc(sizeof(*link->link_enc), GFP_KERNEL);
131 131
132 enc_init.ctx = dc->ctx; 132 enc_init.ctx = dc->ctx;
133 enc_init.channel = CHANNEL_ID_UNKNOWN; 133 enc_init.channel = CHANNEL_ID_UNKNOWN;
@@ -413,20 +413,20 @@ static void destruct(struct dc *dc)
413 if (dc->ctx->logger) 413 if (dc->ctx->logger)
414 dal_logger_destroy(&dc->ctx->logger); 414 dal_logger_destroy(&dc->ctx->logger);
415 415
416 dm_free(dc->ctx); 416 kfree(dc->ctx);
417 dc->ctx = NULL; 417 dc->ctx = NULL;
418 418
419 dm_free(dc->bw_vbios); 419 kfree(dc->bw_vbios);
420 dc->bw_vbios = NULL; 420 dc->bw_vbios = NULL;
421 421
422 dm_free(dc->bw_dceip); 422 kfree(dc->bw_dceip);
423 dc->bw_dceip = NULL; 423 dc->bw_dceip = NULL;
424 424
425#ifdef CONFIG_DRM_AMD_DC_DCN1_0 425#ifdef CONFIG_DRM_AMD_DC_DCN1_0
426 dm_free(dc->dcn_soc); 426 kfree(dc->dcn_soc);
427 dc->dcn_soc = NULL; 427 dc->dcn_soc = NULL;
428 428
429 dm_free(dc->dcn_ip); 429 kfree(dc->dcn_ip);
430 dc->dcn_ip = NULL; 430 dc->dcn_ip = NULL;
431 431
432#endif 432#endif
@@ -436,12 +436,15 @@ static bool construct(struct dc *dc,
436 const struct dc_init_data *init_params) 436 const struct dc_init_data *init_params)
437{ 437{
438 struct dal_logger *logger; 438 struct dal_logger *logger;
439 struct dc_context *dc_ctx = dm_alloc(sizeof(*dc_ctx)); 439 struct dc_context *dc_ctx = kzalloc(sizeof(*dc_ctx), GFP_KERNEL);
440 struct bw_calcs_dceip *dc_dceip = dm_alloc(sizeof(*dc_dceip)); 440 struct bw_calcs_dceip *dc_dceip = kzalloc(sizeof(*dc_dceip),
441 struct bw_calcs_vbios *dc_vbios = dm_alloc(sizeof(*dc_vbios)); 441 GFP_KERNEL);
442 struct bw_calcs_vbios *dc_vbios = kzalloc(sizeof(*dc_vbios),
443 GFP_KERNEL);
442#ifdef CONFIG_DRM_AMD_DC_DCN1_0 444#ifdef CONFIG_DRM_AMD_DC_DCN1_0
443 struct dcn_soc_bounding_box *dcn_soc = dm_alloc(sizeof(*dcn_soc)); 445 struct dcn_soc_bounding_box *dcn_soc = kzalloc(sizeof(*dcn_soc),
444 struct dcn_ip_params *dcn_ip = dm_alloc(sizeof(*dcn_ip)); 446 GFP_KERNEL);
447 struct dcn_ip_params *dcn_ip = kzalloc(sizeof(*dcn_ip), GFP_KERNEL);
445#endif 448#endif
446 449
447 enum dce_version dc_version = DCE_VERSION_UNKNOWN; 450 enum dce_version dc_version = DCE_VERSION_UNKNOWN;
@@ -604,7 +607,7 @@ void ProgramPixelDurationV(unsigned int pixelClockInKHz )
604 607
605struct dc *dc_create(const struct dc_init_data *init_params) 608struct dc *dc_create(const struct dc_init_data *init_params)
606 { 609 {
607 struct dc *dc = dm_alloc(sizeof(*dc)); 610 struct dc *dc = kzalloc(sizeof(*dc), GFP_KERNEL);
608 unsigned int full_pipe_count; 611 unsigned int full_pipe_count;
609 612
610 if (NULL == dc) 613 if (NULL == dc)
@@ -638,7 +641,7 @@ struct dc *dc_create(const struct dc_init_data *init_params)
638 return dc; 641 return dc;
639 642
640construct_fail: 643construct_fail:
641 dm_free(dc); 644 kfree(dc);
642 645
643alloc_fail: 646alloc_fail:
644 return NULL; 647 return NULL;
@@ -647,7 +650,7 @@ alloc_fail:
647void dc_destroy(struct dc **dc) 650void dc_destroy(struct dc **dc)
648{ 651{
649 destruct(*dc); 652 destruct(*dc);
650 dm_free(*dc); 653 kfree(*dc);
651 *dc = NULL; 654 *dc = NULL;
652} 655}
653 656
@@ -900,7 +903,7 @@ bool dc_commit_planes_to_stream(
900 struct dc_scaling_info scaling_info[MAX_SURFACES]; 903 struct dc_scaling_info scaling_info[MAX_SURFACES];
901 int i; 904 int i;
902 struct dc_stream_update *stream_update = 905 struct dc_stream_update *stream_update =
903 dm_alloc(sizeof(struct dc_stream_update)); 906 kzalloc(sizeof(struct dc_stream_update), GFP_KERNEL);
904 907
905 if (!stream_update) { 908 if (!stream_update) {
906 BREAK_TO_DEBUGGER(); 909 BREAK_TO_DEBUGGER();
@@ -951,13 +954,14 @@ bool dc_commit_planes_to_stream(
951 954
952 dc_post_update_surfaces_to_stream(dc); 955 dc_post_update_surfaces_to_stream(dc);
953 956
954 dm_free(stream_update); 957 kfree(stream_update);
955 return true; 958 return true;
956} 959}
957 960
958struct dc_state *dc_create_state(void) 961struct dc_state *dc_create_state(void)
959{ 962{
960 struct dc_state *context = dm_alloc(sizeof(struct dc_state)); 963 struct dc_state *context = kzalloc(sizeof(struct dc_state),
964 GFP_KERNEL);
961 965
962 if (!context) 966 if (!context)
963 return NULL; 967 return NULL;
@@ -979,7 +983,7 @@ void dc_release_state(struct dc_state *context)
979 983
980 if (atomic_read(&context->ref_count) == 0) { 984 if (atomic_read(&context->ref_count) == 0) {
981 dc_resource_state_destruct(context); 985 dc_resource_state_destruct(context);
982 dm_free(context); 986 kfree(context);
983 } 987 }
984} 988}
985 989
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
index 845ec421d861..43ebd8941b77 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c
@@ -1100,7 +1100,7 @@ create_fail:
1100struct dc_link *link_create(const struct link_init_data *init_params) 1100struct dc_link *link_create(const struct link_init_data *init_params)
1101{ 1101{
1102 struct dc_link *link = 1102 struct dc_link *link =
1103 dm_alloc(sizeof(*link)); 1103 kzalloc(sizeof(*link), GFP_KERNEL);
1104 1104
1105 if (NULL == link) 1105 if (NULL == link)
1106 goto alloc_fail; 1106 goto alloc_fail;
@@ -1111,7 +1111,7 @@ struct dc_link *link_create(const struct link_init_data *init_params)
1111 return link; 1111 return link;
1112 1112
1113construct_fail: 1113construct_fail:
1114 dm_free(link); 1114 kfree(link);
1115 1115
1116alloc_fail: 1116alloc_fail:
1117 return NULL; 1117 return NULL;
@@ -1120,7 +1120,7 @@ alloc_fail:
1120void link_destroy(struct dc_link **link) 1120void link_destroy(struct dc_link **link)
1121{ 1121{
1122 destruct(*link); 1122 destruct(*link);
1123 dm_free(*link); 1123 kfree(*link);
1124 *link = NULL; 1124 *link = NULL;
1125} 1125}
1126 1126
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c b/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c
index d09e539397ea..226512c11ab7 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_link_ddc.c
@@ -130,7 +130,7 @@ struct i2c_payloads *dal_ddc_i2c_payloads_create(struct dc_context *ctx, uint32_
130{ 130{
131 struct i2c_payloads *payloads; 131 struct i2c_payloads *payloads;
132 132
133 payloads = dm_alloc(sizeof(struct i2c_payloads)); 133 payloads = kzalloc(sizeof(struct i2c_payloads), GFP_KERNEL);
134 134
135 if (!payloads) 135 if (!payloads)
136 return NULL; 136 return NULL;
@@ -139,7 +139,7 @@ struct i2c_payloads *dal_ddc_i2c_payloads_create(struct dc_context *ctx, uint32_
139 &payloads->payloads, ctx, count, sizeof(struct i2c_payload))) 139 &payloads->payloads, ctx, count, sizeof(struct i2c_payload)))
140 return payloads; 140 return payloads;
141 141
142 dm_free(payloads); 142 kfree(payloads);
143 return NULL; 143 return NULL;
144 144
145} 145}
@@ -159,7 +159,7 @@ void dal_ddc_i2c_payloads_destroy(struct i2c_payloads **p)
159 if (!p || !*p) 159 if (!p || !*p)
160 return; 160 return;
161 dal_vector_destruct(&(*p)->payloads); 161 dal_vector_destruct(&(*p)->payloads);
162 dm_free(*p); 162 kfree(*p);
163 *p = NULL; 163 *p = NULL;
164 164
165} 165}
@@ -168,7 +168,7 @@ struct aux_payloads *dal_ddc_aux_payloads_create(struct dc_context *ctx, uint32_
168{ 168{
169 struct aux_payloads *payloads; 169 struct aux_payloads *payloads;
170 170
171 payloads = dm_alloc(sizeof(struct aux_payloads)); 171 payloads = kzalloc(sizeof(struct aux_payloads), GFP_KERNEL);
172 172
173 if (!payloads) 173 if (!payloads)
174 return NULL; 174 return NULL;
@@ -177,7 +177,7 @@ struct aux_payloads *dal_ddc_aux_payloads_create(struct dc_context *ctx, uint32_
177 &payloads->payloads, ctx, count, sizeof(struct aux_payload))) 177 &payloads->payloads, ctx, count, sizeof(struct aux_payload)))
178 return payloads; 178 return payloads;
179 179
180 dm_free(payloads); 180 kfree(payloads);
181 return NULL; 181 return NULL;
182} 182}
183 183
@@ -197,7 +197,7 @@ void dal_ddc_aux_payloads_destroy(struct aux_payloads **p)
197 return; 197 return;
198 198
199 dal_vector_destruct(&(*p)->payloads); 199 dal_vector_destruct(&(*p)->payloads);
200 dm_free(*p); 200 kfree(*p);
201 *p = NULL; 201 *p = NULL;
202} 202}
203 203
@@ -290,7 +290,7 @@ struct ddc_service *dal_ddc_service_create(
290{ 290{
291 struct ddc_service *ddc_service; 291 struct ddc_service *ddc_service;
292 292
293 ddc_service = dm_alloc(sizeof(struct ddc_service)); 293 ddc_service = kzalloc(sizeof(struct ddc_service), GFP_KERNEL);
294 294
295 if (!ddc_service) 295 if (!ddc_service)
296 return NULL; 296 return NULL;
@@ -298,7 +298,7 @@ struct ddc_service *dal_ddc_service_create(
298 if (construct(ddc_service, init_data)) 298 if (construct(ddc_service, init_data))
299 return ddc_service; 299 return ddc_service;
300 300
301 dm_free(ddc_service); 301 kfree(ddc_service);
302 return NULL; 302 return NULL;
303} 303}
304 304
@@ -315,7 +315,7 @@ void dal_ddc_service_destroy(struct ddc_service **ddc)
315 return; 315 return;
316 } 316 }
317 destruct(*ddc); 317 destruct(*ddc);
318 dm_free(*ddc); 318 kfree(*ddc);
319 *ddc = NULL; 319 *ddc = NULL;
320} 320}
321 321
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 dcfdfebd5c62..1832f252edab 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
@@ -160,7 +160,7 @@ void dc_destroy_resource_pool(struct dc *dc)
160 dc->res_pool->funcs->destroy(&dc->res_pool); 160 dc->res_pool->funcs->destroy(&dc->res_pool);
161 161
162 if (dc->hwseq) 162 if (dc->hwseq)
163 dm_free(dc->hwseq); 163 kfree(dc->hwseq);
164 } 164 }
165} 165}
166 166
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_sink.c b/drivers/gpu/drm/amd/display/dc/core/dc_sink.c
index 7717350297a5..b3bbafc8fd6a 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_sink.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_sink.c
@@ -34,7 +34,7 @@
34static void destruct(struct dc_sink *sink) 34static void destruct(struct dc_sink *sink)
35{ 35{
36 if (sink->dc_container_id) { 36 if (sink->dc_container_id) {
37 dm_free(sink->dc_container_id); 37 kfree(sink->dc_container_id);
38 sink->dc_container_id = NULL; 38 sink->dc_container_id = NULL;
39 } 39 }
40} 40}
@@ -74,13 +74,13 @@ void dc_sink_release(struct dc_sink *sink)
74 74
75 if (atomic_read(&sink->ref_count) == 0) { 75 if (atomic_read(&sink->ref_count) == 0) {
76 destruct(sink); 76 destruct(sink);
77 dm_free(sink); 77 kfree(sink);
78 } 78 }
79} 79}
80 80
81struct dc_sink *dc_sink_create(const struct dc_sink_init_data *init_params) 81struct dc_sink *dc_sink_create(const struct dc_sink_init_data *init_params)
82{ 82{
83 struct dc_sink *sink = dm_alloc(sizeof(*sink)); 83 struct dc_sink *sink = kzalloc(sizeof(*sink), GFP_KERNEL);
84 84
85 if (NULL == sink) 85 if (NULL == sink)
86 goto alloc_fail; 86 goto alloc_fail;
@@ -93,7 +93,7 @@ struct dc_sink *dc_sink_create(const struct dc_sink_init_data *init_params)
93 return sink; 93 return sink;
94 94
95construct_fail: 95construct_fail:
96 dm_free(sink); 96 kfree(sink);
97 97
98alloc_fail: 98alloc_fail:
99 return NULL; 99 return NULL;
@@ -117,7 +117,8 @@ bool dc_sink_set_container_id(struct dc_sink *dc_sink, const struct dc_container
117{ 117{
118 if (dc_sink && container_id) { 118 if (dc_sink && container_id) {
119 if (!dc_sink->dc_container_id) 119 if (!dc_sink->dc_container_id)
120 dc_sink->dc_container_id = dm_alloc(sizeof(*dc_sink->dc_container_id)); 120 dc_sink->dc_container_id = kzalloc(sizeof(*dc_sink->dc_container_id),
121 GFP_KERNEL);
121 122
122 if (dc_sink->dc_container_id) { 123 if (dc_sink->dc_container_id) {
123 memmove(&dc_sink->dc_container_id->guid, &container_id->guid, 124 memmove(&dc_sink->dc_container_id->guid, &container_id->guid,
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
index a421779093d9..d5da847ffad6 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_stream.c
@@ -131,7 +131,7 @@ void dc_stream_release(struct dc_stream_state *stream)
131 131
132 if (atomic_read(&stream->ref_count) == 0) { 132 if (atomic_read(&stream->ref_count) == 0) {
133 destruct(stream); 133 destruct(stream);
134 dm_free(stream); 134 kfree(stream);
135 } 135 }
136 } 136 }
137} 137}
@@ -144,7 +144,7 @@ struct dc_stream_state *dc_create_stream_for_sink(
144 if (sink == NULL) 144 if (sink == NULL)
145 goto alloc_fail; 145 goto alloc_fail;
146 146
147 stream = dm_alloc(sizeof(struct dc_stream_state)); 147 stream = kzalloc(sizeof(struct dc_stream_state), GFP_KERNEL);
148 148
149 if (NULL == stream) 149 if (NULL == stream)
150 goto alloc_fail; 150 goto alloc_fail;
@@ -157,7 +157,7 @@ struct dc_stream_state *dc_create_stream_for_sink(
157 return stream; 157 return stream;
158 158
159construct_fail: 159construct_fail:
160 dm_free(stream); 160 kfree(stream);
161 161
162alloc_fail: 162alloc_fail:
163 return NULL; 163 return NULL;
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_surface.c b/drivers/gpu/drm/amd/display/dc/core/dc_surface.c
index e96f63eed070..511ada94530e 100644
--- a/drivers/gpu/drm/amd/display/dc/core/dc_surface.c
+++ b/drivers/gpu/drm/amd/display/dc/core/dc_surface.c
@@ -68,7 +68,8 @@ struct dc_plane_state *dc_create_plane_state(struct dc *dc)
68{ 68{
69 struct dc *core_dc = dc; 69 struct dc *core_dc = dc;
70 70
71 struct dc_plane_state *plane_state = dm_alloc(sizeof(*plane_state)); 71 struct dc_plane_state *plane_state = kzalloc(sizeof(*plane_state),
72 GFP_KERNEL);
72 73
73 if (NULL == plane_state) 74 if (NULL == plane_state)
74 goto alloc_fail; 75 goto alloc_fail;
@@ -81,7 +82,7 @@ struct dc_plane_state *dc_create_plane_state(struct dc *dc)
81 return plane_state; 82 return plane_state;
82 83
83construct_fail: 84construct_fail:
84 dm_free(plane_state); 85 kfree(plane_state);
85 86
86alloc_fail: 87alloc_fail:
87 return NULL; 88 return NULL;
@@ -133,7 +134,7 @@ void dc_plane_state_release(struct dc_plane_state *plane_state)
133 134
134 if (atomic_read(&plane_state->ref_count) == 0) { 135 if (atomic_read(&plane_state->ref_count) == 0) {
135 destruct(plane_state); 136 destruct(plane_state);
136 dm_free(plane_state); 137 kfree(plane_state);
137 } 138 }
138} 139}
139 140
@@ -149,14 +150,14 @@ void dc_gamma_release(struct dc_gamma **gamma)
149 atomic_dec(&(*gamma)->ref_count); 150 atomic_dec(&(*gamma)->ref_count);
150 151
151 if (atomic_read(&(*gamma)->ref_count) == 0) 152 if (atomic_read(&(*gamma)->ref_count) == 0)
152 dm_free((*gamma)); 153 kfree((*gamma));
153 154
154 *gamma = NULL; 155 *gamma = NULL;
155} 156}
156 157
157struct dc_gamma *dc_create_gamma() 158struct dc_gamma *dc_create_gamma()
158{ 159{
159 struct dc_gamma *gamma = dm_alloc(sizeof(*gamma)); 160 struct dc_gamma *gamma = kzalloc(sizeof(*gamma), GFP_KERNEL);
160 161
161 if (gamma == NULL) 162 if (gamma == NULL)
162 goto alloc_fail; 163 goto alloc_fail;
@@ -181,12 +182,12 @@ void dc_transfer_func_release(struct dc_transfer_func *tf)
181 atomic_dec(&tf->ref_count); 182 atomic_dec(&tf->ref_count);
182 183
183 if (atomic_read(&tf->ref_count) == 0) 184 if (atomic_read(&tf->ref_count) == 0)
184 dm_free(tf); 185 kfree(tf);
185} 186}
186 187
187struct dc_transfer_func *dc_create_transfer_func() 188struct dc_transfer_func *dc_create_transfer_func()
188{ 189{
189 struct dc_transfer_func *tf = dm_alloc(sizeof(*tf)); 190 struct dc_transfer_func *tf = kzalloc(sizeof(*tf), GFP_KERNEL);
190 191
191 if (tf == NULL) 192 if (tf == NULL)
192 goto alloc_fail; 193 goto alloc_fail;
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_abm.c b/drivers/gpu/drm/amd/display/dc/dce/dce_abm.c
index 0e9d914e1a8f..0e0336c5af4e 100644
--- a/drivers/gpu/drm/amd/display/dc/dce/dce_abm.c
+++ b/drivers/gpu/drm/amd/display/dc/dce/dce_abm.c
@@ -462,7 +462,7 @@ struct abm *dce_abm_create(
462 const struct dce_abm_shift *abm_shift, 462 const struct dce_abm_shift *abm_shift,
463 const struct dce_abm_mask *abm_mask) 463 const struct dce_abm_mask *abm_mask)
464{ 464{
465 struct dce_abm *abm_dce = dm_alloc(sizeof(*abm_dce)); 465 struct dce_abm *abm_dce = kzalloc(sizeof(*abm_dce), GFP_KERNEL);
466 466
467 if (abm_dce == NULL) { 467 if (abm_dce == NULL) {
468 BREAK_TO_DEBUGGER(); 468 BREAK_TO_DEBUGGER();
@@ -480,6 +480,6 @@ void dce_abm_destroy(struct abm **abm)
480{ 480{
481 struct dce_abm *abm_dce = TO_DCE_ABM(*abm); 481 struct dce_abm *abm_dce = TO_DCE_ABM(*abm);
482 482
483 dm_free(abm_dce); 483 kfree(abm_dce);
484 *abm = NULL; 484 *abm = NULL;
485} 485}
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_audio.c b/drivers/gpu/drm/amd/display/dc/dce/dce_audio.c
index b94c1e5d85cb..198f4532e100 100644
--- a/drivers/gpu/drm/amd/display/dc/dce/dce_audio.c
+++ b/drivers/gpu/drm/amd/display/dc/dce/dce_audio.c
@@ -897,7 +897,7 @@ void dce_aud_destroy(struct audio **audio)
897{ 897{
898 struct dce_audio *aud = DCE_AUD(*audio); 898 struct dce_audio *aud = DCE_AUD(*audio);
899 899
900 dm_free(aud); 900 kfree(aud);
901 *audio = NULL; 901 *audio = NULL;
902} 902}
903 903
@@ -909,7 +909,7 @@ struct audio *dce_audio_create(
909 const struct dce_aduio_mask *masks 909 const struct dce_aduio_mask *masks
910 ) 910 )
911{ 911{
912 struct dce_audio *audio = dm_alloc(sizeof(*audio)); 912 struct dce_audio *audio = kzalloc(sizeof(*audio), GFP_KERNEL);
913 913
914 if (audio == NULL) { 914 if (audio == NULL) {
915 ASSERT_CRITICAL(audio); 915 ASSERT_CRITICAL(audio);
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 d3b61b92ebec..31280d252753 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
@@ -1084,12 +1084,14 @@ static void get_ss_info_from_atombios(
1084 if (*ss_entries_num == 0) 1084 if (*ss_entries_num == 0)
1085 return; 1085 return;
1086 1086
1087 ss_info = dm_alloc(sizeof(struct spread_spectrum_info) * (*ss_entries_num)); 1087 ss_info = kzalloc(sizeof(struct spread_spectrum_info) * (*ss_entries_num),
1088 GFP_KERNEL);
1088 ss_info_cur = ss_info; 1089 ss_info_cur = ss_info;
1089 if (ss_info == NULL) 1090 if (ss_info == NULL)
1090 return; 1091 return;
1091 1092
1092 ss_data = dm_alloc(sizeof(struct spread_spectrum_data) * (*ss_entries_num)); 1093 ss_data = kzalloc(sizeof(struct spread_spectrum_data) * (*ss_entries_num),
1094 GFP_KERNEL);
1093 if (ss_data == NULL) 1095 if (ss_data == NULL)
1094 goto out_free_info; 1096 goto out_free_info;
1095 1097
@@ -1157,14 +1159,14 @@ static void get_ss_info_from_atombios(
1157 } 1159 }
1158 1160
1159 *spread_spectrum_data = ss_data; 1161 *spread_spectrum_data = ss_data;
1160 dm_free(ss_info); 1162 kfree(ss_info);
1161 return; 1163 return;
1162 1164
1163out_free_data: 1165out_free_data:
1164 dm_free(ss_data); 1166 kfree(ss_data);
1165 *ss_entries_num = 0; 1167 *ss_entries_num = 0;
1166out_free_info: 1168out_free_info:
1167 dm_free(ss_info); 1169 kfree(ss_info);
1168} 1170}
1169 1171
1170static void ss_info_from_atombios_create( 1172static void ss_info_from_atombios_create(
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c b/drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c
index 06d9a3e7c8a2..3e9ff2f5472d 100644
--- a/drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c
+++ b/drivers/gpu/drm/amd/display/dc/dce/dce_clocks.c
@@ -719,7 +719,7 @@ struct display_clock *dce_disp_clk_create(
719 const struct dce_disp_clk_shift *clk_shift, 719 const struct dce_disp_clk_shift *clk_shift,
720 const struct dce_disp_clk_mask *clk_mask) 720 const struct dce_disp_clk_mask *clk_mask)
721{ 721{
722 struct dce_disp_clk *clk_dce = dm_alloc(sizeof(*clk_dce)); 722 struct dce_disp_clk *clk_dce = kzalloc(sizeof(*clk_dce), GFP_KERNEL);
723 723
724 if (clk_dce == NULL) { 724 if (clk_dce == NULL) {
725 BREAK_TO_DEBUGGER(); 725 BREAK_TO_DEBUGGER();
@@ -742,7 +742,7 @@ struct display_clock *dce110_disp_clk_create(
742 const struct dce_disp_clk_shift *clk_shift, 742 const struct dce_disp_clk_shift *clk_shift,
743 const struct dce_disp_clk_mask *clk_mask) 743 const struct dce_disp_clk_mask *clk_mask)
744{ 744{
745 struct dce_disp_clk *clk_dce = dm_alloc(sizeof(*clk_dce)); 745 struct dce_disp_clk *clk_dce = kzalloc(sizeof(*clk_dce), GFP_KERNEL);
746 746
747 if (clk_dce == NULL) { 747 if (clk_dce == NULL) {
748 BREAK_TO_DEBUGGER(); 748 BREAK_TO_DEBUGGER();
@@ -767,7 +767,7 @@ struct display_clock *dce112_disp_clk_create(
767 const struct dce_disp_clk_shift *clk_shift, 767 const struct dce_disp_clk_shift *clk_shift,
768 const struct dce_disp_clk_mask *clk_mask) 768 const struct dce_disp_clk_mask *clk_mask)
769{ 769{
770 struct dce_disp_clk *clk_dce = dm_alloc(sizeof(*clk_dce)); 770 struct dce_disp_clk *clk_dce = kzalloc(sizeof(*clk_dce), GFP_KERNEL);
771 771
772 if (clk_dce == NULL) { 772 if (clk_dce == NULL) {
773 BREAK_TO_DEBUGGER(); 773 BREAK_TO_DEBUGGER();
@@ -788,7 +788,7 @@ struct display_clock *dce112_disp_clk_create(
788 788
789struct display_clock *dce120_disp_clk_create(struct dc_context *ctx) 789struct display_clock *dce120_disp_clk_create(struct dc_context *ctx)
790{ 790{
791 struct dce_disp_clk *clk_dce = dm_alloc(sizeof(*clk_dce)); 791 struct dce_disp_clk *clk_dce = kzalloc(sizeof(*clk_dce), GFP_KERNEL);
792 struct dm_pp_clock_levels_with_voltage clk_level_info = {0}; 792 struct dm_pp_clock_levels_with_voltage clk_level_info = {0};
793 793
794 if (clk_dce == NULL) { 794 if (clk_dce == NULL) {
@@ -822,6 +822,6 @@ void dce_disp_clk_destroy(struct display_clock **disp_clk)
822{ 822{
823 struct dce_disp_clk *clk_dce = TO_DCE_CLOCKS(*disp_clk); 823 struct dce_disp_clk *clk_dce = TO_DCE_CLOCKS(*disp_clk);
824 824
825 dm_free(clk_dce); 825 kfree(clk_dce);
826 *disp_clk = NULL; 826 *disp_clk = NULL;
827} 827}
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c b/drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c
index 313f61bf06e1..f9873cad40e0 100644
--- a/drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c
+++ b/drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c
@@ -573,7 +573,7 @@ struct dmcu *dce_dmcu_create(
573 const struct dce_dmcu_shift *dmcu_shift, 573 const struct dce_dmcu_shift *dmcu_shift,
574 const struct dce_dmcu_mask *dmcu_mask) 574 const struct dce_dmcu_mask *dmcu_mask)
575{ 575{
576 struct dce_dmcu *dmcu_dce = dm_alloc(sizeof(*dmcu_dce)); 576 struct dce_dmcu *dmcu_dce = kzalloc(sizeof(*dmcu_dce), GFP_KERNEL);
577 577
578 if (dmcu_dce == NULL) { 578 if (dmcu_dce == NULL) {
579 BREAK_TO_DEBUGGER(); 579 BREAK_TO_DEBUGGER();
@@ -595,7 +595,7 @@ struct dmcu *dcn10_dmcu_create(
595 const struct dce_dmcu_shift *dmcu_shift, 595 const struct dce_dmcu_shift *dmcu_shift,
596 const struct dce_dmcu_mask *dmcu_mask) 596 const struct dce_dmcu_mask *dmcu_mask)
597{ 597{
598 struct dce_dmcu *dmcu_dce = dm_alloc(sizeof(*dmcu_dce)); 598 struct dce_dmcu *dmcu_dce = kzalloc(sizeof(*dmcu_dce), GFP_KERNEL);
599 599
600 if (dmcu_dce == NULL) { 600 if (dmcu_dce == NULL) {
601 BREAK_TO_DEBUGGER(); 601 BREAK_TO_DEBUGGER();
@@ -615,6 +615,6 @@ void dce_dmcu_destroy(struct dmcu **dmcu)
615{ 615{
616 struct dce_dmcu *dmcu_dce = TO_DCE_DMCU(*dmcu); 616 struct dce_dmcu *dmcu_dce = TO_DCE_DMCU(*dmcu);
617 617
618 dm_free(dmcu_dce); 618 kfree(dmcu_dce);
619 *dmcu = NULL; 619 *dmcu = NULL;
620} 620}
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_ipp.c b/drivers/gpu/drm/amd/display/dc/dce/dce_ipp.c
index e010cf10d605..fa481d481132 100644
--- a/drivers/gpu/drm/amd/display/dc/dce/dce_ipp.c
+++ b/drivers/gpu/drm/amd/display/dc/dce/dce_ipp.c
@@ -261,6 +261,6 @@ void dce_ipp_construct(
261 261
262void dce_ipp_destroy(struct input_pixel_processor **ipp) 262void dce_ipp_destroy(struct input_pixel_processor **ipp)
263{ 263{
264 dm_free(TO_DCE_IPP(*ipp)); 264 kfree(TO_DCE_IPP(*ipp));
265 *ipp = NULL; 265 *ipp = NULL;
266} 266}
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c b/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c
index 0ce94ede80bf..2ce730de0dc3 100644
--- a/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c
+++ b/drivers/gpu/drm/amd/display/dc/dce/dce_link_encoder.c
@@ -1108,7 +1108,7 @@ void dce110_link_encoder_hw_init(
1108 1108
1109void dce110_link_encoder_destroy(struct link_encoder **enc) 1109void dce110_link_encoder_destroy(struct link_encoder **enc)
1110{ 1110{
1111 dm_free(TO_DCE110_LINK_ENC(*enc)); 1111 kfree(TO_DCE110_LINK_ENC(*enc));
1112 *enc = NULL; 1112 *enc = NULL;
1113} 1113}
1114 1114
diff --git a/drivers/gpu/drm/amd/display/dc/dce/dce_opp.c b/drivers/gpu/drm/amd/display/dc/dce/dce_opp.c
index 348e4b7047f1..c0736aeabd85 100644
--- a/drivers/gpu/drm/amd/display/dc/dce/dce_opp.c
+++ b/drivers/gpu/drm/amd/display/dc/dce/dce_opp.c
@@ -563,7 +563,7 @@ bool dce110_opp_construct(struct dce110_opp *opp110,
563void dce110_opp_destroy(struct output_pixel_processor **opp) 563void dce110_opp_destroy(struct output_pixel_processor **opp)
564{ 564{
565 if (*opp) 565 if (*opp)
566 dm_free(FROM_DCE11_OPP(*opp)); 566 kfree(FROM_DCE11_OPP(*opp));
567 *opp = NULL; 567 *opp = NULL;
568} 568}
569 569
diff --git a/drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c b/drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c
index ca6c7c2a1b4c..9a75bde32611 100644
--- a/drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c
+++ b/drivers/gpu/drm/amd/display/dc/dce100/dce100_resource.c
@@ -370,7 +370,7 @@ static struct timing_generator *dce100_timing_generator_create(
370 const struct dce110_timing_generator_offsets *offsets) 370 const struct dce110_timing_generator_offsets *offsets)
371{ 371{
372 struct dce110_timing_generator *tg110 = 372 struct dce110_timing_generator *tg110 =
373 dm_alloc(sizeof(struct dce110_timing_generator)); 373 kzalloc(sizeof(struct dce110_timing_generator), GFP_KERNEL);
374 374
375 if (!tg110) 375 if (!tg110)
376 return NULL; 376 return NULL;
@@ -380,7 +380,7 @@ static struct timing_generator *dce100_timing_generator_create(
380 return &tg110->base; 380 return &tg110->base;
381 381
382 BREAK_TO_DEBUGGER(); 382 BREAK_TO_DEBUGGER();
383 dm_free(tg110); 383 kfree(tg110);
384 return NULL; 384 return NULL;
385} 385}
386 386
@@ -389,7 +389,7 @@ static struct stream_encoder *dce100_stream_encoder_create(
389 struct dc_context *ctx) 389 struct dc_context *ctx)
390{ 390{
391 struct dce110_stream_encoder *enc110 = 391 struct dce110_stream_encoder *enc110 =
392 dm_alloc(sizeof(struct dce110_stream_encoder)); 392 kzalloc(sizeof(struct dce110_stream_encoder), GFP_KERNEL);
393 393
394 if (!enc110) 394 if (!enc110)
395 return NULL; 395 return NULL;
@@ -400,7 +400,7 @@ static struct stream_encoder *dce100_stream_encoder_create(
400 return &enc110->base; 400 return &enc110->base;
401 401
402 BREAK_TO_DEBUGGER(); 402 BREAK_TO_DEBUGGER();
403 dm_free(enc110); 403 kfree(enc110);
404 return NULL; 404 return NULL;
405} 405}
406 406
@@ -422,7 +422,7 @@ static const struct dce_hwseq_mask hwseq_mask = {
422static struct dce_hwseq *dce100_hwseq_create( 422static struct dce_hwseq *dce100_hwseq_create(
423 struct dc_context *ctx) 423 struct dc_context *ctx)
424{ 424{
425 struct dce_hwseq *hws = dm_alloc(sizeof(struct dce_hwseq)); 425 struct dce_hwseq *hws = kzalloc(sizeof(struct dce_hwseq), GFP_KERNEL);
426 426
427 if (hws) { 427 if (hws) {
428 hws->ctx = ctx; 428 hws->ctx = ctx;
@@ -467,7 +467,8 @@ static struct mem_input *dce100_mem_input_create(
467 struct dc_context *ctx, 467 struct dc_context *ctx,
468 uint32_t inst) 468 uint32_t inst)
469{ 469{
470 struct dce_mem_input *dce_mi = dm_alloc(sizeof(struct dce_mem_input)); 470 struct dce_mem_input *dce_mi = kzalloc(sizeof(struct dce_mem_input),
471 GFP_KERNEL);
471 472
472 if (!dce_mi) { 473 if (!dce_mi) {
473 BREAK_TO_DEBUGGER(); 474 BREAK_TO_DEBUGGER();
@@ -481,7 +482,7 @@ static struct mem_input *dce100_mem_input_create(
481 482
482static void dce100_transform_destroy(struct transform **xfm) 483static void dce100_transform_destroy(struct transform **xfm)
483{ 484{
484 dm_free(TO_DCE_TRANSFORM(*xfm)); 485 kfree(TO_DCE_TRANSFORM(*xfm));
485 *xfm = NULL; 486 *xfm = NULL;
486} 487}
487 488
@@ -490,7 +491,7 @@ static struct transform *dce100_transform_create(
490 uint32_t inst) 491 uint32_t inst)
491{ 492{
492 struct dce_transform *transform = 493 struct dce_transform *transform =
493 dm_alloc(sizeof(struct dce_transform)); 494 kzalloc(sizeof(struct dce_transform), GFP_KERNEL);
494 495
495 if (!transform) 496 if (!transform)
496 return NULL; 497 return NULL;
@@ -501,14 +502,14 @@ static struct transform *dce100_transform_create(
501 } 502 }
502 503
503 BREAK_TO_DEBUGGER(); 504 BREAK_TO_DEBUGGER();
504 dm_free(transform); 505 kfree(transform);
505 return NULL; 506 return NULL;
506} 507}
507 508
508static struct input_pixel_processor *dce100_ipp_create( 509static struct input_pixel_processor *dce100_ipp_create(
509 struct dc_context *ctx, uint32_t inst) 510 struct dc_context *ctx, uint32_t inst)
510{ 511{
511 struct dce_ipp *ipp = dm_alloc(sizeof(struct dce_ipp)); 512 struct dce_ipp *ipp = kzalloc(sizeof(struct dce_ipp), GFP_KERNEL);
512 513
513 if (!ipp) { 514 if (!ipp) {
514 BREAK_TO_DEBUGGER(); 515 BREAK_TO_DEBUGGER();
@@ -532,7 +533,7 @@ struct link_encoder *dce100_link_encoder_create(
532 const struct encoder_init_data *enc_init_data) 533 const struct encoder_init_data *enc_init_data)
533{ 534{
534 struct dce110_link_encoder *enc110 = 535 struct dce110_link_encoder *enc110 =
535 dm_alloc(sizeof(struct dce110_link_encoder)); 536 kzalloc(sizeof(struct dce110_link_encoder), GFP_KERNEL);
536 537
537 if (!enc110) 538 if (!enc110)
538 return NULL; 539 return NULL;
@@ -549,7 +550,7 @@ struct link_encoder *dce100_link_encoder_create(
549 } 550 }
550 551
551 BREAK_TO_DEBUGGER(); 552 BREAK_TO_DEBUGGER();
552 dm_free(enc110); 553 kfree(enc110);
553 return NULL; 554 return NULL;
554} 555}
555 556
@@ -558,7 +559,7 @@ struct output_pixel_processor *dce100_opp_create(
558 uint32_t inst) 559 uint32_t inst)
559{ 560{
560 struct dce110_opp *opp = 561 struct dce110_opp *opp =
561 dm_alloc(sizeof(struct dce110_opp)); 562 kzalloc(sizeof(struct dce110_opp), GFP_KERNEL);
562 563
563 if (!opp) 564 if (!opp)
564 return NULL; 565 return NULL;
@@ -568,7 +569,7 @@ struct output_pixel_processor *dce100_opp_create(
568 return &opp->base; 569 return &opp->base;
569 570
570 BREAK_TO_DEBUGGER(); 571 BREAK_TO_DEBUGGER();
571 dm_free(opp); 572 kfree(opp);
572 return NULL; 573 return NULL;
573} 574}
574 575
@@ -580,7 +581,7 @@ struct clock_source *dce100_clock_source_create(
580 bool dp_clk_src) 581 bool dp_clk_src)
581{ 582{
582 struct dce110_clk_src *clk_src = 583 struct dce110_clk_src *clk_src =
583 dm_alloc(sizeof(struct dce110_clk_src)); 584 kzalloc(sizeof(struct dce110_clk_src), GFP_KERNEL);
584 585
585 if (!clk_src) 586 if (!clk_src)
586 return NULL; 587 return NULL;
@@ -597,7 +598,7 @@ struct clock_source *dce100_clock_source_create(
597 598
598void dce100_clock_source_destroy(struct clock_source **clk_src) 599void dce100_clock_source_destroy(struct clock_source **clk_src)
599{ 600{
600 dm_free(TO_DCE110_CLK_SRC(*clk_src)); 601 kfree(TO_DCE110_CLK_SRC(*clk_src));
601 *clk_src = NULL; 602 *clk_src = NULL;
602} 603}
603 604
@@ -616,19 +617,19 @@ static void destruct(struct dce110_resource_pool *pool)
616 dce_ipp_destroy(&pool->base.ipps[i]); 617 dce_ipp_destroy(&pool->base.ipps[i]);
617 618
618 if (pool->base.mis[i] != NULL) { 619 if (pool->base.mis[i] != NULL) {
619 dm_free(TO_DCE_MEM_INPUT(pool->base.mis[i])); 620 kfree(TO_DCE_MEM_INPUT(pool->base.mis[i]));
620 pool->base.mis[i] = NULL; 621 pool->base.mis[i] = NULL;
621 } 622 }
622 623
623 if (pool->base.timing_generators[i] != NULL) { 624 if (pool->base.timing_generators[i] != NULL) {
624 dm_free(DCE110TG_FROM_TG(pool->base.timing_generators[i])); 625 kfree(DCE110TG_FROM_TG(pool->base.timing_generators[i]));
625 pool->base.timing_generators[i] = NULL; 626 pool->base.timing_generators[i] = NULL;
626 } 627 }
627 } 628 }
628 629
629 for (i = 0; i < pool->base.stream_enc_count; i++) { 630 for (i = 0; i < pool->base.stream_enc_count; i++) {
630 if (pool->base.stream_enc[i] != NULL) 631 if (pool->base.stream_enc[i] != NULL)
631 dm_free(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i])); 632 kfree(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i]));
632 } 633 }
633 634
634 for (i = 0; i < pool->base.clk_src_count; i++) { 635 for (i = 0; i < pool->base.clk_src_count; i++) {
@@ -768,7 +769,7 @@ static void dce100_destroy_resource_pool(struct resource_pool **pool)
768 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool); 769 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool);
769 770
770 destruct(dce110_pool); 771 destruct(dce110_pool);
771 dm_free(dce110_pool); 772 kfree(dce110_pool);
772 *pool = NULL; 773 *pool = NULL;
773} 774}
774 775
@@ -950,7 +951,7 @@ struct resource_pool *dce100_create_resource_pool(
950 struct dc *dc) 951 struct dc *dc)
951{ 952{
952 struct dce110_resource_pool *pool = 953 struct dce110_resource_pool *pool =
953 dm_alloc(sizeof(struct dce110_resource_pool)); 954 kzalloc(sizeof(struct dce110_resource_pool), GFP_KERNEL);
954 955
955 if (!pool) 956 if (!pool)
956 return NULL; 957 return NULL;
diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_compressor.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_compressor.c
index f82c26995609..90770cb2ffcd 100644
--- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_compressor.c
+++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_compressor.c
@@ -388,7 +388,7 @@ void dce110_compressor_set_fbc_invalidation_triggers(
388struct compressor *dce110_compressor_create(struct dc_context *ctx) 388struct compressor *dce110_compressor_create(struct dc_context *ctx)
389{ 389{
390 struct dce110_compressor *cp110 = 390 struct dce110_compressor *cp110 =
391 dm_alloc(sizeof(struct dce110_compressor)); 391 kzalloc(sizeof(struct dce110_compressor), GFP_KERNEL);
392 392
393 if (!cp110) 393 if (!cp110)
394 return NULL; 394 return NULL;
@@ -397,13 +397,13 @@ struct compressor *dce110_compressor_create(struct dc_context *ctx)
397 return &cp110->base; 397 return &cp110->base;
398 398
399 BREAK_TO_DEBUGGER(); 399 BREAK_TO_DEBUGGER();
400 dm_free(cp110); 400 kfree(cp110);
401 return NULL; 401 return NULL;
402} 402}
403 403
404void dce110_compressor_destroy(struct compressor **compressor) 404void dce110_compressor_destroy(struct compressor **compressor)
405{ 405{
406 dm_free(TO_DCE110_COMPRESSOR(*compressor)); 406 kfree(TO_DCE110_COMPRESSOR(*compressor));
407 *compressor = NULL; 407 *compressor = NULL;
408} 408}
409 409
diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c
index 25eda52c32ef..787e20e15221 100644
--- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c
+++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c
@@ -405,7 +405,7 @@ static struct timing_generator *dce110_timing_generator_create(
405 const struct dce110_timing_generator_offsets *offsets) 405 const struct dce110_timing_generator_offsets *offsets)
406{ 406{
407 struct dce110_timing_generator *tg110 = 407 struct dce110_timing_generator *tg110 =
408 dm_alloc(sizeof(struct dce110_timing_generator)); 408 kzalloc(sizeof(struct dce110_timing_generator), GFP_KERNEL);
409 409
410 if (!tg110) 410 if (!tg110)
411 return NULL; 411 return NULL;
@@ -414,7 +414,7 @@ static struct timing_generator *dce110_timing_generator_create(
414 return &tg110->base; 414 return &tg110->base;
415 415
416 BREAK_TO_DEBUGGER(); 416 BREAK_TO_DEBUGGER();
417 dm_free(tg110); 417 kfree(tg110);
418 return NULL; 418 return NULL;
419} 419}
420 420
@@ -423,7 +423,7 @@ static struct stream_encoder *dce110_stream_encoder_create(
423 struct dc_context *ctx) 423 struct dc_context *ctx)
424{ 424{
425 struct dce110_stream_encoder *enc110 = 425 struct dce110_stream_encoder *enc110 =
426 dm_alloc(sizeof(struct dce110_stream_encoder)); 426 kzalloc(sizeof(struct dce110_stream_encoder), GFP_KERNEL);
427 427
428 if (!enc110) 428 if (!enc110)
429 return NULL; 429 return NULL;
@@ -434,7 +434,7 @@ static struct stream_encoder *dce110_stream_encoder_create(
434 return &enc110->base; 434 return &enc110->base;
435 435
436 BREAK_TO_DEBUGGER(); 436 BREAK_TO_DEBUGGER();
437 dm_free(enc110); 437 kfree(enc110);
438 return NULL; 438 return NULL;
439} 439}
440 440
@@ -460,7 +460,7 @@ static const struct dce_hwseq_mask hwseq_mask = {
460static struct dce_hwseq *dce110_hwseq_create( 460static struct dce_hwseq *dce110_hwseq_create(
461 struct dc_context *ctx) 461 struct dc_context *ctx)
462{ 462{
463 struct dce_hwseq *hws = dm_alloc(sizeof(struct dce_hwseq)); 463 struct dce_hwseq *hws = kzalloc(sizeof(struct dce_hwseq), GFP_KERNEL);
464 464
465 if (hws) { 465 if (hws) {
466 hws->ctx = ctx; 466 hws->ctx = ctx;
@@ -505,7 +505,8 @@ static struct mem_input *dce110_mem_input_create(
505 struct dc_context *ctx, 505 struct dc_context *ctx,
506 uint32_t inst) 506 uint32_t inst)
507{ 507{
508 struct dce_mem_input *dce_mi = dm_alloc(sizeof(struct dce_mem_input)); 508 struct dce_mem_input *dce_mi = kzalloc(sizeof(struct dce_mem_input),
509 GFP_KERNEL);
509 510
510 if (!dce_mi) { 511 if (!dce_mi) {
511 BREAK_TO_DEBUGGER(); 512 BREAK_TO_DEBUGGER();
@@ -519,7 +520,7 @@ static struct mem_input *dce110_mem_input_create(
519 520
520static void dce110_transform_destroy(struct transform **xfm) 521static void dce110_transform_destroy(struct transform **xfm)
521{ 522{
522 dm_free(TO_DCE_TRANSFORM(*xfm)); 523 kfree(TO_DCE_TRANSFORM(*xfm));
523 *xfm = NULL; 524 *xfm = NULL;
524} 525}
525 526
@@ -528,7 +529,7 @@ static struct transform *dce110_transform_create(
528 uint32_t inst) 529 uint32_t inst)
529{ 530{
530 struct dce_transform *transform = 531 struct dce_transform *transform =
531 dm_alloc(sizeof(struct dce_transform)); 532 kzalloc(sizeof(struct dce_transform), GFP_KERNEL);
532 533
533 if (!transform) 534 if (!transform)
534 return NULL; 535 return NULL;
@@ -538,14 +539,14 @@ static struct transform *dce110_transform_create(
538 return &transform->base; 539 return &transform->base;
539 540
540 BREAK_TO_DEBUGGER(); 541 BREAK_TO_DEBUGGER();
541 dm_free(transform); 542 kfree(transform);
542 return NULL; 543 return NULL;
543} 544}
544 545
545static struct input_pixel_processor *dce110_ipp_create( 546static struct input_pixel_processor *dce110_ipp_create(
546 struct dc_context *ctx, uint32_t inst) 547 struct dc_context *ctx, uint32_t inst)
547{ 548{
548 struct dce_ipp *ipp = dm_alloc(sizeof(struct dce_ipp)); 549 struct dce_ipp *ipp = kzalloc(sizeof(struct dce_ipp), GFP_KERNEL);
549 550
550 if (!ipp) { 551 if (!ipp) {
551 BREAK_TO_DEBUGGER(); 552 BREAK_TO_DEBUGGER();
@@ -569,7 +570,7 @@ static struct link_encoder *dce110_link_encoder_create(
569 const struct encoder_init_data *enc_init_data) 570 const struct encoder_init_data *enc_init_data)
570{ 571{
571 struct dce110_link_encoder *enc110 = 572 struct dce110_link_encoder *enc110 =
572 dm_alloc(sizeof(struct dce110_link_encoder)); 573 kzalloc(sizeof(struct dce110_link_encoder), GFP_KERNEL);
573 574
574 if (!enc110) 575 if (!enc110)
575 return NULL; 576 return NULL;
@@ -586,7 +587,7 @@ static struct link_encoder *dce110_link_encoder_create(
586 } 587 }
587 588
588 BREAK_TO_DEBUGGER(); 589 BREAK_TO_DEBUGGER();
589 dm_free(enc110); 590 kfree(enc110);
590 return NULL; 591 return NULL;
591} 592}
592 593
@@ -595,7 +596,7 @@ static struct output_pixel_processor *dce110_opp_create(
595 uint32_t inst) 596 uint32_t inst)
596{ 597{
597 struct dce110_opp *opp = 598 struct dce110_opp *opp =
598 dm_alloc(sizeof(struct dce110_opp)); 599 kzalloc(sizeof(struct dce110_opp), GFP_KERNEL);
599 600
600 if (!opp) 601 if (!opp)
601 return NULL; 602 return NULL;
@@ -605,7 +606,7 @@ static struct output_pixel_processor *dce110_opp_create(
605 return &opp->base; 606 return &opp->base;
606 607
607 BREAK_TO_DEBUGGER(); 608 BREAK_TO_DEBUGGER();
608 dm_free(opp); 609 kfree(opp);
609 return NULL; 610 return NULL;
610} 611}
611 612
@@ -617,7 +618,7 @@ struct clock_source *dce110_clock_source_create(
617 bool dp_clk_src) 618 bool dp_clk_src)
618{ 619{
619 struct dce110_clk_src *clk_src = 620 struct dce110_clk_src *clk_src =
620 dm_alloc(sizeof(struct dce110_clk_src)); 621 kzalloc(sizeof(struct dce110_clk_src), GFP_KERNEL);
621 622
622 if (!clk_src) 623 if (!clk_src)
623 return NULL; 624 return NULL;
@@ -642,15 +643,15 @@ void dce110_clock_source_destroy(struct clock_source **clk_src)
642 dce110_clk_src = TO_DCE110_CLK_SRC(*clk_src); 643 dce110_clk_src = TO_DCE110_CLK_SRC(*clk_src);
643 644
644 if (dce110_clk_src->dp_ss_params) 645 if (dce110_clk_src->dp_ss_params)
645 dm_free(dce110_clk_src->dp_ss_params); 646 kfree(dce110_clk_src->dp_ss_params);
646 647
647 if (dce110_clk_src->hdmi_ss_params) 648 if (dce110_clk_src->hdmi_ss_params)
648 dm_free(dce110_clk_src->hdmi_ss_params); 649 kfree(dce110_clk_src->hdmi_ss_params);
649 650
650 if (dce110_clk_src->dvi_ss_params) 651 if (dce110_clk_src->dvi_ss_params)
651 dm_free(dce110_clk_src->dvi_ss_params); 652 kfree(dce110_clk_src->dvi_ss_params);
652 653
653 dm_free(dce110_clk_src); 654 kfree(dce110_clk_src);
654 *clk_src = NULL; 655 *clk_src = NULL;
655} 656}
656 657
@@ -669,19 +670,19 @@ static void destruct(struct dce110_resource_pool *pool)
669 dce_ipp_destroy(&pool->base.ipps[i]); 670 dce_ipp_destroy(&pool->base.ipps[i]);
670 671
671 if (pool->base.mis[i] != NULL) { 672 if (pool->base.mis[i] != NULL) {
672 dm_free(TO_DCE_MEM_INPUT(pool->base.mis[i])); 673 kfree(TO_DCE_MEM_INPUT(pool->base.mis[i]));
673 pool->base.mis[i] = NULL; 674 pool->base.mis[i] = NULL;
674 } 675 }
675 676
676 if (pool->base.timing_generators[i] != NULL) { 677 if (pool->base.timing_generators[i] != NULL) {
677 dm_free(DCE110TG_FROM_TG(pool->base.timing_generators[i])); 678 kfree(DCE110TG_FROM_TG(pool->base.timing_generators[i]));
678 pool->base.timing_generators[i] = NULL; 679 pool->base.timing_generators[i] = NULL;
679 } 680 }
680 } 681 }
681 682
682 for (i = 0; i < pool->base.stream_enc_count; i++) { 683 for (i = 0; i < pool->base.stream_enc_count; i++) {
683 if (pool->base.stream_enc[i] != NULL) 684 if (pool->base.stream_enc[i] != NULL)
684 dm_free(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i])); 685 kfree(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i]));
685 } 686 }
686 687
687 for (i = 0; i < pool->base.clk_src_count; i++) { 688 for (i = 0; i < pool->base.clk_src_count; i++) {
@@ -1031,7 +1032,7 @@ static void dce110_destroy_resource_pool(struct resource_pool **pool)
1031 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool); 1032 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool);
1032 1033
1033 destruct(dce110_pool); 1034 destruct(dce110_pool);
1034 dm_free(dce110_pool); 1035 kfree(dce110_pool);
1035 *pool = NULL; 1036 *pool = NULL;
1036} 1037}
1037 1038
@@ -1048,10 +1049,14 @@ static const struct resource_funcs dce110_res_pool_funcs = {
1048 1049
1049static bool underlay_create(struct dc_context *ctx, struct resource_pool *pool) 1050static bool underlay_create(struct dc_context *ctx, struct resource_pool *pool)
1050{ 1051{
1051 struct dce110_timing_generator *dce110_tgv = dm_alloc(sizeof (*dce110_tgv)); 1052 struct dce110_timing_generator *dce110_tgv = kzalloc(sizeof(*dce110_tgv),
1052 struct dce_transform *dce110_xfmv = dm_alloc(sizeof (*dce110_xfmv)); 1053 GFP_KERNEL);
1053 struct dce_mem_input *dce110_miv = dm_alloc(sizeof (*dce110_miv)); 1054 struct dce_transform *dce110_xfmv = kzalloc(sizeof(*dce110_xfmv),
1054 struct dce110_opp *dce110_oppv = dm_alloc(sizeof (*dce110_oppv)); 1055 GFP_KERNEL);
1056 struct dce_mem_input *dce110_miv = kzalloc(sizeof(*dce110_miv),
1057 GFP_KERNEL);
1058 struct dce110_opp *dce110_oppv = kzalloc(sizeof(*dce110_oppv),
1059 GFP_KERNEL);
1055 1060
1056 if ((dce110_tgv == NULL) || 1061 if ((dce110_tgv == NULL) ||
1057 (dce110_xfmv == NULL) || 1062 (dce110_xfmv == NULL) ||
@@ -1332,7 +1337,7 @@ struct resource_pool *dce110_create_resource_pool(
1332 struct hw_asic_id asic_id) 1337 struct hw_asic_id asic_id)
1333{ 1338{
1334 struct dce110_resource_pool *pool = 1339 struct dce110_resource_pool *pool =
1335 dm_alloc(sizeof(struct dce110_resource_pool)); 1340 kzalloc(sizeof(struct dce110_resource_pool), GFP_KERNEL);
1336 1341
1337 if (!pool) 1342 if (!pool)
1338 return NULL; 1343 return NULL;
diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_compressor.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_compressor.c
index 75af2125344b..e75895baa132 100644
--- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_compressor.c
+++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_compressor.c
@@ -839,7 +839,7 @@ bool dce112_compressor_construct(struct dce112_compressor *compressor,
839struct compressor *dce112_compressor_create(struct dc_context *ctx) 839struct compressor *dce112_compressor_create(struct dc_context *ctx)
840{ 840{
841 struct dce112_compressor *cp110 = 841 struct dce112_compressor *cp110 =
842 dm_alloc(sizeof(struct dce112_compressor)); 842 kzalloc(sizeof(struct dce112_compressor), GFP_KERNEL);
843 843
844 if (!cp110) 844 if (!cp110)
845 return NULL; 845 return NULL;
@@ -848,12 +848,12 @@ struct compressor *dce112_compressor_create(struct dc_context *ctx)
848 return &cp110->base; 848 return &cp110->base;
849 849
850 BREAK_TO_DEBUGGER(); 850 BREAK_TO_DEBUGGER();
851 dm_free(cp110); 851 kfree(cp110);
852 return NULL; 852 return NULL;
853} 853}
854 854
855void dce112_compressor_destroy(struct compressor **compressor) 855void dce112_compressor_destroy(struct compressor **compressor)
856{ 856{
857 dm_free(TO_DCE112_COMPRESSOR(*compressor)); 857 kfree(TO_DCE112_COMPRESSOR(*compressor));
858 *compressor = NULL; 858 *compressor = NULL;
859} 859}
diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c
index de6f71d8a89b..4e2ed3429a90 100644
--- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c
+++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c
@@ -410,7 +410,7 @@ static struct timing_generator *dce112_timing_generator_create(
410 const struct dce110_timing_generator_offsets *offsets) 410 const struct dce110_timing_generator_offsets *offsets)
411{ 411{
412 struct dce110_timing_generator *tg110 = 412 struct dce110_timing_generator *tg110 =
413 dm_alloc(sizeof(struct dce110_timing_generator)); 413 kzalloc(sizeof(struct dce110_timing_generator), GFP_KERNEL);
414 414
415 if (!tg110) 415 if (!tg110)
416 return NULL; 416 return NULL;
@@ -419,7 +419,7 @@ static struct timing_generator *dce112_timing_generator_create(
419 return &tg110->base; 419 return &tg110->base;
420 420
421 BREAK_TO_DEBUGGER(); 421 BREAK_TO_DEBUGGER();
422 dm_free(tg110); 422 kfree(tg110);
423 return NULL; 423 return NULL;
424} 424}
425 425
@@ -428,7 +428,7 @@ static struct stream_encoder *dce112_stream_encoder_create(
428 struct dc_context *ctx) 428 struct dc_context *ctx)
429{ 429{
430 struct dce110_stream_encoder *enc110 = 430 struct dce110_stream_encoder *enc110 =
431 dm_alloc(sizeof(struct dce110_stream_encoder)); 431 kzalloc(sizeof(struct dce110_stream_encoder), GFP_KERNEL);
432 432
433 if (!enc110) 433 if (!enc110)
434 return NULL; 434 return NULL;
@@ -439,7 +439,7 @@ static struct stream_encoder *dce112_stream_encoder_create(
439 return &enc110->base; 439 return &enc110->base;
440 440
441 BREAK_TO_DEBUGGER(); 441 BREAK_TO_DEBUGGER();
442 dm_free(enc110); 442 kfree(enc110);
443 return NULL; 443 return NULL;
444} 444}
445 445
@@ -461,7 +461,7 @@ static const struct dce_hwseq_mask hwseq_mask = {
461static struct dce_hwseq *dce112_hwseq_create( 461static struct dce_hwseq *dce112_hwseq_create(
462 struct dc_context *ctx) 462 struct dc_context *ctx)
463{ 463{
464 struct dce_hwseq *hws = dm_alloc(sizeof(struct dce_hwseq)); 464 struct dce_hwseq *hws = kzalloc(sizeof(struct dce_hwseq), GFP_KERNEL);
465 465
466 if (hws) { 466 if (hws) {
467 hws->ctx = ctx; 467 hws->ctx = ctx;
@@ -501,7 +501,8 @@ static struct mem_input *dce112_mem_input_create(
501 struct dc_context *ctx, 501 struct dc_context *ctx,
502 uint32_t inst) 502 uint32_t inst)
503{ 503{
504 struct dce_mem_input *dce_mi = dm_alloc(sizeof(struct dce_mem_input)); 504 struct dce_mem_input *dce_mi = kzalloc(sizeof(struct dce_mem_input),
505 GFP_KERNEL);
505 506
506 if (!dce_mi) { 507 if (!dce_mi) {
507 BREAK_TO_DEBUGGER(); 508 BREAK_TO_DEBUGGER();
@@ -514,7 +515,7 @@ static struct mem_input *dce112_mem_input_create(
514 515
515static void dce112_transform_destroy(struct transform **xfm) 516static void dce112_transform_destroy(struct transform **xfm)
516{ 517{
517 dm_free(TO_DCE_TRANSFORM(*xfm)); 518 kfree(TO_DCE_TRANSFORM(*xfm));
518 *xfm = NULL; 519 *xfm = NULL;
519} 520}
520 521
@@ -523,7 +524,7 @@ static struct transform *dce112_transform_create(
523 uint32_t inst) 524 uint32_t inst)
524{ 525{
525 struct dce_transform *transform = 526 struct dce_transform *transform =
526 dm_alloc(sizeof(struct dce_transform)); 527 kzalloc(sizeof(struct dce_transform), GFP_KERNEL);
527 528
528 if (!transform) 529 if (!transform)
529 return NULL; 530 return NULL;
@@ -535,7 +536,7 @@ static struct transform *dce112_transform_create(
535 } 536 }
536 537
537 BREAK_TO_DEBUGGER(); 538 BREAK_TO_DEBUGGER();
538 dm_free(transform); 539 kfree(transform);
539 return NULL; 540 return NULL;
540} 541}
541 542
@@ -554,7 +555,7 @@ struct link_encoder *dce112_link_encoder_create(
554 const struct encoder_init_data *enc_init_data) 555 const struct encoder_init_data *enc_init_data)
555{ 556{
556 struct dce110_link_encoder *enc110 = 557 struct dce110_link_encoder *enc110 =
557 dm_alloc(sizeof(struct dce110_link_encoder)); 558 kzalloc(sizeof(struct dce110_link_encoder), GFP_KERNEL);
558 559
559 if (!enc110) 560 if (!enc110)
560 return NULL; 561 return NULL;
@@ -571,14 +572,14 @@ struct link_encoder *dce112_link_encoder_create(
571 } 572 }
572 573
573 BREAK_TO_DEBUGGER(); 574 BREAK_TO_DEBUGGER();
574 dm_free(enc110); 575 kfree(enc110);
575 return NULL; 576 return NULL;
576} 577}
577 578
578static struct input_pixel_processor *dce112_ipp_create( 579static struct input_pixel_processor *dce112_ipp_create(
579 struct dc_context *ctx, uint32_t inst) 580 struct dc_context *ctx, uint32_t inst)
580{ 581{
581 struct dce_ipp *ipp = dm_alloc(sizeof(struct dce_ipp)); 582 struct dce_ipp *ipp = kzalloc(sizeof(struct dce_ipp), GFP_KERNEL);
582 583
583 if (!ipp) { 584 if (!ipp) {
584 BREAK_TO_DEBUGGER(); 585 BREAK_TO_DEBUGGER();
@@ -595,7 +596,7 @@ struct output_pixel_processor *dce112_opp_create(
595 uint32_t inst) 596 uint32_t inst)
596{ 597{
597 struct dce110_opp *opp = 598 struct dce110_opp *opp =
598 dm_alloc(sizeof(struct dce110_opp)); 599 kzalloc(sizeof(struct dce110_opp), GFP_KERNEL);
599 600
600 if (!opp) 601 if (!opp)
601 return NULL; 602 return NULL;
@@ -605,7 +606,7 @@ struct output_pixel_processor *dce112_opp_create(
605 return &opp->base; 606 return &opp->base;
606 607
607 BREAK_TO_DEBUGGER(); 608 BREAK_TO_DEBUGGER();
608 dm_free(opp); 609 kfree(opp);
609 return NULL; 610 return NULL;
610} 611}
611 612
@@ -617,7 +618,7 @@ struct clock_source *dce112_clock_source_create(
617 bool dp_clk_src) 618 bool dp_clk_src)
618{ 619{
619 struct dce110_clk_src *clk_src = 620 struct dce110_clk_src *clk_src =
620 dm_alloc(sizeof(struct dce110_clk_src)); 621 kzalloc(sizeof(struct dce110_clk_src), GFP_KERNEL);
621 622
622 if (!clk_src) 623 if (!clk_src)
623 return NULL; 624 return NULL;
@@ -634,7 +635,7 @@ struct clock_source *dce112_clock_source_create(
634 635
635void dce112_clock_source_destroy(struct clock_source **clk_src) 636void dce112_clock_source_destroy(struct clock_source **clk_src)
636{ 637{
637 dm_free(TO_DCE110_CLK_SRC(*clk_src)); 638 kfree(TO_DCE110_CLK_SRC(*clk_src));
638 *clk_src = NULL; 639 *clk_src = NULL;
639} 640}
640 641
@@ -653,19 +654,19 @@ static void destruct(struct dce110_resource_pool *pool)
653 dce_ipp_destroy(&pool->base.ipps[i]); 654 dce_ipp_destroy(&pool->base.ipps[i]);
654 655
655 if (pool->base.mis[i] != NULL) { 656 if (pool->base.mis[i] != NULL) {
656 dm_free(TO_DCE_MEM_INPUT(pool->base.mis[i])); 657 kfree(TO_DCE_MEM_INPUT(pool->base.mis[i]));
657 pool->base.mis[i] = NULL; 658 pool->base.mis[i] = NULL;
658 } 659 }
659 660
660 if (pool->base.timing_generators[i] != NULL) { 661 if (pool->base.timing_generators[i] != NULL) {
661 dm_free(DCE110TG_FROM_TG(pool->base.timing_generators[i])); 662 kfree(DCE110TG_FROM_TG(pool->base.timing_generators[i]));
662 pool->base.timing_generators[i] = NULL; 663 pool->base.timing_generators[i] = NULL;
663 } 664 }
664 } 665 }
665 666
666 for (i = 0; i < pool->base.stream_enc_count; i++) { 667 for (i = 0; i < pool->base.stream_enc_count; i++) {
667 if (pool->base.stream_enc[i] != NULL) 668 if (pool->base.stream_enc[i] != NULL)
668 dm_free(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i])); 669 kfree(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i]));
669 } 670 }
670 671
671 for (i = 0; i < pool->base.clk_src_count; i++) { 672 for (i = 0; i < pool->base.clk_src_count; i++) {
@@ -940,7 +941,7 @@ static void dce112_destroy_resource_pool(struct resource_pool **pool)
940 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool); 941 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool);
941 942
942 destruct(dce110_pool); 943 destruct(dce110_pool);
943 dm_free(dce110_pool); 944 kfree(dce110_pool);
944 *pool = NULL; 945 *pool = NULL;
945} 946}
946 947
@@ -1298,7 +1299,7 @@ struct resource_pool *dce112_create_resource_pool(
1298 struct dc *dc) 1299 struct dc *dc)
1299{ 1300{
1300 struct dce110_resource_pool *pool = 1301 struct dce110_resource_pool *pool =
1301 dm_alloc(sizeof(struct dce110_resource_pool)); 1302 kzalloc(sizeof(struct dce110_resource_pool), GFP_KERNEL);
1302 1303
1303 if (!pool) 1304 if (!pool)
1304 return NULL; 1305 return NULL;
diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c
index e5d2d98982f7..6b5d5948ddb7 100644
--- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c
+++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c
@@ -351,7 +351,7 @@ struct output_pixel_processor *dce120_opp_create(
351 uint32_t inst) 351 uint32_t inst)
352{ 352{
353 struct dce110_opp *opp = 353 struct dce110_opp *opp =
354 dm_alloc(sizeof(struct dce110_opp)); 354 kzalloc(sizeof(struct dce110_opp), GFP_KERNEL);
355 355
356 if (!opp) 356 if (!opp)
357 return NULL; 357 return NULL;
@@ -361,7 +361,7 @@ struct output_pixel_processor *dce120_opp_create(
361 return &opp->base; 361 return &opp->base;
362 362
363 BREAK_TO_DEBUGGER(); 363 BREAK_TO_DEBUGGER();
364 dm_free(opp); 364 kfree(opp);
365 return NULL; 365 return NULL;
366} 366}
367 367
@@ -388,7 +388,7 @@ struct clock_source *dce120_clock_source_create(
388 bool dp_clk_src) 388 bool dp_clk_src)
389{ 389{
390 struct dce110_clk_src *clk_src = 390 struct dce110_clk_src *clk_src =
391 dm_alloc(sizeof(*clk_src)); 391 kzalloc(sizeof(*clk_src), GFP_KERNEL);
392 392
393 if (!clk_src) 393 if (!clk_src)
394 return NULL; 394 return NULL;
@@ -405,7 +405,7 @@ struct clock_source *dce120_clock_source_create(
405 405
406void dce120_clock_source_destroy(struct clock_source **clk_src) 406void dce120_clock_source_destroy(struct clock_source **clk_src)
407{ 407{
408 dm_free(TO_DCE110_CLK_SRC(*clk_src)); 408 kfree(TO_DCE110_CLK_SRC(*clk_src));
409 *clk_src = NULL; 409 *clk_src = NULL;
410} 410}
411 411
@@ -428,7 +428,7 @@ static struct timing_generator *dce120_timing_generator_create(
428 const struct dce110_timing_generator_offsets *offsets) 428 const struct dce110_timing_generator_offsets *offsets)
429{ 429{
430 struct dce110_timing_generator *tg110 = 430 struct dce110_timing_generator *tg110 =
431 dm_alloc(sizeof(struct dce110_timing_generator)); 431 kzalloc(sizeof(struct dce110_timing_generator), GFP_KERNEL);
432 432
433 if (!tg110) 433 if (!tg110)
434 return NULL; 434 return NULL;
@@ -437,13 +437,13 @@ static struct timing_generator *dce120_timing_generator_create(
437 return &tg110->base; 437 return &tg110->base;
438 438
439 BREAK_TO_DEBUGGER(); 439 BREAK_TO_DEBUGGER();
440 dm_free(tg110); 440 kfree(tg110);
441 return NULL; 441 return NULL;
442} 442}
443 443
444static void dce120_transform_destroy(struct transform **xfm) 444static void dce120_transform_destroy(struct transform **xfm)
445{ 445{
446 dm_free(TO_DCE_TRANSFORM(*xfm)); 446 kfree(TO_DCE_TRANSFORM(*xfm));
447 *xfm = NULL; 447 *xfm = NULL;
448} 448}
449 449
@@ -462,7 +462,7 @@ static void destruct(struct dce110_resource_pool *pool)
462 dce_ipp_destroy(&pool->base.ipps[i]); 462 dce_ipp_destroy(&pool->base.ipps[i]);
463 463
464 if (pool->base.mis[i] != NULL) { 464 if (pool->base.mis[i] != NULL) {
465 dm_free(TO_DCE_MEM_INPUT(pool->base.mis[i])); 465 kfree(TO_DCE_MEM_INPUT(pool->base.mis[i]));
466 pool->base.mis[i] = NULL; 466 pool->base.mis[i] = NULL;
467 } 467 }
468 468
@@ -471,7 +471,7 @@ static void destruct(struct dce110_resource_pool *pool)
471 } 471 }
472 472
473 if (pool->base.timing_generators[i] != NULL) { 473 if (pool->base.timing_generators[i] != NULL) {
474 dm_free(DCE110TG_FROM_TG(pool->base.timing_generators[i])); 474 kfree(DCE110TG_FROM_TG(pool->base.timing_generators[i]));
475 pool->base.timing_generators[i] = NULL; 475 pool->base.timing_generators[i] = NULL;
476 } 476 }
477 } 477 }
@@ -483,7 +483,7 @@ static void destruct(struct dce110_resource_pool *pool)
483 483
484 for (i = 0; i < pool->base.stream_enc_count; i++) { 484 for (i = 0; i < pool->base.stream_enc_count; i++) {
485 if (pool->base.stream_enc[i] != NULL) 485 if (pool->base.stream_enc[i] != NULL)
486 dm_free(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i])); 486 kfree(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i]));
487 } 487 }
488 488
489 for (i = 0; i < pool->base.clk_src_count; i++) { 489 for (i = 0; i < pool->base.clk_src_count; i++) {
@@ -539,7 +539,7 @@ static struct link_encoder *dce120_link_encoder_create(
539 const struct encoder_init_data *enc_init_data) 539 const struct encoder_init_data *enc_init_data)
540{ 540{
541 struct dce110_link_encoder *enc110 = 541 struct dce110_link_encoder *enc110 =
542 dm_alloc(sizeof(struct dce110_link_encoder)); 542 kzalloc(sizeof(struct dce110_link_encoder), GFP_KERNEL);
543 543
544 if (!enc110) 544 if (!enc110)
545 return NULL; 545 return NULL;
@@ -556,14 +556,14 @@ static struct link_encoder *dce120_link_encoder_create(
556 } 556 }
557 557
558 BREAK_TO_DEBUGGER(); 558 BREAK_TO_DEBUGGER();
559 dm_free(enc110); 559 kfree(enc110);
560 return NULL; 560 return NULL;
561} 561}
562 562
563static struct input_pixel_processor *dce120_ipp_create( 563static struct input_pixel_processor *dce120_ipp_create(
564 struct dc_context *ctx, uint32_t inst) 564 struct dc_context *ctx, uint32_t inst)
565{ 565{
566 struct dce_ipp *ipp = dm_alloc(sizeof(struct dce_ipp)); 566 struct dce_ipp *ipp = kzalloc(sizeof(struct dce_ipp), GFP_KERNEL);
567 567
568 if (!ipp) { 568 if (!ipp) {
569 BREAK_TO_DEBUGGER(); 569 BREAK_TO_DEBUGGER();
@@ -580,7 +580,7 @@ static struct stream_encoder *dce120_stream_encoder_create(
580 struct dc_context *ctx) 580 struct dc_context *ctx)
581{ 581{
582 struct dce110_stream_encoder *enc110 = 582 struct dce110_stream_encoder *enc110 =
583 dm_alloc(sizeof(struct dce110_stream_encoder)); 583 kzalloc(sizeof(struct dce110_stream_encoder), GFP_KERNEL);
584 584
585 if (!enc110) 585 if (!enc110)
586 return NULL; 586 return NULL;
@@ -591,7 +591,7 @@ static struct stream_encoder *dce120_stream_encoder_create(
591 return &enc110->base; 591 return &enc110->base;
592 592
593 BREAK_TO_DEBUGGER(); 593 BREAK_TO_DEBUGGER();
594 dm_free(enc110); 594 kfree(enc110);
595 return NULL; 595 return NULL;
596} 596}
597 597
@@ -614,7 +614,7 @@ static const struct dce_hwseq_mask hwseq_mask = {
614static struct dce_hwseq *dce120_hwseq_create( 614static struct dce_hwseq *dce120_hwseq_create(
615 struct dc_context *ctx) 615 struct dc_context *ctx)
616{ 616{
617 struct dce_hwseq *hws = dm_alloc(sizeof(struct dce_hwseq)); 617 struct dce_hwseq *hws = kzalloc(sizeof(struct dce_hwseq), GFP_KERNEL);
618 618
619 if (hws) { 619 if (hws) {
620 hws->ctx = ctx; 620 hws->ctx = ctx;
@@ -654,7 +654,8 @@ static struct mem_input *dce120_mem_input_create(
654 struct dc_context *ctx, 654 struct dc_context *ctx,
655 uint32_t inst) 655 uint32_t inst)
656{ 656{
657 struct dce_mem_input *dce_mi = dm_alloc(sizeof(struct dce_mem_input)); 657 struct dce_mem_input *dce_mi = kzalloc(sizeof(struct dce_mem_input),
658 GFP_KERNEL);
658 659
659 if (!dce_mi) { 660 if (!dce_mi) {
660 BREAK_TO_DEBUGGER(); 661 BREAK_TO_DEBUGGER();
@@ -670,7 +671,7 @@ static struct transform *dce120_transform_create(
670 uint32_t inst) 671 uint32_t inst)
671{ 672{
672 struct dce_transform *transform = 673 struct dce_transform *transform =
673 dm_alloc(sizeof(struct dce_transform)); 674 kzalloc(sizeof(struct dce_transform), GFP_KERNEL);
674 675
675 if (!transform) 676 if (!transform)
676 return NULL; 677 return NULL;
@@ -682,7 +683,7 @@ static struct transform *dce120_transform_create(
682 } 683 }
683 684
684 BREAK_TO_DEBUGGER(); 685 BREAK_TO_DEBUGGER();
685 dm_free(transform); 686 kfree(transform);
686 return NULL; 687 return NULL;
687} 688}
688 689
@@ -691,7 +692,7 @@ static void dce120_destroy_resource_pool(struct resource_pool **pool)
691 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool); 692 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool);
692 693
693 destruct(dce110_pool); 694 destruct(dce110_pool);
694 dm_free(dce110_pool); 695 kfree(dce110_pool);
695 *pool = NULL; 696 *pool = NULL;
696} 697}
697 698
@@ -1006,7 +1007,7 @@ struct resource_pool *dce120_create_resource_pool(
1006 struct dc *dc) 1007 struct dc *dc)
1007{ 1008{
1008 struct dce110_resource_pool *pool = 1009 struct dce110_resource_pool *pool =
1009 dm_alloc(sizeof(struct dce110_resource_pool)); 1010 kzalloc(sizeof(struct dce110_resource_pool), GFP_KERNEL);
1010 1011
1011 if (!pool) 1012 if (!pool)
1012 return NULL; 1013 return NULL;
diff --git a/drivers/gpu/drm/amd/display/dc/dce80/dce80_compressor.c b/drivers/gpu/drm/amd/display/dc/dce80/dce80_compressor.c
index 77626d7624c6..cc1c0d390945 100644
--- a/drivers/gpu/drm/amd/display/dc/dce80/dce80_compressor.c
+++ b/drivers/gpu/drm/amd/display/dc/dce80/dce80_compressor.c
@@ -819,7 +819,7 @@ bool dce80_compressor_construct(struct dce80_compressor *compressor,
819struct compressor *dce80_compressor_create(struct dc_context *ctx) 819struct compressor *dce80_compressor_create(struct dc_context *ctx)
820{ 820{
821 struct dce80_compressor *cp80 = 821 struct dce80_compressor *cp80 =
822 dm_alloc(sizeof(struct dce80_compressor)); 822 kzalloc(sizeof(struct dce80_compressor), GFP_KERNEL);
823 823
824 if (!cp80) 824 if (!cp80)
825 return NULL; 825 return NULL;
@@ -828,12 +828,12 @@ struct compressor *dce80_compressor_create(struct dc_context *ctx)
828 return &cp80->base; 828 return &cp80->base;
829 829
830 BREAK_TO_DEBUGGER(); 830 BREAK_TO_DEBUGGER();
831 dm_free(cp80); 831 kfree(cp80);
832 return NULL; 832 return NULL;
833} 833}
834 834
835void dce80_compressor_destroy(struct compressor **compressor) 835void dce80_compressor_destroy(struct compressor **compressor)
836{ 836{
837 dm_free(TO_DCE80_COMPRESSOR(*compressor)); 837 kfree(TO_DCE80_COMPRESSOR(*compressor));
838 *compressor = NULL; 838 *compressor = NULL;
839} 839}
diff --git a/drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c b/drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c
index 5453f02ea8ca..170509a4a221 100644
--- a/drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c
+++ b/drivers/gpu/drm/amd/display/dc/dce80/dce80_resource.c
@@ -399,7 +399,7 @@ static struct timing_generator *dce80_timing_generator_create(
399 const struct dce110_timing_generator_offsets *offsets) 399 const struct dce110_timing_generator_offsets *offsets)
400{ 400{
401 struct dce110_timing_generator *tg110 = 401 struct dce110_timing_generator *tg110 =
402 dm_alloc(sizeof(struct dce110_timing_generator)); 402 kzalloc(sizeof(struct dce110_timing_generator), GFP_KERNEL);
403 403
404 if (!tg110) 404 if (!tg110)
405 return NULL; 405 return NULL;
@@ -408,7 +408,7 @@ static struct timing_generator *dce80_timing_generator_create(
408 return &tg110->base; 408 return &tg110->base;
409 409
410 BREAK_TO_DEBUGGER(); 410 BREAK_TO_DEBUGGER();
411 dm_free(tg110); 411 kfree(tg110);
412 return NULL; 412 return NULL;
413} 413}
414 414
@@ -417,7 +417,7 @@ static struct output_pixel_processor *dce80_opp_create(
417 uint32_t inst) 417 uint32_t inst)
418{ 418{
419 struct dce110_opp *opp = 419 struct dce110_opp *opp =
420 dm_alloc(sizeof(struct dce110_opp)); 420 kzalloc(sizeof(struct dce110_opp), GFP_KERNEL);
421 421
422 if (!opp) 422 if (!opp)
423 return NULL; 423 return NULL;
@@ -427,7 +427,7 @@ static struct output_pixel_processor *dce80_opp_create(
427 return &opp->base; 427 return &opp->base;
428 428
429 BREAK_TO_DEBUGGER(); 429 BREAK_TO_DEBUGGER();
430 dm_free(opp); 430 kfree(opp);
431 return NULL; 431 return NULL;
432} 432}
433 433
@@ -436,7 +436,7 @@ static struct stream_encoder *dce80_stream_encoder_create(
436 struct dc_context *ctx) 436 struct dc_context *ctx)
437{ 437{
438 struct dce110_stream_encoder *enc110 = 438 struct dce110_stream_encoder *enc110 =
439 dm_alloc(sizeof(struct dce110_stream_encoder)); 439 kzalloc(sizeof(struct dce110_stream_encoder), GFP_KERNEL);
440 440
441 if (!enc110) 441 if (!enc110)
442 return NULL; 442 return NULL;
@@ -447,7 +447,7 @@ static struct stream_encoder *dce80_stream_encoder_create(
447 return &enc110->base; 447 return &enc110->base;
448 448
449 BREAK_TO_DEBUGGER(); 449 BREAK_TO_DEBUGGER();
450 dm_free(enc110); 450 kfree(enc110);
451 return NULL; 451 return NULL;
452} 452}
453 453
@@ -469,7 +469,7 @@ static const struct dce_hwseq_mask hwseq_mask = {
469static struct dce_hwseq *dce80_hwseq_create( 469static struct dce_hwseq *dce80_hwseq_create(
470 struct dc_context *ctx) 470 struct dc_context *ctx)
471{ 471{
472 struct dce_hwseq *hws = dm_alloc(sizeof(struct dce_hwseq)); 472 struct dce_hwseq *hws = kzalloc(sizeof(struct dce_hwseq), GFP_KERNEL);
473 473
474 if (hws) { 474 if (hws) {
475 hws->ctx = ctx; 475 hws->ctx = ctx;
@@ -514,7 +514,8 @@ static struct mem_input *dce80_mem_input_create(
514 struct dc_context *ctx, 514 struct dc_context *ctx,
515 uint32_t inst) 515 uint32_t inst)
516{ 516{
517 struct dce_mem_input *dce_mi = dm_alloc(sizeof(struct dce_mem_input)); 517 struct dce_mem_input *dce_mi = kzalloc(sizeof(struct dce_mem_input),
518 GFP_KERNEL);
518 519
519 if (!dce_mi) { 520 if (!dce_mi) {
520 BREAK_TO_DEBUGGER(); 521 BREAK_TO_DEBUGGER();
@@ -528,7 +529,7 @@ static struct mem_input *dce80_mem_input_create(
528 529
529static void dce80_transform_destroy(struct transform **xfm) 530static void dce80_transform_destroy(struct transform **xfm)
530{ 531{
531 dm_free(TO_DCE_TRANSFORM(*xfm)); 532 kfree(TO_DCE_TRANSFORM(*xfm));
532 *xfm = NULL; 533 *xfm = NULL;
533} 534}
534 535
@@ -537,7 +538,7 @@ static struct transform *dce80_transform_create(
537 uint32_t inst) 538 uint32_t inst)
538{ 539{
539 struct dce_transform *transform = 540 struct dce_transform *transform =
540 dm_alloc(sizeof(struct dce_transform)); 541 kzalloc(sizeof(struct dce_transform), GFP_KERNEL);
541 542
542 if (!transform) 543 if (!transform)
543 return NULL; 544 return NULL;
@@ -549,7 +550,7 @@ static struct transform *dce80_transform_create(
549 } 550 }
550 551
551 BREAK_TO_DEBUGGER(); 552 BREAK_TO_DEBUGGER();
552 dm_free(transform); 553 kfree(transform);
553 return NULL; 554 return NULL;
554} 555}
555 556
@@ -565,7 +566,7 @@ struct link_encoder *dce80_link_encoder_create(
565 const struct encoder_init_data *enc_init_data) 566 const struct encoder_init_data *enc_init_data)
566{ 567{
567 struct dce110_link_encoder *enc110 = 568 struct dce110_link_encoder *enc110 =
568 dm_alloc(sizeof(struct dce110_link_encoder)); 569 kzalloc(sizeof(struct dce110_link_encoder), GFP_KERNEL);
569 570
570 if (!enc110) 571 if (!enc110)
571 return NULL; 572 return NULL;
@@ -582,7 +583,7 @@ struct link_encoder *dce80_link_encoder_create(
582 } 583 }
583 584
584 BREAK_TO_DEBUGGER(); 585 BREAK_TO_DEBUGGER();
585 dm_free(enc110); 586 kfree(enc110);
586 return NULL; 587 return NULL;
587} 588}
588 589
@@ -594,7 +595,7 @@ struct clock_source *dce80_clock_source_create(
594 bool dp_clk_src) 595 bool dp_clk_src)
595{ 596{
596 struct dce110_clk_src *clk_src = 597 struct dce110_clk_src *clk_src =
597 dm_alloc(sizeof(struct dce110_clk_src)); 598 kzalloc(sizeof(struct dce110_clk_src), GFP_KERNEL);
598 599
599 if (!clk_src) 600 if (!clk_src)
600 return NULL; 601 return NULL;
@@ -611,14 +612,14 @@ struct clock_source *dce80_clock_source_create(
611 612
612void dce80_clock_source_destroy(struct clock_source **clk_src) 613void dce80_clock_source_destroy(struct clock_source **clk_src)
613{ 614{
614 dm_free(TO_DCE110_CLK_SRC(*clk_src)); 615 kfree(TO_DCE110_CLK_SRC(*clk_src));
615 *clk_src = NULL; 616 *clk_src = NULL;
616} 617}
617 618
618static struct input_pixel_processor *dce80_ipp_create( 619static struct input_pixel_processor *dce80_ipp_create(
619 struct dc_context *ctx, uint32_t inst) 620 struct dc_context *ctx, uint32_t inst)
620{ 621{
621 struct dce_ipp *ipp = dm_alloc(sizeof(struct dce_ipp)); 622 struct dce_ipp *ipp = kzalloc(sizeof(struct dce_ipp), GFP_KERNEL);
622 623
623 if (!ipp) { 624 if (!ipp) {
624 BREAK_TO_DEBUGGER(); 625 BREAK_TO_DEBUGGER();
@@ -645,19 +646,19 @@ static void destruct(struct dce110_resource_pool *pool)
645 dce_ipp_destroy(&pool->base.ipps[i]); 646 dce_ipp_destroy(&pool->base.ipps[i]);
646 647
647 if (pool->base.mis[i] != NULL) { 648 if (pool->base.mis[i] != NULL) {
648 dm_free(TO_DCE_MEM_INPUT(pool->base.mis[i])); 649 kfree(TO_DCE_MEM_INPUT(pool->base.mis[i]));
649 pool->base.mis[i] = NULL; 650 pool->base.mis[i] = NULL;
650 } 651 }
651 652
652 if (pool->base.timing_generators[i] != NULL) { 653 if (pool->base.timing_generators[i] != NULL) {
653 dm_free(DCE110TG_FROM_TG(pool->base.timing_generators[i])); 654 kfree(DCE110TG_FROM_TG(pool->base.timing_generators[i]));
654 pool->base.timing_generators[i] = NULL; 655 pool->base.timing_generators[i] = NULL;
655 } 656 }
656 } 657 }
657 658
658 for (i = 0; i < pool->base.stream_enc_count; i++) { 659 for (i = 0; i < pool->base.stream_enc_count; i++) {
659 if (pool->base.stream_enc[i] != NULL) 660 if (pool->base.stream_enc[i] != NULL)
660 dm_free(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i])); 661 kfree(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i]));
661 } 662 }
662 663
663 for (i = 0; i < pool->base.clk_src_count; i++) { 664 for (i = 0; i < pool->base.clk_src_count; i++) {
@@ -781,7 +782,7 @@ static void dce80_destroy_resource_pool(struct resource_pool **pool)
781 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool); 782 struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool);
782 783
783 destruct(dce110_pool); 784 destruct(dce110_pool);
784 dm_free(dce110_pool); 785 kfree(dce110_pool);
785 *pool = NULL; 786 *pool = NULL;
786} 787}
787 788
@@ -948,7 +949,7 @@ struct resource_pool *dce80_create_resource_pool(
948 struct dc *dc) 949 struct dc *dc)
949{ 950{
950 struct dce110_resource_pool *pool = 951 struct dce110_resource_pool *pool =
951 dm_alloc(sizeof(struct dce110_resource_pool)); 952 kzalloc(sizeof(struct dce110_resource_pool), GFP_KERNEL);
952 953
953 if (!pool) 954 if (!pool)
954 return NULL; 955 return NULL;
@@ -1113,7 +1114,7 @@ struct resource_pool *dce81_create_resource_pool(
1113 struct dc *dc) 1114 struct dc *dc)
1114{ 1115{
1115 struct dce110_resource_pool *pool = 1116 struct dce110_resource_pool *pool =
1116 dm_alloc(sizeof(struct dce110_resource_pool)); 1117 kzalloc(sizeof(struct dce110_resource_pool), GFP_KERNEL);
1117 1118
1118 if (!pool) 1119 if (!pool)
1119 return NULL; 1120 return NULL;
@@ -1274,7 +1275,7 @@ struct resource_pool *dce83_create_resource_pool(
1274 struct dc *dc) 1275 struct dc *dc)
1275{ 1276{
1276 struct dce110_resource_pool *pool = 1277 struct dce110_resource_pool *pool =
1277 dm_alloc(sizeof(struct dce110_resource_pool)); 1278 kzalloc(sizeof(struct dce110_resource_pool), GFP_KERNEL);
1278 1279
1279 if (!pool) 1280 if (!pool)
1280 return NULL; 1281 return NULL;
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
index 5e0e2464eab3..67bd6a738fe9 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_ipp.c
@@ -225,7 +225,7 @@ static void ippn10_cursor_set_position(
225 225
226static void dcn10_ipp_destroy(struct input_pixel_processor **ipp) 226static void dcn10_ipp_destroy(struct input_pixel_processor **ipp)
227{ 227{
228 dm_free(TO_DCN10_IPP(*ipp)); 228 kfree(TO_DCN10_IPP(*ipp));
229 *ipp = NULL; 229 *ipp = NULL;
230} 230}
231 231
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c
index 8048782ac599..a136f70b7a3c 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_opp.c
@@ -314,7 +314,7 @@ static void oppn10_set_stereo_polarity(
314 314
315static void dcn10_opp_destroy(struct output_pixel_processor **opp) 315static void dcn10_opp_destroy(struct output_pixel_processor **opp)
316{ 316{
317 dm_free(TO_DCN10_OPP(*opp)); 317 kfree(TO_DCN10_OPP(*opp));
318 *opp = NULL; 318 *opp = NULL;
319} 319}
320 320
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c
index 298eb44ad9bf..71adda0e5b59 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c
@@ -468,7 +468,7 @@ static const struct dc_debug debug_defaults_diags = {
468 468
469static void dcn10_dpp_destroy(struct transform **xfm) 469static void dcn10_dpp_destroy(struct transform **xfm)
470{ 470{
471 dm_free(TO_DCN10_DPP(*xfm)); 471 kfree(TO_DCN10_DPP(*xfm));
472 *xfm = NULL; 472 *xfm = NULL;
473} 473}
474 474
@@ -477,7 +477,7 @@ static struct transform *dcn10_dpp_create(
477 uint32_t inst) 477 uint32_t inst)
478{ 478{
479 struct dcn10_dpp *dpp = 479 struct dcn10_dpp *dpp =
480 dm_alloc(sizeof(struct dcn10_dpp)); 480 kzalloc(sizeof(struct dcn10_dpp), GFP_KERNEL);
481 481
482 if (!dpp) 482 if (!dpp)
483 return NULL; 483 return NULL;
@@ -487,7 +487,7 @@ static struct transform *dcn10_dpp_create(
487 return &dpp->base; 487 return &dpp->base;
488 488
489 BREAK_TO_DEBUGGER(); 489 BREAK_TO_DEBUGGER();
490 dm_free(dpp); 490 kfree(dpp);
491 return NULL; 491 return NULL;
492} 492}
493 493
@@ -495,7 +495,7 @@ static struct input_pixel_processor *dcn10_ipp_create(
495 struct dc_context *ctx, uint32_t inst) 495 struct dc_context *ctx, uint32_t inst)
496{ 496{
497 struct dcn10_ipp *ipp = 497 struct dcn10_ipp *ipp =
498 dm_alloc(sizeof(struct dcn10_ipp)); 498 kzalloc(sizeof(struct dcn10_ipp), GFP_KERNEL);
499 499
500 if (!ipp) { 500 if (!ipp) {
501 BREAK_TO_DEBUGGER(); 501 BREAK_TO_DEBUGGER();
@@ -512,7 +512,7 @@ static struct output_pixel_processor *dcn10_opp_create(
512 struct dc_context *ctx, uint32_t inst) 512 struct dc_context *ctx, uint32_t inst)
513{ 513{
514 struct dcn10_opp *opp = 514 struct dcn10_opp *opp =
515 dm_alloc(sizeof(struct dcn10_opp)); 515 kzalloc(sizeof(struct dcn10_opp), GFP_KERNEL);
516 516
517 if (!opp) { 517 if (!opp) {
518 BREAK_TO_DEBUGGER(); 518 BREAK_TO_DEBUGGER();
@@ -526,7 +526,8 @@ static struct output_pixel_processor *dcn10_opp_create(
526 526
527static struct mpc *dcn10_mpc_create(struct dc_context *ctx) 527static struct mpc *dcn10_mpc_create(struct dc_context *ctx)
528{ 528{
529 struct dcn10_mpc *mpc10 = dm_alloc(sizeof(struct dcn10_mpc)); 529 struct dcn10_mpc *mpc10 = kzalloc(sizeof(struct dcn10_mpc),
530 GFP_KERNEL);
530 531
531 if (!mpc10) 532 if (!mpc10)
532 return NULL; 533 return NULL;
@@ -545,7 +546,7 @@ static struct timing_generator *dcn10_timing_generator_create(
545 uint32_t instance) 546 uint32_t instance)
546{ 547{
547 struct dcn10_timing_generator *tgn10 = 548 struct dcn10_timing_generator *tgn10 =
548 dm_alloc(sizeof(struct dcn10_timing_generator)); 549 kzalloc(sizeof(struct dcn10_timing_generator), GFP_KERNEL);
549 550
550 if (!tgn10) 551 if (!tgn10)
551 return NULL; 552 return NULL;
@@ -577,7 +578,7 @@ struct link_encoder *dcn10_link_encoder_create(
577 const struct encoder_init_data *enc_init_data) 578 const struct encoder_init_data *enc_init_data)
578{ 579{
579 struct dce110_link_encoder *enc110 = 580 struct dce110_link_encoder *enc110 =
580 dm_alloc(sizeof(struct dce110_link_encoder)); 581 kzalloc(sizeof(struct dce110_link_encoder), GFP_KERNEL);
581 582
582 if (!enc110) 583 if (!enc110)
583 return NULL; 584 return NULL;
@@ -594,7 +595,7 @@ struct link_encoder *dcn10_link_encoder_create(
594 } 595 }
595 596
596 BREAK_TO_DEBUGGER(); 597 BREAK_TO_DEBUGGER();
597 dm_free(enc110); 598 kfree(enc110);
598 return NULL; 599 return NULL;
599} 600}
600 601
@@ -606,7 +607,7 @@ struct clock_source *dcn10_clock_source_create(
606 bool dp_clk_src) 607 bool dp_clk_src)
607{ 608{
608 struct dce110_clk_src *clk_src = 609 struct dce110_clk_src *clk_src =
609 dm_alloc(sizeof(struct dce110_clk_src)); 610 kzalloc(sizeof(struct dce110_clk_src), GFP_KERNEL);
610 611
611 if (!clk_src) 612 if (!clk_src)
612 return NULL; 613 return NULL;
@@ -641,7 +642,7 @@ static struct stream_encoder *dcn10_stream_encoder_create(
641 struct dc_context *ctx) 642 struct dc_context *ctx)
642{ 643{
643 struct dce110_stream_encoder *enc110 = 644 struct dce110_stream_encoder *enc110 =
644 dm_alloc(sizeof(struct dce110_stream_encoder)); 645 kzalloc(sizeof(struct dce110_stream_encoder), GFP_KERNEL);
645 646
646 if (!enc110) 647 if (!enc110)
647 return NULL; 648 return NULL;
@@ -652,7 +653,7 @@ static struct stream_encoder *dcn10_stream_encoder_create(
652 return &enc110->base; 653 return &enc110->base;
653 654
654 BREAK_TO_DEBUGGER(); 655 BREAK_TO_DEBUGGER();
655 dm_free(enc110); 656 kfree(enc110);
656 return NULL; 657 return NULL;
657} 658}
658 659
@@ -671,7 +672,7 @@ static const struct dce_hwseq_mask hwseq_mask = {
671static struct dce_hwseq *dcn10_hwseq_create( 672static struct dce_hwseq *dcn10_hwseq_create(
672 struct dc_context *ctx) 673 struct dc_context *ctx)
673{ 674{
674 struct dce_hwseq *hws = dm_alloc(sizeof(struct dce_hwseq)); 675 struct dce_hwseq *hws = kzalloc(sizeof(struct dce_hwseq), GFP_KERNEL);
675 676
676 if (hws) { 677 if (hws) {
677 hws->ctx = ctx; 678 hws->ctx = ctx;
@@ -698,13 +699,13 @@ static const struct resource_create_funcs res_create_maximus_funcs = {
698 699
699void dcn10_clock_source_destroy(struct clock_source **clk_src) 700void dcn10_clock_source_destroy(struct clock_source **clk_src)
700{ 701{
701 dm_free(TO_DCE110_CLK_SRC(*clk_src)); 702 kfree(TO_DCE110_CLK_SRC(*clk_src));
702 *clk_src = NULL; 703 *clk_src = NULL;
703} 704}
704 705
705static struct pp_smu_funcs_rv *dcn10_pp_smu_create(struct dc_context *ctx) 706static struct pp_smu_funcs_rv *dcn10_pp_smu_create(struct dc_context *ctx)
706{ 707{
707 struct pp_smu_funcs_rv *pp_smu = dm_alloc(sizeof(*pp_smu)); 708 struct pp_smu_funcs_rv *pp_smu = kzalloc(sizeof(*pp_smu), GFP_KERNEL);
708 709
709 if (!pp_smu) 710 if (!pp_smu)
710 return pp_smu; 711 return pp_smu;
@@ -722,13 +723,13 @@ static void destruct(struct dcn10_resource_pool *pool)
722 /* TODO: free dcn version of stream encoder once implemented 723 /* TODO: free dcn version of stream encoder once implemented
723 * rather than using virtual stream encoder 724 * rather than using virtual stream encoder
724 */ 725 */
725 dm_free(pool->base.stream_enc[i]); 726 kfree(pool->base.stream_enc[i]);
726 pool->base.stream_enc[i] = NULL; 727 pool->base.stream_enc[i] = NULL;
727 } 728 }
728 } 729 }
729 730
730 if (pool->base.mpc != NULL) { 731 if (pool->base.mpc != NULL) {
731 dm_free(TO_DCN10_MPC(pool->base.mpc)); 732 kfree(TO_DCN10_MPC(pool->base.mpc));
732 pool->base.mpc = NULL; 733 pool->base.mpc = NULL;
733 } 734 }
734 for (i = 0; i < pool->base.pipe_count; i++) { 735 for (i = 0; i < pool->base.pipe_count; i++) {
@@ -742,7 +743,7 @@ static void destruct(struct dcn10_resource_pool *pool)
742 pool->base.ipps[i]->funcs->ipp_destroy(&pool->base.ipps[i]); 743 pool->base.ipps[i]->funcs->ipp_destroy(&pool->base.ipps[i]);
743 744
744 if (pool->base.mis[i] != NULL) { 745 if (pool->base.mis[i] != NULL) {
745 dm_free(TO_DCN10_MEM_INPUT(pool->base.mis[i])); 746 kfree(TO_DCN10_MEM_INPUT(pool->base.mis[i]));
746 pool->base.mis[i] = NULL; 747 pool->base.mis[i] = NULL;
747 } 748 }
748 749
@@ -751,14 +752,14 @@ static void destruct(struct dcn10_resource_pool *pool)
751 } 752 }
752 753
753 if (pool->base.timing_generators[i] != NULL) { 754 if (pool->base.timing_generators[i] != NULL) {
754 dm_free(DCN10TG_FROM_TG(pool->base.timing_generators[i])); 755 kfree(DCN10TG_FROM_TG(pool->base.timing_generators[i]));
755 pool->base.timing_generators[i] = NULL; 756 pool->base.timing_generators[i] = NULL;
756 } 757 }
757 } 758 }
758 759
759 for (i = 0; i < pool->base.stream_enc_count; i++) { 760 for (i = 0; i < pool->base.stream_enc_count; i++) {
760 if (pool->base.stream_enc[i] != NULL) 761 if (pool->base.stream_enc[i] != NULL)
761 dm_free(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i])); 762 kfree(DCE110STRENC_FROM_STRENC(pool->base.stream_enc[i]));
762 } 763 }
763 764
764 for (i = 0; i < pool->base.audio_count; i++) { 765 for (i = 0; i < pool->base.audio_count; i++) {
@@ -767,7 +768,7 @@ static void destruct(struct dcn10_resource_pool *pool)
767 } 768 }
768 769
769 for (i = 0; i < pool->base.res_cap->num_dwb; i++) { 770 for (i = 0; i < pool->base.res_cap->num_dwb; i++) {
770 dm_free(pool->base.dwbc[i]); 771 kfree(pool->base.dwbc[i]);
771 pool->base.dwbc[i] = NULL; 772 pool->base.dwbc[i] = NULL;
772 } 773 }
773 774
@@ -792,7 +793,7 @@ static void destruct(struct dcn10_resource_pool *pool)
792 if (pool->base.display_clock != NULL) 793 if (pool->base.display_clock != NULL)
793 dce_disp_clk_destroy(&pool->base.display_clock); 794 dce_disp_clk_destroy(&pool->base.display_clock);
794 795
795 dm_free(pool->base.pp_smu); 796 kfree(pool->base.pp_smu);
796} 797}
797 798
798static struct mem_input *dcn10_mem_input_create( 799static struct mem_input *dcn10_mem_input_create(
@@ -800,7 +801,7 @@ static struct mem_input *dcn10_mem_input_create(
800 uint32_t inst) 801 uint32_t inst)
801{ 802{
802 struct dcn10_mem_input *mem_inputn10 = 803 struct dcn10_mem_input *mem_inputn10 =
803 dm_alloc(sizeof(struct dcn10_mem_input)); 804 kzalloc(sizeof(struct dcn10_mem_input), GFP_KERNEL);
804 805
805 if (!mem_inputn10) 806 if (!mem_inputn10)
806 return NULL; 807 return NULL;
@@ -810,7 +811,7 @@ static struct mem_input *dcn10_mem_input_create(
810 return &mem_inputn10->base; 811 return &mem_inputn10->base;
811 812
812 BREAK_TO_DEBUGGER(); 813 BREAK_TO_DEBUGGER();
813 dm_free(mem_inputn10); 814 kfree(mem_inputn10);
814 return NULL; 815 return NULL;
815} 816}
816 817
@@ -1207,7 +1208,7 @@ static void dcn10_destroy_resource_pool(struct resource_pool **pool)
1207 struct dcn10_resource_pool *dcn10_pool = TO_DCN10_RES_POOL(*pool); 1208 struct dcn10_resource_pool *dcn10_pool = TO_DCN10_RES_POOL(*pool);
1208 1209
1209 destruct(dcn10_pool); 1210 destruct(dcn10_pool);
1210 dm_free(dcn10_pool); 1211 kfree(dcn10_pool);
1211 *pool = NULL; 1212 *pool = NULL;
1212} 1213}
1213 1214
@@ -1239,7 +1240,8 @@ static bool dcn10_dwbc_create(struct dc_context *ctx, struct resource_pool *pool
1239 uint32_t dwb_count = pool->res_cap->num_dwb; 1240 uint32_t dwb_count = pool->res_cap->num_dwb;
1240 1241
1241 for (i = 0; i < dwb_count; i++) { 1242 for (i = 0; i < dwb_count; i++) {
1242 struct dcn10_dwbc *dwbc10 = dm_alloc(sizeof(struct dcn10_dwbc)); 1243 struct dcn10_dwbc *dwbc10 = kzalloc(sizeof(struct dcn10_dwbc),
1244 GFP_KERNEL);
1243 1245
1244 if (!dwbc10) { 1246 if (!dwbc10) {
1245 dm_error("DC: failed to create dwbc10!\n"); 1247 dm_error("DC: failed to create dwbc10!\n");
@@ -1517,7 +1519,7 @@ struct resource_pool *dcn10_create_resource_pool(
1517 struct dc *dc) 1519 struct dc *dc)
1518{ 1520{
1519 struct dcn10_resource_pool *pool = 1521 struct dcn10_resource_pool *pool =
1520 dm_alloc(sizeof(struct dcn10_resource_pool)); 1522 kzalloc(sizeof(struct dcn10_resource_pool), GFP_KERNEL);
1521 1523
1522 if (!pool) 1524 if (!pool)
1523 return NULL; 1525 return NULL;
diff --git a/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c b/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c
index d42eb3de2ea4..1d1efd72b291 100644
--- a/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c
+++ b/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c
@@ -239,7 +239,7 @@ struct gpio *dal_gpio_create(
239 uint32_t en, 239 uint32_t en,
240 enum gpio_pin_output_state output_state) 240 enum gpio_pin_output_state output_state)
241{ 241{
242 struct gpio *gpio = dm_alloc(sizeof(struct gpio)); 242 struct gpio *gpio = kzalloc(sizeof(struct gpio), GFP_KERNEL);
243 243
244 if (!gpio) { 244 if (!gpio) {
245 ASSERT_CRITICAL(false); 245 ASSERT_CRITICAL(false);
@@ -266,7 +266,7 @@ void dal_gpio_destroy(
266 266
267 dal_gpio_close(*gpio); 267 dal_gpio_close(*gpio);
268 268
269 dm_free(*gpio); 269 kfree(*gpio);
270 270
271 *gpio = NULL; 271 *gpio = NULL;
272} 272}
diff --git a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c
index eeb1cd0f75a6..d4e5ef64e489 100644
--- a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c
+++ b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c
@@ -59,7 +59,7 @@ struct gpio_service *dal_gpio_service_create(
59 59
60 uint32_t index_of_id; 60 uint32_t index_of_id;
61 61
62 service = dm_alloc(sizeof(struct gpio_service)); 62 service = kzalloc(sizeof(struct gpio_service), GFP_KERNEL);
63 63
64 if (!service) { 64 if (!service) {
65 BREAK_TO_DEBUGGER(); 65 BREAK_TO_DEBUGGER();
@@ -98,7 +98,8 @@ struct gpio_service *dal_gpio_service_create(
98 if (number_of_bits) { 98 if (number_of_bits) {
99 uint32_t index_of_uint = 0; 99 uint32_t index_of_uint = 0;
100 100
101 slot = dm_alloc(number_of_uints * sizeof(uint32_t)); 101 slot = kzalloc(number_of_uints * sizeof(uint32_t),
102 GFP_KERNEL);
102 103
103 if (!slot) { 104 if (!slot) {
104 BREAK_TO_DEBUGGER(); 105 BREAK_TO_DEBUGGER();
@@ -130,11 +131,11 @@ failure_2:
130 slot = service->busyness[index_of_id]; 131 slot = service->busyness[index_of_id];
131 132
132 if (slot) 133 if (slot)
133 dm_free(slot); 134 kfree(slot);
134 }; 135 };
135 136
136failure_1: 137failure_1:
137 dm_free(service); 138 kfree(service);
138 139
139 return NULL; 140 return NULL;
140} 141}
@@ -171,13 +172,13 @@ void dal_gpio_service_destroy(
171 uint32_t *slot = (*ptr)->busyness[index_of_id]; 172 uint32_t *slot = (*ptr)->busyness[index_of_id];
172 173
173 if (slot) 174 if (slot)
174 dm_free(slot); 175 kfree(slot);
175 176
176 ++index_of_id; 177 ++index_of_id;
177 } while (index_of_id < GPIO_ID_COUNT); 178 } while (index_of_id < GPIO_ID_COUNT);
178 } 179 }
179 180
180 dm_free(*ptr); 181 kfree(*ptr);
181 182
182 *ptr = NULL; 183 *ptr = NULL;
183} 184}
@@ -399,7 +400,7 @@ void dal_gpio_destroy_irq(
399 400
400 dal_gpio_close(*irq); 401 dal_gpio_close(*irq);
401 dal_gpio_destroy(irq); 402 dal_gpio_destroy(irq);
402 dm_free(*irq); 403 kfree(*irq);
403 404
404 *irq = NULL; 405 *irq = NULL;
405} 406}
@@ -417,7 +418,7 @@ struct ddc *dal_gpio_create_ddc(
417 if (!service->translate.funcs->offset_to_id(offset, mask, &id, &en)) 418 if (!service->translate.funcs->offset_to_id(offset, mask, &id, &en))
418 return NULL; 419 return NULL;
419 420
420 ddc = dm_alloc(sizeof(struct ddc)); 421 ddc = kzalloc(sizeof(struct ddc), GFP_KERNEL);
421 422
422 if (!ddc) { 423 if (!ddc) {
423 BREAK_TO_DEBUGGER(); 424 BREAK_TO_DEBUGGER();
@@ -450,7 +451,7 @@ failure_2:
450 dal_gpio_destroy(&ddc->pin_data); 451 dal_gpio_destroy(&ddc->pin_data);
451 452
452failure_1: 453failure_1:
453 dm_free(ddc); 454 kfree(ddc);
454 455
455 return NULL; 456 return NULL;
456} 457}
@@ -466,7 +467,7 @@ void dal_gpio_destroy_ddc(
466 dal_ddc_close(*ddc); 467 dal_ddc_close(*ddc);
467 dal_gpio_destroy(&(*ddc)->pin_data); 468 dal_gpio_destroy(&(*ddc)->pin_data);
468 dal_gpio_destroy(&(*ddc)->pin_clock); 469 dal_gpio_destroy(&(*ddc)->pin_clock);
469 dm_free(*ddc); 470 kfree(*ddc);
470 471
471 *ddc = NULL; 472 *ddc = NULL;
472} 473}
diff --git a/drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.c b/drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.c
index 47e0f8f24a86..7b6efa4f2efd 100644
--- a/drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.c
+++ b/drivers/gpu/drm/amd/display/dc/gpio/hw_ddc.c
@@ -55,7 +55,7 @@ static void destroy(
55 55
56 destruct(pin); 56 destruct(pin);
57 57
58 dm_free(pin); 58 kfree(pin);
59 59
60 *ptr = NULL; 60 *ptr = NULL;
61} 61}
@@ -225,7 +225,7 @@ struct hw_gpio_pin *dal_hw_ddc_create(
225 enum gpio_id id, 225 enum gpio_id id,
226 uint32_t en) 226 uint32_t en)
227{ 227{
228 struct hw_ddc *pin = dm_alloc(sizeof(struct hw_ddc)); 228 struct hw_ddc *pin = kzalloc(sizeof(struct hw_ddc), GFP_KERNEL);
229 229
230 if (!pin) { 230 if (!pin) {
231 ASSERT_CRITICAL(false); 231 ASSERT_CRITICAL(false);
@@ -237,7 +237,7 @@ struct hw_gpio_pin *dal_hw_ddc_create(
237 237
238 ASSERT_CRITICAL(false); 238 ASSERT_CRITICAL(false);
239 239
240 dm_free(pin); 240 kfree(pin);
241 241
242 return NULL; 242 return NULL;
243} 243}
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 f7d049c0e62a..87b580fa4bc9 100644
--- a/drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c
+++ b/drivers/gpu/drm/amd/display/dc/gpio/hw_factory.c
@@ -101,7 +101,7 @@ void dal_hw_factory_destroy(
101 return; 101 return;
102 } 102 }
103 103
104 dm_free(*factory); 104 kfree(*factory);
105 105
106 *factory = NULL; 106 *factory = NULL;
107} 107}
diff --git a/drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.c b/drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.c
index 9634e8841d90..0c255c02045b 100644
--- a/drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.c
+++ b/drivers/gpu/drm/amd/display/dc/gpio/hw_hpd.c
@@ -72,7 +72,7 @@ static void destroy(
72 72
73 destruct(hpd); 73 destruct(hpd);
74 74
75 dm_free(hpd); 75 kfree(hpd);
76 76
77 *ptr = NULL; 77 *ptr = NULL;
78} 78}
@@ -157,7 +157,7 @@ struct hw_gpio_pin *dal_hw_hpd_create(
157 enum gpio_id id, 157 enum gpio_id id,
158 uint32_t en) 158 uint32_t en)
159{ 159{
160 struct hw_hpd *hpd = dm_alloc(sizeof(struct hw_hpd)); 160 struct hw_hpd *hpd = kzalloc(sizeof(struct hw_hpd), GFP_KERNEL);
161 161
162 if (!hpd) { 162 if (!hpd) {
163 ASSERT_CRITICAL(false); 163 ASSERT_CRITICAL(false);
@@ -169,7 +169,7 @@ struct hw_gpio_pin *dal_hw_hpd_create(
169 169
170 ASSERT_CRITICAL(false); 170 ASSERT_CRITICAL(false);
171 171
172 dm_free(hpd); 172 kfree(hpd);
173 173
174 return NULL; 174 return NULL;
175} 175}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce100/i2caux_dce100.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce100/i2caux_dce100.c
index 0712cafb4c42..c45a2ee8c336 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce100/i2caux_dce100.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce100/i2caux_dce100.c
@@ -88,7 +88,7 @@ struct i2caux *dal_i2caux_dce100_create(
88 struct dc_context *ctx) 88 struct dc_context *ctx)
89{ 89{
90 struct i2caux_dce110 *i2caux_dce110 = 90 struct i2caux_dce110 *i2caux_dce110 =
91 dm_alloc(sizeof(struct i2caux_dce110)); 91 kzalloc(sizeof(struct i2caux_dce110), GFP_KERNEL);
92 92
93 if (!i2caux_dce110) { 93 if (!i2caux_dce110) {
94 ASSERT_CRITICAL(false); 94 ASSERT_CRITICAL(false);
@@ -106,7 +106,7 @@ struct i2caux *dal_i2caux_dce100_create(
106 106
107 ASSERT_CRITICAL(false); 107 ASSERT_CRITICAL(false);
108 108
109 dm_free(i2caux_dce110); 109 kfree(i2caux_dce110);
110 110
111 return NULL; 111 return NULL;
112} 112}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/aux_engine_dce110.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/aux_engine_dce110.c
index d3eaf8977a60..4b673b48bf42 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/aux_engine_dce110.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/aux_engine_dce110.c
@@ -87,7 +87,7 @@ static void destroy(
87 87
88 destruct(engine); 88 destruct(engine);
89 89
90 dm_free(engine); 90 kfree(engine);
91 91
92 *aux_engine = NULL; 92 *aux_engine = NULL;
93} 93}
@@ -464,7 +464,7 @@ struct aux_engine *dal_aux_engine_dce110_create(
464 return NULL; 464 return NULL;
465 } 465 }
466 466
467 engine = dm_alloc(sizeof(*engine)); 467 engine = kzalloc(sizeof(*engine), GFP_KERNEL);
468 468
469 if (!engine) { 469 if (!engine) {
470 ASSERT_CRITICAL(false); 470 ASSERT_CRITICAL(false);
@@ -476,7 +476,7 @@ struct aux_engine *dal_aux_engine_dce110_create(
476 476
477 ASSERT_CRITICAL(false); 477 ASSERT_CRITICAL(false);
478 478
479 dm_free(engine); 479 kfree(engine);
480 480
481 return NULL; 481 return NULL;
482} 482}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_hw_engine_dce110.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_hw_engine_dce110.c
index 80d06ad78e07..aab77a81008a 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_hw_engine_dce110.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_hw_engine_dce110.c
@@ -469,7 +469,7 @@ static void destroy(
469 469
470 dal_i2c_hw_engine_destruct(&engine_dce110->base); 470 dal_i2c_hw_engine_destruct(&engine_dce110->base);
471 471
472 dm_free(engine_dce110); 472 kfree(engine_dce110);
473 473
474 *i2c_engine = NULL; 474 *i2c_engine = NULL;
475} 475}
@@ -559,7 +559,8 @@ struct i2c_engine *dal_i2c_hw_engine_dce110_create(
559 return NULL; 559 return NULL;
560 } 560 }
561 561
562 engine_dce10 = dm_alloc(sizeof(struct i2c_hw_engine_dce110)); 562 engine_dce10 = kzalloc(sizeof(struct i2c_hw_engine_dce110),
563 GFP_KERNEL);
563 564
564 if (!engine_dce10) { 565 if (!engine_dce10) {
565 ASSERT_CRITICAL(false); 566 ASSERT_CRITICAL(false);
@@ -571,7 +572,7 @@ struct i2c_engine *dal_i2c_hw_engine_dce110_create(
571 572
572 ASSERT_CRITICAL(false); 573 ASSERT_CRITICAL(false);
573 574
574 dm_free(engine_dce10); 575 kfree(engine_dce10);
575 576
576 return NULL; 577 return NULL;
577} 578}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_sw_engine_dce110.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_sw_engine_dce110.c
index 996813d9165f..bf2c4b240b78 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_sw_engine_dce110.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2c_sw_engine_dce110.c
@@ -88,7 +88,7 @@ static void destroy(
88 88
89 destruct(sw_engine); 89 destruct(sw_engine);
90 90
91 dm_free(sw_engine); 91 kfree(sw_engine);
92 92
93 *engine = NULL; 93 *engine = NULL;
94} 94}
@@ -153,7 +153,8 @@ struct i2c_engine *dal_i2c_sw_engine_dce110_create(
153 return NULL; 153 return NULL;
154 } 154 }
155 155
156 engine_dce110 = dm_alloc(sizeof(struct i2c_sw_engine_dce110)); 156 engine_dce110 = kzalloc(sizeof(struct i2c_sw_engine_dce110),
157 GFP_KERNEL);
157 158
158 if (!engine_dce110) { 159 if (!engine_dce110) {
159 ASSERT_CRITICAL(false); 160 ASSERT_CRITICAL(false);
@@ -165,7 +166,7 @@ struct i2c_engine *dal_i2c_sw_engine_dce110_create(
165 166
166 ASSERT_CRITICAL(false); 167 ASSERT_CRITICAL(false);
167 168
168 dm_free(engine_dce110); 169 kfree(engine_dce110);
169 170
170 return NULL; 171 return NULL;
171} 172}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
index 1c00ed0010d9..ae9adb389319 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce110/i2caux_dce110.c
@@ -68,7 +68,7 @@ static void destroy(
68 68
69 destruct(i2caux_dce110); 69 destruct(i2caux_dce110);
70 70
71 dm_free(i2caux_dce110); 71 kfree(i2caux_dce110);
72 72
73 *i2c_engine = NULL; 73 *i2c_engine = NULL;
74} 74}
@@ -299,7 +299,7 @@ struct i2caux *dal_i2caux_dce110_create(
299 struct dc_context *ctx) 299 struct dc_context *ctx)
300{ 300{
301 struct i2caux_dce110 *i2caux_dce110 = 301 struct i2caux_dce110 *i2caux_dce110 =
302 dm_alloc(sizeof(struct i2caux_dce110)); 302 kzalloc(sizeof(struct i2caux_dce110), GFP_KERNEL);
303 303
304 if (!i2caux_dce110) { 304 if (!i2caux_dce110) {
305 ASSERT_CRITICAL(false); 305 ASSERT_CRITICAL(false);
@@ -317,7 +317,7 @@ struct i2caux *dal_i2caux_dce110_create(
317 317
318 ASSERT_CRITICAL(false); 318 ASSERT_CRITICAL(false);
319 319
320 dm_free(i2caux_dce110); 320 kfree(i2caux_dce110);
321 321
322 return NULL; 322 return NULL;
323} 323}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce112/i2caux_dce112.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce112/i2caux_dce112.c
index d74f3f15d600..715ba4390957 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce112/i2caux_dce112.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce112/i2caux_dce112.c
@@ -122,7 +122,7 @@ struct i2caux *dal_i2caux_dce112_create(
122 struct dc_context *ctx) 122 struct dc_context *ctx)
123{ 123{
124 struct i2caux_dce110 *i2caux_dce110 = 124 struct i2caux_dce110 *i2caux_dce110 =
125 dm_alloc(sizeof(struct i2caux_dce110)); 125 kzalloc(sizeof(struct i2caux_dce110), GFP_KERNEL);
126 126
127 if (!i2caux_dce110) { 127 if (!i2caux_dce110) {
128 ASSERT_CRITICAL(false); 128 ASSERT_CRITICAL(false);
@@ -134,7 +134,7 @@ struct i2caux *dal_i2caux_dce112_create(
134 134
135 ASSERT_CRITICAL(false); 135 ASSERT_CRITICAL(false);
136 136
137 dm_free(i2caux_dce110); 137 kfree(i2caux_dce110);
138 138
139 return NULL; 139 return NULL;
140} 140}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce120/i2caux_dce120.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce120/i2caux_dce120.c
index 91198295f1a4..d52827ae3f1a 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce120/i2caux_dce120.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce120/i2caux_dce120.c
@@ -101,7 +101,7 @@ struct i2caux *dal_i2caux_dce120_create(
101 struct dc_context *ctx) 101 struct dc_context *ctx)
102{ 102{
103 struct i2caux_dce110 *i2caux_dce110 = 103 struct i2caux_dce110 *i2caux_dce110 =
104 dm_alloc(sizeof(struct i2caux_dce110)); 104 kzalloc(sizeof(struct i2caux_dce110), GFP_KERNEL);
105 105
106 if (!i2caux_dce110) { 106 if (!i2caux_dce110) {
107 ASSERT_CRITICAL(false); 107 ASSERT_CRITICAL(false);
@@ -119,7 +119,7 @@ struct i2caux *dal_i2caux_dce120_create(
119 119
120 ASSERT_CRITICAL(false); 120 ASSERT_CRITICAL(false);
121 121
122 dm_free(i2caux_dce110); 122 kfree(i2caux_dce110);
123 123
124 return NULL; 124 return NULL;
125} 125}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_hw_engine_dce80.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_hw_engine_dce80.c
index 423c38ac880c..d41e37c94214 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_hw_engine_dce80.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_hw_engine_dce80.c
@@ -190,7 +190,7 @@ static void destroy(
190 190
191 destruct(engine); 191 destruct(engine);
192 192
193 dm_free(engine); 193 kfree(engine);
194 194
195 *i2c_engine = NULL; 195 *i2c_engine = NULL;
196} 196}
@@ -867,7 +867,7 @@ struct i2c_engine *dal_i2c_hw_engine_dce80_create(
867 return NULL; 867 return NULL;
868 } 868 }
869 869
870 engine = dm_alloc(sizeof(struct i2c_hw_engine_dce80)); 870 engine = kzalloc(sizeof(struct i2c_hw_engine_dce80), GFP_KERNEL);
871 871
872 if (!engine) { 872 if (!engine) {
873 BREAK_TO_DEBUGGER(); 873 BREAK_TO_DEBUGGER();
@@ -879,7 +879,7 @@ struct i2c_engine *dal_i2c_hw_engine_dce80_create(
879 879
880 BREAK_TO_DEBUGGER(); 880 BREAK_TO_DEBUGGER();
881 881
882 dm_free(engine); 882 kfree(engine);
883 883
884 return NULL; 884 return NULL;
885} 885}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_sw_engine_dce80.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_sw_engine_dce80.c
index 804a3266c578..6be77bc931c6 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_sw_engine_dce80.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2c_sw_engine_dce80.c
@@ -103,7 +103,7 @@ static void destroy(
103 103
104 destruct(sw_engine); 104 destruct(sw_engine);
105 105
106 dm_free(sw_engine); 106 kfree(sw_engine);
107 107
108 *engine = NULL; 108 *engine = NULL;
109} 109}
@@ -165,7 +165,7 @@ struct i2c_engine *dal_i2c_sw_engine_dce80_create(
165 return NULL; 165 return NULL;
166 } 166 }
167 167
168 engine = dm_alloc(sizeof(struct i2c_sw_engine_dce80)); 168 engine = kzalloc(sizeof(struct i2c_sw_engine_dce80), GFP_KERNEL);
169 169
170 if (!engine) { 170 if (!engine) {
171 BREAK_TO_DEBUGGER(); 171 BREAK_TO_DEBUGGER();
@@ -177,7 +177,7 @@ struct i2c_engine *dal_i2c_sw_engine_dce80_create(
177 177
178 BREAK_TO_DEBUGGER(); 178 BREAK_TO_DEBUGGER();
179 179
180 dm_free(engine); 180 kfree(engine);
181 181
182 return NULL; 182 return NULL;
183} 183}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2caux_dce80.c b/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2caux_dce80.c
index 5e71450c44e0..d3c157e5eccd 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2caux_dce80.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dce80/i2caux_dce80.c
@@ -101,7 +101,7 @@ static void destroy(
101 101
102 destruct(i2caux_dce80); 102 destruct(i2caux_dce80);
103 103
104 dm_free(i2caux_dce80); 104 kfree(i2caux_dce80);
105 105
106 *i2c_engine = NULL; 106 *i2c_engine = NULL;
107} 107}
@@ -277,7 +277,7 @@ struct i2caux *dal_i2caux_dce80_create(
277 struct dc_context *ctx) 277 struct dc_context *ctx)
278{ 278{
279 struct i2caux_dce80 *i2caux_dce80 = 279 struct i2caux_dce80 *i2caux_dce80 =
280 dm_alloc(sizeof(struct i2caux_dce80)); 280 kzalloc(sizeof(struct i2caux_dce80), GFP_KERNEL);
281 281
282 if (!i2caux_dce80) { 282 if (!i2caux_dce80) {
283 BREAK_TO_DEBUGGER(); 283 BREAK_TO_DEBUGGER();
@@ -289,7 +289,7 @@ struct i2caux *dal_i2caux_dce80_create(
289 289
290 BREAK_TO_DEBUGGER(); 290 BREAK_TO_DEBUGGER();
291 291
292 dm_free(i2caux_dce80); 292 kfree(i2caux_dce80);
293 293
294 return NULL; 294 return NULL;
295} 295}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.c b/drivers/gpu/drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.c
index 9f17d2e4376b..f8659f1c5f9d 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/dcn10/i2caux_dcn10.c
@@ -101,7 +101,7 @@ struct i2caux *dal_i2caux_dcn10_create(
101 struct dc_context *ctx) 101 struct dc_context *ctx)
102{ 102{
103 struct i2caux_dce110 *i2caux_dce110 = 103 struct i2caux_dce110 *i2caux_dce110 =
104 dm_alloc(sizeof(struct i2caux_dce110)); 104 kzalloc(sizeof(struct i2caux_dce110), GFP_KERNEL);
105 105
106 if (!i2caux_dce110) { 106 if (!i2caux_dce110) {
107 ASSERT_CRITICAL(false); 107 ASSERT_CRITICAL(false);
@@ -119,7 +119,7 @@ struct i2caux *dal_i2caux_dcn10_create(
119 119
120 ASSERT_CRITICAL(false); 120 ASSERT_CRITICAL(false);
121 121
122 dm_free(i2caux_dce110); 122 kfree(i2caux_dce110);
123 123
124 return NULL; 124 return NULL;
125} 125}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/diagnostics/i2caux_diag.c b/drivers/gpu/drm/amd/display/dc/i2caux/diagnostics/i2caux_diag.c
index 029bf735036c..1fdb3252920b 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/diagnostics/i2caux_diag.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/diagnostics/i2caux_diag.c
@@ -59,7 +59,7 @@ static void destroy(
59{ 59{
60 destruct(*i2c_engine); 60 destruct(*i2c_engine);
61 61
62 dm_free(*i2c_engine); 62 kfree(*i2c_engine);
63 63
64 *i2c_engine = NULL; 64 *i2c_engine = NULL;
65} 65}
@@ -90,7 +90,8 @@ static bool construct(
90struct i2caux *dal_i2caux_diag_fpga_create( 90struct i2caux *dal_i2caux_diag_fpga_create(
91 struct dc_context *ctx) 91 struct dc_context *ctx)
92{ 92{
93 struct i2caux *i2caux = dm_alloc(sizeof(struct i2caux)); 93 struct i2caux *i2caux = kzalloc(sizeof(struct i2caux),
94 GFP_KERNEL);
94 95
95 if (!i2caux) { 96 if (!i2caux) {
96 ASSERT_CRITICAL(false); 97 ASSERT_CRITICAL(false);
@@ -102,7 +103,7 @@ struct i2caux *dal_i2caux_diag_fpga_create(
102 103
103 ASSERT_CRITICAL(false); 104 ASSERT_CRITICAL(false);
104 105
105 dm_free(i2caux); 106 kfree(i2caux);
106 107
107 return NULL; 108 return NULL;
108} 109}
diff --git a/drivers/gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.c b/drivers/gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.c
index 95bc4457d44b..9d0077ade12c 100644
--- a/drivers/gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.c
+++ b/drivers/gpu/drm/amd/display/dc/i2caux/i2c_sw_engine.c
@@ -541,7 +541,7 @@ static void destroy(
541{ 541{
542 dal_i2c_sw_engine_destruct(FROM_I2C_ENGINE(*ptr)); 542 dal_i2c_sw_engine_destruct(FROM_I2C_ENGINE(*ptr));
543 543
544 dm_free(*ptr); 544 kfree(*ptr);
545 *ptr = NULL; 545 *ptr = NULL;
546} 546}
547 547
@@ -592,7 +592,7 @@ struct i2c_engine *dal_i2c_sw_engine_create(
592 return NULL; 592 return NULL;
593 } 593 }
594 594
595 engine = dm_alloc(sizeof(struct i2c_sw_engine)); 595 engine = kzalloc(sizeof(struct i2c_sw_engine), GFP_KERNEL);
596 596
597 if (!engine) { 597 if (!engine) {
598 BREAK_TO_DEBUGGER(); 598 BREAK_TO_DEBUGGER();
@@ -604,7 +604,7 @@ struct i2c_engine *dal_i2c_sw_engine_create(
604 604
605 BREAK_TO_DEBUGGER(); 605 BREAK_TO_DEBUGGER();
606 606
607 dm_free(engine); 607 kfree(engine);
608 608
609 return NULL; 609 return NULL;
610} 610}
diff --git a/drivers/gpu/drm/amd/display/dc/irq/dce110/irq_service_dce110.c b/drivers/gpu/drm/amd/display/dc/irq/dce110/irq_service_dce110.c
index 7cce28489dba..a6c3a7229def 100644
--- a/drivers/gpu/drm/amd/display/dc/irq/dce110/irq_service_dce110.c
+++ b/drivers/gpu/drm/amd/display/dc/irq/dce110/irq_service_dce110.c
@@ -422,7 +422,8 @@ bool construct(
422struct irq_service *dal_irq_service_dce110_create( 422struct irq_service *dal_irq_service_dce110_create(
423 struct irq_service_init_data *init_data) 423 struct irq_service_init_data *init_data)
424{ 424{
425 struct irq_service *irq_service = dm_alloc(sizeof(*irq_service)); 425 struct irq_service *irq_service = kzalloc(sizeof(*irq_service),
426 GFP_KERNEL);
426 427
427 if (!irq_service) 428 if (!irq_service)
428 return NULL; 429 return NULL;
@@ -430,6 +431,6 @@ struct irq_service *dal_irq_service_dce110_create(
430 if (construct(irq_service, init_data)) 431 if (construct(irq_service, init_data))
431 return irq_service; 432 return irq_service;
432 433
433 dm_free(irq_service); 434 kfree(irq_service);
434 return NULL; 435 return NULL;
435} 436}
diff --git a/drivers/gpu/drm/amd/display/dc/irq/dce120/irq_service_dce120.c b/drivers/gpu/drm/amd/display/dc/irq/dce120/irq_service_dce120.c
index 3871633ac635..61d7c286802a 100644
--- a/drivers/gpu/drm/amd/display/dc/irq/dce120/irq_service_dce120.c
+++ b/drivers/gpu/drm/amd/display/dc/irq/dce120/irq_service_dce120.c
@@ -281,7 +281,8 @@ static bool construct(
281struct irq_service *dal_irq_service_dce120_create( 281struct irq_service *dal_irq_service_dce120_create(
282 struct irq_service_init_data *init_data) 282 struct irq_service_init_data *init_data)
283{ 283{
284 struct irq_service *irq_service = dm_alloc(sizeof(*irq_service)); 284 struct irq_service *irq_service = kzalloc(sizeof(*irq_service),
285 GFP_KERNEL);
285 286
286 if (!irq_service) 287 if (!irq_service)
287 return NULL; 288 return NULL;
@@ -289,6 +290,6 @@ struct irq_service *dal_irq_service_dce120_create(
289 if (construct(irq_service, init_data)) 290 if (construct(irq_service, init_data))
290 return irq_service; 291 return irq_service;
291 292
292 dm_free(irq_service); 293 kfree(irq_service);
293 return NULL; 294 return NULL;
294} 295}
diff --git a/drivers/gpu/drm/amd/display/dc/irq/dce80/irq_service_dce80.c b/drivers/gpu/drm/amd/display/dc/irq/dce80/irq_service_dce80.c
index f458ef8e4c57..d6e1fb665d90 100644
--- a/drivers/gpu/drm/amd/display/dc/irq/dce80/irq_service_dce80.c
+++ b/drivers/gpu/drm/amd/display/dc/irq/dce80/irq_service_dce80.c
@@ -293,7 +293,8 @@ static bool construct(
293struct irq_service *dal_irq_service_dce80_create( 293struct irq_service *dal_irq_service_dce80_create(
294 struct irq_service_init_data *init_data) 294 struct irq_service_init_data *init_data)
295{ 295{
296 struct irq_service *irq_service = dm_alloc(sizeof(*irq_service)); 296 struct irq_service *irq_service = kzalloc(sizeof(*irq_service),
297 GFP_KERNEL);
297 298
298 if (!irq_service) 299 if (!irq_service)
299 return NULL; 300 return NULL;
@@ -301,7 +302,7 @@ struct irq_service *dal_irq_service_dce80_create(
301 if (construct(irq_service, init_data)) 302 if (construct(irq_service, init_data))
302 return irq_service; 303 return irq_service;
303 304
304 dm_free(irq_service); 305 kfree(irq_service);
305 return NULL; 306 return NULL;
306} 307}
307 308
diff --git a/drivers/gpu/drm/amd/display/dc/irq/dcn10/irq_service_dcn10.c b/drivers/gpu/drm/amd/display/dc/irq/dcn10/irq_service_dcn10.c
index be59f0a654e2..f6e861162a6e 100644
--- a/drivers/gpu/drm/amd/display/dc/irq/dcn10/irq_service_dcn10.c
+++ b/drivers/gpu/drm/amd/display/dc/irq/dcn10/irq_service_dcn10.c
@@ -348,7 +348,8 @@ static bool construct(
348struct irq_service *dal_irq_service_dcn10_create( 348struct irq_service *dal_irq_service_dcn10_create(
349 struct irq_service_init_data *init_data) 349 struct irq_service_init_data *init_data)
350{ 350{
351 struct irq_service *irq_service = dm_alloc(sizeof(*irq_service)); 351 struct irq_service *irq_service = kzalloc(sizeof(*irq_service),
352 GFP_KERNEL);
352 353
353 if (!irq_service) 354 if (!irq_service)
354 return NULL; 355 return NULL;
@@ -356,6 +357,6 @@ struct irq_service *dal_irq_service_dcn10_create(
356 if (construct(irq_service, init_data)) 357 if (construct(irq_service, init_data))
357 return irq_service; 358 return irq_service;
358 359
359 dm_free(irq_service); 360 kfree(irq_service);
360 return NULL; 361 return NULL;
361} 362}
diff --git a/drivers/gpu/drm/amd/display/dc/irq/irq_service.c b/drivers/gpu/drm/amd/display/dc/irq/irq_service.c
index 0a1fae4ef83a..ce20622c7c89 100644
--- a/drivers/gpu/drm/amd/display/dc/irq/irq_service.c
+++ b/drivers/gpu/drm/amd/display/dc/irq/irq_service.c
@@ -66,7 +66,7 @@ void dal_irq_service_destroy(struct irq_service **irq_service)
66 return; 66 return;
67 } 67 }
68 68
69 dm_free(*irq_service); 69 kfree(*irq_service);
70 70
71 *irq_service = NULL; 71 *irq_service = NULL;
72} 72}
diff --git a/drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c b/drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c
index 57b5a3babdf8..db513abd735a 100644
--- a/drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c
+++ b/drivers/gpu/drm/amd/display/dc/virtual/virtual_link_encoder.c
@@ -87,7 +87,7 @@ static void virtual_link_encoder_connect_dig_be_to_fe(
87 87
88static void virtual_link_encoder_destroy(struct link_encoder **enc) 88static void virtual_link_encoder_destroy(struct link_encoder **enc)
89{ 89{
90 dm_free(*enc); 90 kfree(*enc);
91 *enc = NULL; 91 *enc = NULL;
92} 92}
93 93
diff --git a/drivers/gpu/drm/amd/display/dc/virtual/virtual_stream_encoder.c b/drivers/gpu/drm/amd/display/dc/virtual/virtual_stream_encoder.c
index 7fe6085e6e37..3dc1733eea20 100644
--- a/drivers/gpu/drm/amd/display/dc/virtual/virtual_stream_encoder.c
+++ b/drivers/gpu/drm/amd/display/dc/virtual/virtual_stream_encoder.c
@@ -121,7 +121,7 @@ bool virtual_stream_encoder_construct(
121struct stream_encoder *virtual_stream_encoder_create( 121struct stream_encoder *virtual_stream_encoder_create(
122 struct dc_context *ctx, struct dc_bios *bp) 122 struct dc_context *ctx, struct dc_bios *bp)
123{ 123{
124 struct stream_encoder *enc = dm_alloc(sizeof(*enc)); 124 struct stream_encoder *enc = kzalloc(sizeof(*enc), GFP_KERNEL);
125 125
126 if (!enc) 126 if (!enc)
127 return NULL; 127 return NULL;
@@ -130,7 +130,7 @@ struct stream_encoder *virtual_stream_encoder_create(
130 return enc; 130 return enc;
131 131
132 BREAK_TO_DEBUGGER(); 132 BREAK_TO_DEBUGGER();
133 dm_free(enc); 133 kfree(enc);
134 return NULL; 134 return NULL;
135} 135}
136 136
diff --git a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
index 52350d0e68d0..4d7db4aa28e0 100644
--- a/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
+++ b/drivers/gpu/drm/amd/display/modules/freesync/freesync.c
@@ -143,7 +143,7 @@ static bool check_dc_support(const struct dc *dc)
143struct mod_freesync *mod_freesync_create(struct dc *dc) 143struct mod_freesync *mod_freesync_create(struct dc *dc)
144{ 144{
145 struct core_freesync *core_freesync = 145 struct core_freesync *core_freesync =
146 dm_alloc(sizeof(struct core_freesync)); 146 kzalloc(sizeof(struct core_freesync), GFP_KERNEL);
147 147
148 148
149 struct persistent_data_flag flag; 149 struct persistent_data_flag flag;
@@ -153,8 +153,8 @@ struct mod_freesync *mod_freesync_create(struct dc *dc)
153 if (core_freesync == NULL) 153 if (core_freesync == NULL)
154 goto fail_alloc_context; 154 goto fail_alloc_context;
155 155
156 core_freesync->map = dm_alloc(sizeof(struct freesync_entity) * 156 core_freesync->map = kzalloc(sizeof(struct freesync_entity) * MOD_FREESYNC_MAX_CONCURRENT_STREAMS,
157 MOD_FREESYNC_MAX_CONCURRENT_STREAMS); 157 GFP_KERNEL);
158 158
159 if (core_freesync->map == NULL) 159 if (core_freesync->map == NULL)
160 goto fail_alloc_map; 160 goto fail_alloc_map;
@@ -197,10 +197,10 @@ struct mod_freesync *mod_freesync_create(struct dc *dc)
197 return &core_freesync->public; 197 return &core_freesync->public;
198 198
199fail_construct: 199fail_construct:
200 dm_free(core_freesync->map); 200 kfree(core_freesync->map);
201 201
202fail_alloc_map: 202fail_alloc_map:
203 dm_free(core_freesync); 203 kfree(core_freesync);
204 204
205fail_alloc_context: 205fail_alloc_context:
206 return NULL; 206 return NULL;
@@ -217,9 +217,9 @@ void mod_freesync_destroy(struct mod_freesync *mod_freesync)
217 if (core_freesync->map[i].stream) 217 if (core_freesync->map[i].stream)
218 dc_stream_release(core_freesync->map[i].stream); 218 dc_stream_release(core_freesync->map[i].stream);
219 219
220 dm_free(core_freesync->map); 220 kfree(core_freesync->map);
221 221
222 dm_free(core_freesync); 222 kfree(core_freesync);
223 } 223 }
224} 224}
225 225