summaryrefslogtreecommitdiffhomepage
path: root/src/srp/fw-ec/fn-lock-2.diff.html
blob: f1a7a391d716229ed692f1672fea1274dff1026b (plain) (blame)
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
<span class="diff-meta">diff --git a/board/hx20/keyboard_customization.c b/board/hx20/keyboard_customization.c</span>
<span class="diff-meta">index 2b91f2e0c..9a5050a0f 100644</span>
<span class="diff-meta">--- a/board/hx20/keyboard_customization.c</span>
<span class="diff-meta">+++ b/board/hx20/keyboard_customization.c</span>
<span class="diff-loc">@@ -249,6 +249,23 @@ int fn_table_set(int8_t pressed, uint32_t fn_bit)</span>
 	return false;
 }

<span class="diff-ins">+static void hx20_update_fnkey_led(void) {</span>
<span class="diff-ins">+	/* Turn the capslock light into a fn-lock light */</span>
<span class="diff-ins">+	gpio_set_level(GPIO_CAP_LED_L, (Fn_key & FN_LOCKED) ? 1 : 0);</span>
<span class="diff-ins">+}</span>
<span class="diff-ins">+</span>
<span class="diff-ins">+/* Set the fn-lock light to the correct setting when the system resumes */</span>
<span class="diff-ins">+void hx20_fnkey_resume(void) {</span>
<span class="diff-ins">+	hx20_update_fnkey_led();</span>
<span class="diff-ins">+}</span>
<span class="diff-ins">+DECLARE_HOOK(HOOK_CHIPSET_RESUME, hx20_fnkey_resume, HOOK_PRIO_DEFAULT);</span>
<span class="diff-ins">+</span>
<span class="diff-ins">+/* Disable the fn-lock light on suspend */</span>
<span class="diff-ins">+void hx20_fnkey_suspend(void) {</span>
<span class="diff-ins">+	gpio_set_level(GPIO_CAP_LED_L, 0);</span>
<span class="diff-ins">+}</span>
<span class="diff-ins">+DECLARE_HOOK(HOOK_CHIPSET_SUSPEND, hx20_fnkey_suspend, HOOK_PRIO_DEFAULT);</span>
<span class="diff-ins">+</span>
 void fnkey_shutdown(void) {
 	uint8_t current_kb = 0;

<span class="diff-loc">@@ -420,6 +437,7 @@ int functional_hotkey(uint16_t *key_code, int8_t pressed)</span>
 					Fn_key &= ~FN_LOCKED;
 				else
 					Fn_key |= FN_LOCKED;
<span class="diff-ins">+				hx20_update_fnkey_led();</span>
 			}
 			return EC_ERROR_UNIMPLEMENTED;
 		}