 corgikbd->suspend_jiffies=jiffies; 
static int __init corgikbd_probe(struct device *dev){	int i;	struct corgikbd *corgikbd;	corgikbd = kzalloc(sizeof(struct corgikbd), GFP_KERNEL);	if (!corgikbd)		return -ENOMEM;	dev_set_drvdata(dev,corgikbd);	strcpy(corgikbd->phys, "corgikbd/input0");	spin_lock_init(&corgikbd->lock);	/* Init Keyboard rescan timer */	init_timer(&corgikbd->timer);	corgikbd->timer.function = corgikbd_timer_callback;	corgikbd->timer.data = (unsigned long) corgikbd;	/* Init Hinge Timer */	init_timer(&corgikbd->htimer);	corgikbd->htimer.function = corgikbd_hinge_timer;	corgikbd->htimer.data = (unsigned long) corgikbd;	init_input_dev(&corgikbd->input);	corgikbd->input.private = corgikbd;	corgikbd->input.name = "Corgi Keyboard";	corgikbd->input.dev = dev;	corgikbd->input.phys = corgikbd->phys;	corgikbd->input.id.bustype = BUS_HOST;	corgikbd->input.id.vendor = 0x0001;	corgikbd->input.id.product = 0x0001;	corgikbd->input.id.version = 0x0100;	corgikbd->input.evbit[0] = BIT(EV_KEY) | BIT(EV_REP) | BIT(EV_PWR);	corgikbd->input.keycode = corgikbd->keycode;	corgikbd->input.keycodesize = sizeof(unsigned char);	corgikbd->input.keycodemax = ARRAY_SIZE(corgikbd_keycode);	memcpy(corgikbd->keycode, corgikbd_keycode, sizeof(corgikbd->keycode));	for (i = 0; i < ARRAY_SIZE(corgikbd_keycode); i++)		set_bit(corgikbd->keycode[i], corgikbd->input.keybit);	clear_bit(0, corgikbd->input.keybit);	input_register_device(&corgikbd->input);	mod_timer(&corgikbd->htimer, jiffies + HINGE_SCAN_INTERVAL);	/* Setup sense interrupts - RisingEdge Detect, sense lines as inputs */	for (i = 0; i < CORGI_KEY_SENSE_NUM; i++) {		pxa_gpio_mode(CORGI_GPIO_KEY_SENSE(i) | GPIO_IN);		if (request_irq(CORGI_IRQ_GPIO_KEY_SENSE(i), corgikbd_interrupt,						SA_INTERRUPT, "corgikbd", corgikbd))			printk(KERN_WARNING "corgikbd: Can't get IRQ: %d!\n", i);		else			set_irq_type(CORGI_IRQ_GPIO_KEY_SENSE(i),IRQT_RISING);	}	/* Set Strobe lines as outputs - set high */	for (i = 0; i < CORGI_KEY_STROBE_NUM; i++)		pxa_gpio_mode(CORGI_GPIO_KEY_STROBE(i) | GPIO_OUT | GPIO_DFLT_HIGH);	printk(KERN_INFO "input: Corgi Keyboard Registered\n");	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/8240a4a4bc95814502da522d5ee929fe0f0dc679/corgikbd.c/buggy/drivers/input/keyboard/corgikbd.c