I am trying to compile some files related to wireless subsystem (mac80211) which use datatypes u8, u16, u32, u64. These are not resolved. The header file being referred to is linux/types.h which is included. However, __uxx data types are being recognized. I tried including the asm-generic/types.h but the problem doesn't get solved. Any pointers?
1 Answer
Strange – if it were user space, you'd need to use it with prefix __ (e.g. __u32), but mac80211 is kernel related project.
Note: It does not matter whether you include <linux/types.h> or <asm/types.h> as the first includes the second. IMHO you should not include <asm-generic/types.h> (which is included by <asm/types.h>) due to portability.
See more info in LDD.