]> Zhao Yanbai Git Server - minix.git/commitdiff
Message type for INPUT_SETLEDS
authorLionel Sambuc <lionel@minix3.org>
Mon, 19 May 2014 08:39:55 +0000 (10:39 +0200)
committerLionel Sambuc <lionel@minix3.org>
Mon, 28 Jul 2014 15:05:44 +0000 (17:05 +0200)
Change-Id: I84ee6ee43d771409526468ce45f1ddc27e9ca986

drivers/tty/arch/i386/keyboard.c
include/minix/com.h
include/minix/ipc.h
lib/libinputdriver/inputdriver.c
servers/input/input.c

index 26f5d4baac2b50ecbf0ebf33287579ab8a6ffb6b..736043edea29fe99638dff68ae80cc5b322a9ad8 100644 (file)
@@ -378,7 +378,7 @@ static void set_leds(void)
   memset(&m, 0, sizeof(m));
 
   m.m_type = INPUT_SETLEDS;
-  m.INPUT_LED_MASK = locks[ccurrent] & ~ALT_LOCK;
+  m.m_input_linputdriver_setleds.led_mask = locks[ccurrent] & ~ALT_LOCK;
 
   if ((r = asynsend3(input_endpt, &m, AMF_NOREPLY)) != OK)
        printf("TTY: asynsend to INPUT %u failed (%d)\n", input_endpt, r);
index 0b5b0c2ddb3cf4547ffd608b2f098e8a9857cdf1..36a071375cad32d88fba62f87daf24875c0356c6 100644 (file)
 #define INPUT_RS_BASE 0x1580   /* from input driver to input server */
 
 #define INPUT_CONF             (INPUT_RQ_BASE + 0)     /* configure driver */
-
 #define INPUT_SETLEDS          (INPUT_RQ_BASE + 1)     /* set keyboard LEDs */
-#  define INPUT_LED_MASK       m7_i1   /* status mask of LEDs */
 
 #define INPUT_EVENT            (INPUT_RS_BASE + 0)     /* send input event */
 
index 0e449e284802a14dae8811d9411270bc775a91aa..6a961d5c77197e142dcfa1ba0835ece370eabcd0 100644 (file)
@@ -640,6 +640,13 @@ typedef struct {
 } mess_input_linputdriver_input_conf;
 _ASSERT_MSG_SIZE(mess_input_linputdriver_input_conf);
 
+typedef struct {
+       uint32_t led_mask;
+
+       uint8_t padding[52];
+} mess_input_linputdriver_setleds;
+_ASSERT_MSG_SIZE(mess_input_linputdriver_setleds);
+
 typedef struct {
        int id;
        int page;
@@ -1271,6 +1278,7 @@ typedef struct {
                mess_i2c_li2cdriver_busc_i2c_reserve m_i2c_li2cdriver_busc_i2c_reserve;
 
                mess_input_linputdriver_input_conf m_input_linputdriver_input_conf;
+               mess_input_linputdriver_setleds m_input_linputdriver_setleds;
 
                mess_lc_pm_exec         m_lc_pm_exec;
                mess_lc_pm_exit         m_lc_pm_exit;
index 480aa0c44754dd9c9667cec6501efbe191623c1e..3c360cdcb4979b72d6b2ccb1cb646b0ff284986b 100644 (file)
@@ -128,7 +128,7 @@ do_setleds(struct inputdriver *idp, message *m_ptr)
                return;
        }
 
-       mask = m_ptr->INPUT_LED_MASK;
+       mask = m_ptr->m_input_linputdriver_setleds.led_mask;
 
        if (idp->idr_leds)
                idp->idr_leds(mask);
index 99e082f7b9b8afdd73b7e4db7a475ca100b8a145..6390255fec500dd4f3792ea4b0e2a06c6dbf4bc5 100644 (file)
@@ -212,7 +212,7 @@ input_set_leds(devminor_t minor, unsigned int mask)
        memset(&m, 0, sizeof(m));
 
        m.m_type = INPUT_SETLEDS;
-       m.INPUT_LED_MASK = mask;
+       m.m_input_linputdriver_setleds.led_mask = mask;
 
        /*
         * Send the request to all matching keyboard devices.  As side effect,
@@ -621,7 +621,7 @@ input_other(message *m, int ipc_status)
 
        case INPUT_SETLEDS:
                if (m->m_source == TTY_PROC_NR) {
-                       input_set_leds(KBDMUX_MINOR, m->INPUT_LED_MASK);
+                       input_set_leds(KBDMUX_MINOR, m->m_input_linputdriver_setleds.led_mask);
 
                        break;
                }