saitek_p2500.c:670: error: dereferencing pointer to incomplete type saitek_p2500.c:671: error: dereferencing pointer to incomplete type saitek_p2500.c:672: error: dereferencing pointer to incomplete type saitek_p2500.c:673: error: dereferencing pointer to incomplete type saitek_p2500.c:677: error: dereferencing pointer to incomplete type saitek_p2500.c:678: error: dereferencing pointer to incomplete type saitek_p2500.c:680: error: dereferencing pointer to incomplete type saitek_p2500.c:681: error: dereferencing pointer to incomplete type saitek_p2500.c:682: error: dereferencing pointer to incomplete type saitek_p2500.c:685: warning: incompatible implicit declaration of built-in function ‘snprintf’ saitek_p2500.c:688: error: dereferencing pointer to incomplete type saitek_p2500.c:691: error: dereferencing pointer to incomplete type saitek_p2500.c:697: error: dereferencing pointer to incomplete type saitek_p2500.c:706: error: dereferencing pointer to incomplete type saitek_p2500.c:707: error: dereferencing pointer to incomplete type saitek_p2500.c:708: error: dereferencing pointer to incomplete type saitek_p2500.c:709: error: dereferencing pointer to incomplete type saitek_p2500.c:720: error: ‘KERN_INFO’ undeclared (first use in this function) saitek_p2500.c:720: error: expected ‘)’ before string constant saitek_p2500.c: In function ‘SP2500_disconnect’: saitek_p2500.c:738: warning: assignment makes pointer from integer without a cast saitek_p2500.c:739: error: ‘NULL’ undeclared (first use in this function) saitek_p2500.c: At top level: saitek_p2500.c:753: error: variable ‘SP2500_driver’ has initializer but incomplete type saitek_p2500.c:754: error: unknown field ‘owner’ specified in initializer saitek_p2500.c:754: error: ‘THIS_MODULE’ undeclared here (not in a function) saitek_p2500.c:754: warning: excess elements in struct initializer saitek_p2500.c:754: warning: (near initialization for ‘SP2500_driver’) saitek_p2500.c:755: error: unknown field ‘name’ specified in initializer saitek_p2500.c:755: warning: excess elements in struct initializer saitek_p2500.c:755: warning: (near initialization for ‘SP2500_driver’) saitek_p2500.c:756: error: unknown field ‘probe’ specified in initializer saitek_p2500.c:756: warning: excess elements in struct initializer saitek_p2500.c:756: warning: (near initialization for ‘SP2500_driver’) saitek_p2500.c:757: error: unknown field ‘disconnect’ specified in initializer saitek_p2500.c:757: warning: excess elements in struct initializer saitek_p2500.c:757: warning: (near initialization for ‘SP2500_driver’) saitek_p2500.c:758: error: unknown field ‘id_table’ specified in initializer saitek_p2500.c:758: warning: excess elements in struct initializer saitek_p2500.c:758: warning: (near initialization for ‘SP2500_driver’) saitek_p2500.c:761: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘usb_SP2500_init’ saitek_p2500.c:773: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘usb_SP2500_exit’ saitek_p2500.c:779: warning: data definition has no type or storage class saitek_p2500.c:779: warning: parameter names (without types) in function declaration saitek_p2500.c:780: warning: data definition has no type or storage class saitek_p2500.c:780: warning: parameter names (without types) in function declaration saitek_p2500.c:782: error: expected declaration specifiers or ‘...’ before string constant saitek_p2500.c:782: warning: data definition has no type or storage class