Input: i8042 - export i8042_command()
Export the i8042_command() function which manages the mutual exclusion with the help of the i8042_lock spinlock. This allows to access i8042 safely from other parts of the kernel. Signed-off-by: Márton Németh <nm127@freemail.hu> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
parent
82ba56c273
commit
553a05b882
3 changed files with 38 additions and 23 deletions
|
@ -20,6 +20,7 @@
|
|||
#include <linux/err.h>
|
||||
#include <linux/rcupdate.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/i8042.h>
|
||||
|
||||
#include <asm/io.h>
|
||||
|
||||
|
@ -208,7 +209,7 @@ static int __i8042_command(unsigned char *param, int command)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int i8042_command(unsigned char *param, int command)
|
||||
int i8042_command(unsigned char *param, int command)
|
||||
{
|
||||
unsigned long flags;
|
||||
int retval;
|
||||
|
@ -219,6 +220,7 @@ static int i8042_command(unsigned char *param, int command)
|
|||
|
||||
return retval;
|
||||
}
|
||||
EXPORT_SYMBOL(i8042_command);
|
||||
|
||||
/*
|
||||
* i8042_kbd_write() sends a byte out through the keyboard interface.
|
||||
|
|
|
@ -60,28 +60,6 @@
|
|||
#define I8042_CTR_AUXDIS 0x20
|
||||
#define I8042_CTR_XLATE 0x40
|
||||
|
||||
/*
|
||||
* Commands.
|
||||
*/
|
||||
|
||||
#define I8042_CMD_CTL_RCTR 0x0120
|
||||
#define I8042_CMD_CTL_WCTR 0x1060
|
||||
#define I8042_CMD_CTL_TEST 0x01aa
|
||||
|
||||
#define I8042_CMD_KBD_DISABLE 0x00ad
|
||||
#define I8042_CMD_KBD_ENABLE 0x00ae
|
||||
#define I8042_CMD_KBD_TEST 0x01ab
|
||||
#define I8042_CMD_KBD_LOOP 0x11d2
|
||||
|
||||
#define I8042_CMD_AUX_DISABLE 0x00a7
|
||||
#define I8042_CMD_AUX_ENABLE 0x00a8
|
||||
#define I8042_CMD_AUX_TEST 0x01a9
|
||||
#define I8042_CMD_AUX_SEND 0x10d4
|
||||
#define I8042_CMD_AUX_LOOP 0x11d3
|
||||
|
||||
#define I8042_CMD_MUX_PFX 0x0090
|
||||
#define I8042_CMD_MUX_SEND 0x1090
|
||||
|
||||
/*
|
||||
* Return codes.
|
||||
*/
|
||||
|
|
35
include/linux/i8042.h
Normal file
35
include/linux/i8042.h
Normal file
|
@ -0,0 +1,35 @@
|
|||
#ifndef _LINUX_I8042_H
|
||||
#define _LINUX_I8042_H
|
||||
|
||||
/*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 as published by
|
||||
* the Free Software Foundation.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Standard commands.
|
||||
*/
|
||||
|
||||
#define I8042_CMD_CTL_RCTR 0x0120
|
||||
#define I8042_CMD_CTL_WCTR 0x1060
|
||||
#define I8042_CMD_CTL_TEST 0x01aa
|
||||
|
||||
#define I8042_CMD_KBD_DISABLE 0x00ad
|
||||
#define I8042_CMD_KBD_ENABLE 0x00ae
|
||||
#define I8042_CMD_KBD_TEST 0x01ab
|
||||
#define I8042_CMD_KBD_LOOP 0x11d2
|
||||
|
||||
#define I8042_CMD_AUX_DISABLE 0x00a7
|
||||
#define I8042_CMD_AUX_ENABLE 0x00a8
|
||||
#define I8042_CMD_AUX_TEST 0x01a9
|
||||
#define I8042_CMD_AUX_SEND 0x10d4
|
||||
#define I8042_CMD_AUX_LOOP 0x11d3
|
||||
|
||||
#define I8042_CMD_MUX_PFX 0x0090
|
||||
#define I8042_CMD_MUX_SEND 0x1090
|
||||
|
||||
int i8042_command(unsigned char *param, int command);
|
||||
|
||||
#endif
|
Loading…
Reference in a new issue