struct input_dev *jog_dev = &sonypi_device.input_jog_dev; struct input_dev *key_dev = &sonypi_device.input_key_dev; 
struct input_dev *jog_dev = sonypi_device.input_jog_dev; struct input_dev *key_dev = sonypi_device.input_key_dev; 
static void sonypi_report_input_event(u8 event){	struct input_dev *jog_dev = &sonypi_device.input_jog_dev;	struct input_dev *key_dev = &sonypi_device.input_key_dev;	struct sonypi_keypress kp = { NULL };	int i;	switch (event) {	case SONYPI_EVENT_JOGDIAL_UP:	case SONYPI_EVENT_JOGDIAL_UP_PRESSED:		input_report_rel(jog_dev, REL_WHEEL, 1);		input_sync(jog_dev);		break;	case SONYPI_EVENT_JOGDIAL_DOWN:	case SONYPI_EVENT_JOGDIAL_DOWN_PRESSED:		input_report_rel(jog_dev, REL_WHEEL, -1);		input_sync(jog_dev);		break;	case SONYPI_EVENT_JOGDIAL_PRESSED:		kp.key = BTN_MIDDLE;		kp.dev = jog_dev;		break;	case SONYPI_EVENT_FNKEY_RELEASED:		/* Nothing, not all VAIOs generate this event */		break;	default:		for (i = 0; sonypi_inputkeys[i].sonypiev; i++)			if (event == sonypi_inputkeys[i].sonypiev) {				kp.dev = key_dev;				kp.key = sonypi_inputkeys[i].inputev;				break;			}		break;	}	if (kp.dev) {		input_report_key(kp.dev, kp.key, 1);		input_sync(kp.dev);		kfifo_put(sonypi_device.input_fifo,			  (unsigned char *)&kp, sizeof(kp));		schedule_work(&sonypi_device.input_work);	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b416f2e452b6c0f5075145bb7301f7f3d44d8ed5/sonypi.c/clean/drivers/char/sonypi.c