git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
WorkStruct: make allyesconfig
[safe/jmp/linux-2.6]
/
drivers
/
input
/
mouse
/
psmouse-base.c
diff --git
a/drivers/input/mouse/psmouse-base.c
b/drivers/input/mouse/psmouse-base.c
index
343afa3
..
52bb222
100644
(file)
--- a/
drivers/input/mouse/psmouse-base.c
+++ b/
drivers/input/mouse/psmouse-base.c
@@
-112,8
+112,8
@@
static struct workqueue_struct *kpsmoused_wq;
struct psmouse_protocol {
enum psmouse_type type;
struct psmouse_protocol {
enum psmouse_type type;
- char *name;
- char *alias;
+ c
onst c
har *name;
+ c
onst c
har *alias;
int maxproto;
int (*detect)(struct psmouse *, int);
int (*init)(struct psmouse *);
int maxproto;
int (*detect)(struct psmouse *, int);
int (*init)(struct psmouse *);
@@
-124,7
+124,7
@@
struct psmouse_protocol {
* relevant events to the input module once full packet has arrived.
*/
* relevant events to the input module once full packet has arrived.
*/
-static psmouse_ret_t psmouse_process_byte(struct psmouse *psmouse
, struct pt_regs *regs
)
+static psmouse_ret_t psmouse_process_byte(struct psmouse *psmouse)
{
struct input_dev *dev = psmouse->dev;
unsigned char *packet = psmouse->packet;
{
struct input_dev *dev = psmouse->dev;
unsigned char *packet = psmouse->packet;
@@
-136,8
+136,6
@@
static psmouse_ret_t psmouse_process_byte(struct psmouse *psmouse, struct pt_reg
* Full packet accumulated, process it
*/
* Full packet accumulated, process it
*/
- input_regs(dev, regs);
-
/*
* Scroll wheel on IntelliMice, scroll buttons on NetMice
*/
/*
* Scroll wheel on IntelliMice, scroll buttons on NetMice
*/
@@
-231,9
+229,9
@@
static void psmouse_set_state(struct psmouse *psmouse, enum psmouse_state new_st
* by calling corresponding protocol handler.
*/
* by calling corresponding protocol handler.
*/
-static int psmouse_handle_byte(struct psmouse *psmouse
, struct pt_regs *regs
)
+static int psmouse_handle_byte(struct psmouse *psmouse)
{
{
- psmouse_ret_t rc = psmouse->protocol_handler(psmouse
, regs
);
+ psmouse_ret_t rc = psmouse->protocol_handler(psmouse);
switch (rc) {
case PSMOUSE_BAD_DATA:
switch (rc) {
case PSMOUSE_BAD_DATA:
@@
-271,7
+269,7
@@
static int psmouse_handle_byte(struct psmouse *psmouse, struct pt_regs *regs)
*/
static irqreturn_t psmouse_interrupt(struct serio *serio,
*/
static irqreturn_t psmouse_interrupt(struct serio *serio,
- unsigned char data, unsigned int flags
, struct pt_regs *regs
)
+ unsigned char data, unsigned int flags)
{
struct psmouse *psmouse = serio_get_drvdata(serio);
{
struct psmouse *psmouse = serio_get_drvdata(serio);
@@
-327,7
+325,7
@@
static irqreturn_t psmouse_interrupt(struct serio *serio,
* Not a new device, try processing first byte normally
*/
psmouse->pktcnt = 1;
* Not a new device, try processing first byte normally
*/
psmouse->pktcnt = 1;
- if (psmouse_handle_byte(psmouse
, regs
))
+ if (psmouse_handle_byte(psmouse))
goto out;
psmouse->packet[psmouse->pktcnt++] = data;
goto out;
psmouse->packet[psmouse->pktcnt++] = data;
@@
-346,7
+344,7
@@
static irqreturn_t psmouse_interrupt(struct serio *serio,
}
psmouse->last = jiffies;
}
psmouse->last = jiffies;
- psmouse_handle_byte(psmouse
, regs
);
+ psmouse_handle_byte(psmouse);
out:
return IRQ_HANDLED;
out:
return IRQ_HANDLED;
@@
-507,15
+505,17
@@
static int thinking_detect(struct psmouse *psmouse, int set_properties)
{
struct ps2dev *ps2dev = &psmouse->ps2dev;
unsigned char param[2];
{
struct ps2dev *ps2dev = &psmouse->ps2dev;
unsigned char param[2];
-
unsigned char seq[] = { 20, 60, 40, 20, 20, 60, 40, 20, 20,
0 };
+
static const unsigned char seq[] = { 20, 60, 40, 20, 20, 60, 40, 20, 2
0 };
int i;
param[0] = 10;
ps2_command(ps2dev, param, PSMOUSE_CMD_SETRATE);
param[0] = 0;
ps2_command(ps2dev, param, PSMOUSE_CMD_SETRES);
int i;
param[0] = 10;
ps2_command(ps2dev, param, PSMOUSE_CMD_SETRATE);
param[0] = 0;
ps2_command(ps2dev, param, PSMOUSE_CMD_SETRES);
- for (i = 0; seq[i]; i++)
- ps2_command(ps2dev, seq + i, PSMOUSE_CMD_SETRATE);
+ for (i = 0; i < ARRAY_SIZE(seq); i++) {
+ param[0] = seq[i];
+ ps2_command(ps2dev, param, PSMOUSE_CMD_SETRATE);
+ }
ps2_command(ps2dev, param, PSMOUSE_CMD_GETID);
if (param[0] != 2)
ps2_command(ps2dev, param, PSMOUSE_CMD_GETID);
if (param[0] != 2)
@@
-652,7
+652,7
@@
static int psmouse_extensions(struct psmouse *psmouse,
return PSMOUSE_PS2;
}
return PSMOUSE_PS2;
}
-static struct psmouse_protocol psmouse_protocols[] = {
+static
const
struct psmouse_protocol psmouse_protocols[] = {
{
.type = PSMOUSE_PS2,
.name = "PS/2",
{
.type = PSMOUSE_PS2,
.name = "PS/2",
@@
-726,7
+726,7
@@
static struct psmouse_protocol psmouse_protocols[] = {
},
};
},
};
-static struct psmouse_protocol *psmouse_protocol_by_type(enum psmouse_type type)
+static
const
struct psmouse_protocol *psmouse_protocol_by_type(enum psmouse_type type)
{
int i;
{
int i;
@@
-738,9
+738,9
@@
static struct psmouse_protocol *psmouse_protocol_by_type(enum psmouse_type type)
return &psmouse_protocols[0];
}
return &psmouse_protocols[0];
}
-static struct psmouse_protocol *psmouse_protocol_by_name(const char *name, size_t len)
+static
const
struct psmouse_protocol *psmouse_protocol_by_name(const char *name, size_t len)
{
{
- struct psmouse_protocol *p;
+
const
struct psmouse_protocol *p;
int i;
for (i = 0; i < ARRAY_SIZE(psmouse_protocols); i++) {
int i;
for (i = 0; i < ARRAY_SIZE(psmouse_protocols); i++) {
@@
-795,13
+795,15
@@
static int psmouse_probe(struct psmouse *psmouse)
void psmouse_set_resolution(struct psmouse *psmouse, unsigned int resolution)
{
void psmouse_set_resolution(struct psmouse *psmouse, unsigned int resolution)
{
- unsigned char params[] = { 0, 1, 2, 2, 3 };
+ static const unsigned char params[] = { 0, 1, 2, 2, 3 };
+ unsigned char p;
if (resolution == 0 || resolution > 200)
resolution = 200;
if (resolution == 0 || resolution > 200)
resolution = 200;
- ps2_command(&psmouse->ps2dev, ¶ms[resolution / 50], PSMOUSE_CMD_SETRES);
- psmouse->resolution = 25 << params[resolution / 50];
+ p = params[resolution / 50];
+ ps2_command(&psmouse->ps2dev, &p, PSMOUSE_CMD_SETRES);
+ psmouse->resolution = 25 << p;
}
/*
}
/*
@@
-810,12
+812,14
@@
void psmouse_set_resolution(struct psmouse *psmouse, unsigned int resolution)
static void psmouse_set_rate(struct psmouse *psmouse, unsigned int rate)
{
static void psmouse_set_rate(struct psmouse *psmouse, unsigned int rate)
{
- unsigned char rates[] = { 200, 100, 80, 60, 40, 20, 10, 0 };
+ static const unsigned char rates[] = { 200, 100, 80, 60, 40, 20, 10, 0 };
+ unsigned char r;
int i = 0;
while (rates[i] > rate) i++;
int i = 0;
while (rates[i] > rate) i++;
- ps2_command(&psmouse->ps2dev, &rates[i], PSMOUSE_CMD_SETRATE);
- psmouse->rate = rates[i];
+ r = rates[i];
+ ps2_command(&psmouse->ps2dev, &r, PSMOUSE_CMD_SETRATE);
+ psmouse->rate = r;
}
/*
}
/*
@@
-884,9
+888,10
@@
static int psmouse_poll(struct psmouse *psmouse)
* psmouse_resync() attempts to re-validate current protocol.
*/
* psmouse_resync() attempts to re-validate current protocol.
*/
-static void psmouse_resync(
void *p
)
+static void psmouse_resync(
struct work_struct *work
)
{
{
- struct psmouse *psmouse = p, *parent = NULL;
+ struct psmouse *parent = NULL, *psmouse =
+ container_of(work, struct psmouse, resync_work);
struct serio *serio = psmouse->ps2dev.serio;
psmouse_ret_t rc = PSMOUSE_GOOD_DATA;
int failed = 0, enabled = 0;
struct serio *serio = psmouse->ps2dev.serio;
psmouse_ret_t rc = PSMOUSE_GOOD_DATA;
int failed = 0, enabled = 0;
@@
-934,7
+939,7
@@
static void psmouse_resync(void *p)
psmouse_set_state(psmouse, PSMOUSE_CMD_MODE);
for (i = 0; i < psmouse->pktsize; i++) {
psmouse->pktcnt++;
psmouse_set_state(psmouse, PSMOUSE_CMD_MODE);
for (i = 0; i < psmouse->pktsize; i++) {
psmouse->pktcnt++;
- rc = psmouse->protocol_handler(psmouse
, NULL
);
+ rc = psmouse->protocol_handler(psmouse);
if (rc != PSMOUSE_GOOD_DATA)
break;
}
if (rc != PSMOUSE_GOOD_DATA)
break;
}
@@
-1031,7
+1036,7
@@
static void psmouse_disconnect(struct serio *serio)
mutex_unlock(&psmouse_mutex);
}
mutex_unlock(&psmouse_mutex);
}
-static int psmouse_switch_protocol(struct psmouse *psmouse, struct psmouse_protocol *proto)
+static int psmouse_switch_protocol(struct psmouse *psmouse,
const
struct psmouse_protocol *proto)
{
struct input_dev *input_dev = psmouse->dev;
{
struct input_dev *input_dev = psmouse->dev;
@@
-1117,7
+1122,7
@@
static int psmouse_connect(struct serio *serio, struct serio_driver *drv)
goto out;
ps2_init(&psmouse->ps2dev, serio);
goto out;
ps2_init(&psmouse->ps2dev, serio);
- INIT_WORK(&psmouse->resync_work, psmouse_resync
, psmouse
);
+ INIT_WORK(&psmouse->resync_work, psmouse_resync);
psmouse->dev = input_dev;
snprintf(psmouse->phys, sizeof(psmouse->phys), "%s/input0", serio->phys);
psmouse->dev = input_dev;
snprintf(psmouse->phys, sizeof(psmouse->phys), "%s/input0", serio->phys);
@@
-1362,7
+1367,7
@@
static ssize_t psmouse_attr_set_protocol(struct psmouse *psmouse, void *data, co
struct serio *serio = psmouse->ps2dev.serio;
struct psmouse *parent = NULL;
struct input_dev *new_dev;
struct serio *serio = psmouse->ps2dev.serio;
struct psmouse *parent = NULL;
struct input_dev *new_dev;
- struct psmouse_protocol *proto;
+
const
struct psmouse_protocol *proto;
int retry = 0;
if (!(proto = psmouse_protocol_by_name(buf, count)))
int retry = 0;
if (!(proto = psmouse_protocol_by_name(buf, count)))
@@
-1459,7
+1464,7
@@
static ssize_t psmouse_attr_set_resolution(struct psmouse *psmouse, void *data,
static int psmouse_set_maxproto(const char *val, struct kernel_param *kp)
{
static int psmouse_set_maxproto(const char *val, struct kernel_param *kp)
{
- struct psmouse_protocol *proto;
+
const
struct psmouse_protocol *proto;
if (!val)
return -EINVAL;
if (!val)
return -EINVAL;