On Mon, 2012-11-19 at 15:48 -0800, Dmitry Torokhov wrote: > Hi Kamal, > > On Mon, Nov 19, 2012 at 03:30:37PM -0800, Kamal Mostafa wrote: > > @@ -321,6 +323,13 @@ static irqreturn_t psmouse_interrupt(struct serio *serio, > > if (psmouse->state <= PSMOUSE_RESYNCING) > > goto out; > > > > + /* For Cypress Trackpad to read some special data more than 6 bytes. */ > > + if (psmouse->state == PSMOUSE_CMD_CYTP) { > > + psmouse->packet[psmouse->pktcnt++] = data; > > + wake_up(&psmouse->ps2dev.wait); > > + goto out; > > + } > > Instead of doing this have you tried extending size of cmdbuf in ps2dev > structure to 8? > Thanks for suggesting this Dmitry. I have now done that (and modified cypress_ps2.c to set psmouse->state to the common PSMOUSE_CMD_MODE instead). This makes the psmouse-base linkage entirely clean, I think... And it *almost* works! (Multitouch no longer works after suspend now). Please see the forthcoming [PATCH v2] set, and thanks again for your help. -Kamal -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html