From 76534156ad6e835ad89135210d565dd5f58e91ab Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 11 Feb 2020 15:36:59 +0000 Subject: [PATCH] drm/vc4: The check for assigned HVS channels is not applicable firmware_kms Channel assignments is only in full KMS, so skip the check if in firmware kms mode. Signed-off-by: Dave Stevenson --- drivers/gpu/drm/vc4/vc4_kms.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --- a/drivers/gpu/drm/vc4/vc4_kms.c +++ b/drivers/gpu/drm/vc4/vc4_kms.c @@ -579,6 +579,7 @@ static int vc4_atomic_check(struct drm_device *dev, struct drm_atomic_state *state) { unsigned long unassigned_channels = GENMASK(NUM_CHANNELS - 1, 0); + struct vc4_dev *vc4 = to_vc4_dev(state->dev); struct drm_crtc_state *crtc_state; struct drm_crtc *crtc; int i, ret; @@ -590,7 +591,7 @@ vc4_atomic_check(struct drm_device *dev, bool is_assigned = false; unsigned int channel; - if (!crtc_state->active) + if (!crtc_state->active || vc4->firmware_kms) continue; /* right'>
aboutsummaryrefslogtreecommitdiffstats
blob: cd87750a8149ffc8e728f8d7d1e372938601fa29 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include "cluecard.h"
#ifdef AUDIO_ENABLE
	#include "audio.h"
#endif

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
	[0] = KEYMAP(
		RGB_TOG,        RGB_SAI,        RGB_VAI, \
		        RGB_HUD,        RGB_HUI,         \
		RGB_MOD,        RGB_SAD,        RGB_VAD, \
		BL_STEP,                                 \
		F(0),   F(1),   F(2)                     \
	)
};

#ifdef AUDIO_ENABLE

float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
float tone_dvorak[][2] = SONG(DVORAK_SOUND);
float tone_colemak[][2] = SONG(COLEMAK_SOUND);
float tone_plover[][2] = SONG(PLOVER_SOUND);
float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);

float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif

const uint16_t PROGMEM fn_actions[] = {
	[0] = ACTION_FUNCTION(0),
	[1] = ACTION_FUNCTION(1),
	[2] = ACTION_FUNCTION(2)
};

void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
	if (record->event.pressed) {
		switch (id) {
			case 0:
				PLAY_SONG(tone_startup);
				break;
			case 1:
				PLAY_SONG(music_scale);
				break;
			case 2:
				PLAY_SONG(tone_goodbye);
				break;
		}
	}
};

void matrix_init_user(void) {
}

void matrix_scan_user(void) {

}

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  return true;
}

void led_set_user(uint8_t usb_led) {
}