/* * Test the keyboard interface. We basically check to make sure that * we can drive each line to the keyboard independently of each other. */ static int __devinit ps2_test(struct ps2if *ps2if) { unsigned int stat; int ret = 0; stat = ps2_test_one(ps2if, PS2CR_FKC); if (stat != PS2STAT_KBD) { printk("PS/2 interface test failed[1]: %02x\n", stat); ret = -ENODEV; } stat = ps2_test_one(ps2if, 0); if (stat != (PS2STAT_KBC | PS2STAT_KBD)) { printk("PS/2 interface test failed[2]: %02x\n", stat); ret = -ENODEV; } stat = ps2_test_one(ps2if, PS2CR_FKD); if (stat != PS2STAT_KBC) { printk("PS/2 interface test failed[3]: %02x\n", stat); ret = -ENODEV; } sa1111_writel(0, ps2if->base + SA1111_PS2CR); return ret; }
/* * Test the keyboard interface. We basically check to make sure that * we can drive each line to the keyboard independently of each other. */ static int __devinit ps2_test(struct ps2if *ps2if) { unsigned int stat; int ret = 0; stat = ps2_test_one(ps2if, PS2CR_FKC); if (stat != PS2STAT_KBD) { ; ret = -ENODEV; } stat = ps2_test_one(ps2if, 0); if (stat != (PS2STAT_KBC | PS2STAT_KBD)) { ; ret = -ENODEV; } stat = ps2_test_one(ps2if, PS2CR_FKD); if (stat != PS2STAT_KBC) { ; ret = -ENODEV; } sa1111_writel(0, ps2if->base + SA1111_PS2CR); return ret; }