-#define LK_PARAM 0x80 /* start/end parameter list */
-
-#define LK_CMD_RESUME 0x8b
-#define LK_CMD_INHIBIT 0xb9
-#define LK_CMD_LEDS_ON 0x13 /* 1 param: led bitmask */
-#define LK_CMD_LEDS_OFF 0x11 /* 1 param: led bitmask */
-#define LK_CMD_DIS_KEYCLK 0x99
-#define LK_CMD_ENB_KEYCLK 0x1b /* 1 param: volume */
-#define LK_CMD_DIS_CTLCLK 0xb9
-#define LK_CMD_ENB_CTLCLK 0xbb
-#define LK_CMD_SOUND_CLK 0x9f
-#define LK_CMD_DIS_BELL 0xa1
-#define LK_CMD_ENB_BELL 0x23 /* 1 param: volume */
-#define LK_CMD_BELL 0xa7
-#define LK_CMD_TMP_NORPT 0xc1
-#define LK_CMD_ENB_RPT 0xe3
-#define LK_CMD_DIS_RPT 0xe1
-#define LK_CMD_RPT_TO_DOWN 0xd9
-#define LK_CMD_REQ_ID 0xab
-#define LK_CMD_POWER_UP 0xfd
-#define LK_CMD_TEST_MODE 0xcb
-#define LK_CMD_SET_DEFAULTS 0xd3
+#define LK_PARAM 0x80 /* start/end parameter list */
+
+#define LK_CMD_RESUME 0x8b /* resume transmission to the host */
+#define LK_CMD_INHIBIT 0x89 /* stop transmission to the host */
+#define LK_CMD_LEDS_ON 0x13 /* light LEDs */
+ /* 1st param: led bitmask */
+#define LK_CMD_LEDS_OFF 0x11 /* turn off LEDs */
+ /* 1st param: led bitmask */
+#define LK_CMD_DIS_KEYCLK 0x99 /* disable the keyclick */
+#define LK_CMD_ENB_KEYCLK 0x1b /* enable the keyclick */
+ /* 1st param: volume */
+#define LK_CMD_DIS_CTLCLK 0xb9 /* disable the Ctrl keyclick */
+#define LK_CMD_ENB_CTLCLK 0xbb /* enable the Ctrl keyclick */
+#define LK_CMD_SOUND_CLK 0x9f /* emit a keyclick */
+#define LK_CMD_DIS_BELL 0xa1 /* disable the bell */
+#define LK_CMD_ENB_BELL 0x23 /* enable the bell */
+ /* 1st param: volume */
+#define LK_CMD_BELL 0xa7 /* emit a bell */
+#define LK_CMD_TMP_NORPT 0xd1 /* disable typematic */
+ /* for the currently pressed key */
+#define LK_CMD_ENB_RPT 0xe3 /* enable typematic */
+ /* for RPT_DOWN groups */
+#define LK_CMD_DIS_RPT 0xe1 /* disable typematic */
+ /* for RPT_DOWN groups */
+#define LK_CMD_RPT_TO_DOWN 0xd9 /* set RPT_DOWN groups to DOWN */
+#define LK_CMD_REQ_ID 0xab /* request the keyboard ID */
+#define LK_CMD_POWER_UP 0xfd /* init power-up sequence */
+#define LK_CMD_TEST_MODE 0xcb /* enter the factory test mode */
+#define LK_CMD_TEST_EXIT 0x80 /* exit the factory test mode */
+#define LK_CMD_SET_DEFAULTS 0xd3 /* set power-up defaults */
+
+#define LK_CMD_MODE(m,div) (LK_PARAM|(((div)&0xf)<<3)|(((m)&0x3)<<1))
+ /* select the repeat mode */
+ /* for the selected key group */
+#define LK_CMD_MODE_AR(m,div) ((((div)&0xf)<<3)|(((m)&0x3)<<1))
+ /* select the repeat mode */
+ /* and the repeat register */
+ /* for the selected key group */
+ /* 1st param: register number */
+#define LK_CMD_RPT_RATE(r) (0x78|(((r)&0x3)<<1))
+ /* set the delay and repeat rate */
+ /* for the selected repeat register */
+ /* 1st param: initial delay */
+ /* 2nd param: repeat rate */