Hello Huang, the code of hid-betopff.c served as my guide when writing a driver for a different gamepad device. Thanks! My code is currently undergoing review and Benjamin wrote that one should use devm_kzalloc() these days, as it makes memory management and error handling easier. Also, it appears that the way your _probe() function hands over to _init() will result in _init() errors not being reported back to the caller of _probe(). Allow me to suggest these changes to your code. I do not own the gamepad you wrote your driver for. My patched version compiles cleanly, but please have a look over it. Thank you, Hanno -- 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