@@ -55,17 +55,7 @@ static inline int _dpu_crtc_get_mixer_width(struct dpu_crtc_state *cstate,
55
55
56
56
static inline struct dpu_kms * _dpu_crtc_get_kms (struct drm_crtc * crtc )
57
57
{
58
- struct msm_drm_private * priv ;
59
-
60
- if (!crtc || !crtc -> dev || !crtc -> dev -> dev_private ) {
61
- DPU_ERROR ("invalid crtc\n" );
62
- return NULL ;
63
- }
64
- priv = crtc -> dev -> dev_private ;
65
- if (!priv || !priv -> kms ) {
66
- DPU_ERROR ("invalid kms\n" );
67
- return NULL ;
68
- }
58
+ struct msm_drm_private * priv = crtc -> dev -> dev_private ;
69
59
70
60
return to_dpu_kms (priv -> kms );
71
61
}
@@ -177,28 +167,17 @@ static void _dpu_crtc_blend_setup_mixer(struct drm_crtc *crtc,
177
167
struct drm_plane * plane ;
178
168
struct drm_framebuffer * fb ;
179
169
struct drm_plane_state * state ;
180
- struct dpu_crtc_state * cstate ;
170
+ struct dpu_crtc_state * cstate = to_dpu_crtc_state ( crtc -> state ) ;
181
171
struct dpu_plane_state * pstate = NULL ;
182
172
struct dpu_format * format ;
183
- struct dpu_hw_ctl * ctl ;
184
- struct dpu_hw_mixer * lm ;
185
- struct dpu_hw_stage_cfg * stage_cfg ;
173
+ struct dpu_hw_ctl * ctl = mixer -> lm_ctl ;
174
+ struct dpu_hw_stage_cfg * stage_cfg = & dpu_crtc -> stage_cfg ;
186
175
187
176
u32 flush_mask ;
188
177
uint32_t stage_idx , lm_idx ;
189
178
int zpos_cnt [DPU_STAGE_MAX + 1 ] = { 0 };
190
179
bool bg_alpha_enable = false;
191
180
192
- if (!dpu_crtc || !mixer ) {
193
- DPU_ERROR ("invalid dpu_crtc or mixer\n" );
194
- return ;
195
- }
196
-
197
- ctl = mixer -> lm_ctl ;
198
- lm = mixer -> hw_lm ;
199
- stage_cfg = & dpu_crtc -> stage_cfg ;
200
- cstate = to_dpu_crtc_state (crtc -> state );
201
-
202
181
drm_atomic_crtc_for_each_plane (plane , crtc ) {
203
182
state = plane -> state ;
204
183
if (!state )
@@ -217,10 +196,6 @@ static void _dpu_crtc_blend_setup_mixer(struct drm_crtc *crtc,
217
196
state -> fb ? state -> fb -> base .id : -1 );
218
197
219
198
format = to_dpu_format (msm_framebuffer_format (pstate -> base .fb ));
220
- if (!format ) {
221
- DPU_ERROR ("invalid format\n" );
222
- return ;
223
- }
224
199
225
200
if (pstate -> stage == DPU_STAGE_BASE && format -> alpha_enable )
226
201
bg_alpha_enable = true;
@@ -261,21 +236,13 @@ static void _dpu_crtc_blend_setup_mixer(struct drm_crtc *crtc,
261
236
*/
262
237
static void _dpu_crtc_blend_setup (struct drm_crtc * crtc )
263
238
{
264
- struct dpu_crtc * dpu_crtc ;
265
- struct dpu_crtc_state * cstate ;
266
- struct dpu_crtc_mixer * mixer ;
239
+ struct dpu_crtc * dpu_crtc = to_dpu_crtc ( crtc ) ;
240
+ struct dpu_crtc_state * cstate = to_dpu_crtc_state ( crtc -> state ) ;
241
+ struct dpu_crtc_mixer * mixer = cstate -> mixers ;
267
242
struct dpu_hw_ctl * ctl ;
268
243
struct dpu_hw_mixer * lm ;
269
-
270
244
int i ;
271
245
272
- if (!crtc )
273
- return ;
274
-
275
- dpu_crtc = to_dpu_crtc (crtc );
276
- cstate = to_dpu_crtc_state (crtc -> state );
277
- mixer = cstate -> mixers ;
278
-
279
246
DPU_DEBUG ("%s\n" , dpu_crtc -> name );
280
247
281
248
for (i = 0 ; i < cstate -> num_mixers ; i ++ ) {
@@ -377,34 +344,13 @@ static void dpu_crtc_vblank_cb(void *data)
377
344
378
345
static void dpu_crtc_frame_event_work (struct kthread_work * work )
379
346
{
380
- struct msm_drm_private * priv ;
381
- struct dpu_crtc_frame_event * fevent ;
382
- struct drm_crtc * crtc ;
383
- struct dpu_crtc * dpu_crtc ;
384
- struct dpu_kms * dpu_kms ;
347
+ struct dpu_crtc_frame_event * fevent = container_of (work ,
348
+ struct dpu_crtc_frame_event , work );
349
+ struct drm_crtc * crtc = fevent -> crtc ;
350
+ struct dpu_crtc * dpu_crtc = to_dpu_crtc (crtc );
385
351
unsigned long flags ;
386
352
bool frame_done = false;
387
353
388
- if (!work ) {
389
- DPU_ERROR ("invalid work handle\n" );
390
- return ;
391
- }
392
-
393
- fevent = container_of (work , struct dpu_crtc_frame_event , work );
394
- if (!fevent -> crtc || !fevent -> crtc -> state ) {
395
- DPU_ERROR ("invalid crtc\n" );
396
- return ;
397
- }
398
-
399
- crtc = fevent -> crtc ;
400
- dpu_crtc = to_dpu_crtc (crtc );
401
-
402
- dpu_kms = _dpu_crtc_get_kms (crtc );
403
- if (!dpu_kms ) {
404
- DPU_ERROR ("invalid kms handle\n" );
405
- return ;
406
- }
407
- priv = dpu_kms -> dev -> dev_private ;
408
354
DPU_ATRACE_BEGIN ("crtc_frame_event" );
409
355
410
356
DRM_DEBUG_KMS ("crtc%d event:%u ts:%lld\n" , crtc -> base .id , fevent -> event ,
@@ -470,11 +416,6 @@ static void dpu_crtc_frame_event_cb(void *data, u32 event)
470
416
unsigned long flags ;
471
417
u32 crtc_id ;
472
418
473
- if (!crtc || !crtc -> dev || !crtc -> dev -> dev_private ) {
474
- DPU_ERROR ("invalid parameters\n" );
475
- return ;
476
- }
477
-
478
419
/* Nothing to do on idle event */
479
420
if (event & DPU_ENCODER_FRAME_EVENT_IDLE )
480
421
return ;
@@ -583,23 +524,12 @@ static void _dpu_crtc_setup_mixers(struct drm_crtc *crtc)
583
524
static void _dpu_crtc_setup_lm_bounds (struct drm_crtc * crtc ,
584
525
struct drm_crtc_state * state )
585
526
{
586
- struct dpu_crtc * dpu_crtc ;
587
- struct dpu_crtc_state * cstate ;
588
- struct drm_display_mode * adj_mode ;
589
- u32 crtc_split_width ;
527
+ struct dpu_crtc * dpu_crtc = to_dpu_crtc ( crtc ) ;
528
+ struct dpu_crtc_state * cstate = to_dpu_crtc_state ( state ) ;
529
+ struct drm_display_mode * adj_mode = & state -> adjusted_mode ;
530
+ u32 crtc_split_width = _dpu_crtc_get_mixer_width ( cstate , adj_mode ) ;
590
531
int i ;
591
532
592
- if (!crtc || !state ) {
593
- DPU_ERROR ("invalid args\n" );
594
- return ;
595
- }
596
-
597
- dpu_crtc = to_dpu_crtc (crtc );
598
- cstate = to_dpu_crtc_state (state );
599
-
600
- adj_mode = & state -> adjusted_mode ;
601
- crtc_split_width = _dpu_crtc_get_mixer_width (cstate , adj_mode );
602
-
603
533
for (i = 0 ; i < cstate -> num_mixers ; i ++ ) {
604
534
struct drm_rect * r = & cstate -> lm_bounds [i ];
605
535
r -> x1 = crtc_split_width * i ;
@@ -693,11 +623,6 @@ static void dpu_crtc_atomic_flush(struct drm_crtc *crtc,
693
623
unsigned long flags ;
694
624
struct dpu_crtc_state * cstate ;
695
625
696
- if (!crtc || !crtc -> dev || !crtc -> dev -> dev_private ) {
697
- DPU_ERROR ("invalid crtc\n" );
698
- return ;
699
- }
700
-
701
626
if (!crtc -> state -> enable ) {
702
627
DPU_DEBUG ("crtc%d -> enable %d, skip atomic_flush\n" ,
703
628
crtc -> base .id , crtc -> state -> enable );
@@ -790,15 +715,9 @@ static void dpu_crtc_destroy_state(struct drm_crtc *crtc,
790
715
791
716
static int _dpu_crtc_wait_for_frame_done (struct drm_crtc * crtc )
792
717
{
793
- struct dpu_crtc * dpu_crtc ;
718
+ struct dpu_crtc * dpu_crtc = to_dpu_crtc ( crtc ) ;
794
719
int ret , rc = 0 ;
795
720
796
- if (!crtc ) {
797
- DPU_ERROR ("invalid argument\n" );
798
- return - EINVAL ;
799
- }
800
- dpu_crtc = to_dpu_crtc (crtc );
801
-
802
721
if (!atomic_read (& dpu_crtc -> frame_pending )) {
803
722
DPU_DEBUG ("no frames pending\n" );
804
723
return 0 ;
@@ -819,29 +738,12 @@ static int _dpu_crtc_wait_for_frame_done(struct drm_crtc *crtc)
819
738
void dpu_crtc_commit_kickoff (struct drm_crtc * crtc )
820
739
{
821
740
struct drm_encoder * encoder ;
822
- struct drm_device * dev ;
823
- struct dpu_crtc * dpu_crtc ;
824
- struct msm_drm_private * priv ;
825
- struct dpu_kms * dpu_kms ;
826
- struct dpu_crtc_state * cstate ;
741
+ struct drm_device * dev = crtc -> dev ;
742
+ struct dpu_crtc * dpu_crtc = to_dpu_crtc (crtc );
743
+ struct dpu_kms * dpu_kms = _dpu_crtc_get_kms (crtc );
744
+ struct dpu_crtc_state * cstate = to_dpu_crtc_state (crtc -> state );
827
745
int ret ;
828
746
829
- if (!crtc ) {
830
- DPU_ERROR ("invalid argument\n" );
831
- return ;
832
- }
833
- dev = crtc -> dev ;
834
- dpu_crtc = to_dpu_crtc (crtc );
835
- dpu_kms = _dpu_crtc_get_kms (crtc );
836
-
837
- if (!dpu_kms || !dpu_kms -> dev || !dpu_kms -> dev -> dev_private ) {
838
- DPU_ERROR ("invalid argument\n" );
839
- return ;
840
- }
841
-
842
- priv = dpu_kms -> dev -> dev_private ;
843
- cstate = to_dpu_crtc_state (crtc -> state );
844
-
845
747
/*
846
748
* If no mixers has been allocated in dpu_crtc_atomic_check(),
847
749
* it means we are trying to start a CRTC whose state is disabled:
@@ -969,24 +871,9 @@ static int _dpu_crtc_vblank_enable_no_lock(
969
871
*/
970
872
static void _dpu_crtc_set_suspend (struct drm_crtc * crtc , bool enable )
971
873
{
972
- struct dpu_crtc * dpu_crtc ;
973
- struct msm_drm_private * priv ;
974
- struct dpu_kms * dpu_kms ;
874
+ struct dpu_crtc * dpu_crtc = to_dpu_crtc (crtc );
975
875
int ret = 0 ;
976
876
977
- if (!crtc || !crtc -> dev || !crtc -> dev -> dev_private ) {
978
- DPU_ERROR ("invalid crtc\n" );
979
- return ;
980
- }
981
- dpu_crtc = to_dpu_crtc (crtc );
982
- priv = crtc -> dev -> dev_private ;
983
-
984
- if (!priv -> kms ) {
985
- DPU_ERROR ("invalid crtc kms\n" );
986
- return ;
987
- }
988
- dpu_kms = to_dpu_kms (priv -> kms );
989
-
990
877
DRM_DEBUG_KMS ("crtc%d suspend = %d\n" , crtc -> base .id , enable );
991
878
992
879
mutex_lock (& dpu_crtc -> crtc_lock );
@@ -1079,16 +966,8 @@ static void dpu_crtc_reset(struct drm_crtc *crtc)
1079
966
static void dpu_crtc_handle_power_event (u32 event_type , void * arg )
1080
967
{
1081
968
struct drm_crtc * crtc = arg ;
1082
- struct dpu_crtc * dpu_crtc ;
969
+ struct dpu_crtc * dpu_crtc = to_dpu_crtc ( crtc ) ;
1083
970
struct drm_encoder * encoder ;
1084
- struct dpu_crtc_state * cstate ;
1085
-
1086
- if (!crtc ) {
1087
- DPU_ERROR ("invalid crtc\n" );
1088
- return ;
1089
- }
1090
- dpu_crtc = to_dpu_crtc (crtc );
1091
- cstate = to_dpu_crtc_state (dpu_crtc -> base .state );
1092
971
1093
972
mutex_lock (& dpu_crtc -> crtc_lock );
1094
973
@@ -1673,8 +1552,6 @@ static int _dpu_crtc_init_debugfs(struct drm_crtc *crtc)
1673
1552
dpu_crtc = to_dpu_crtc (crtc );
1674
1553
1675
1554
dpu_kms = _dpu_crtc_get_kms (crtc );
1676
- if (!dpu_kms )
1677
- return - EINVAL ;
1678
1555
1679
1556
dpu_crtc -> debugfs_root = debugfs_create_dir (dpu_crtc -> name ,
1680
1557
crtc -> dev -> primary -> debugfs_root );
0 commit comments