Hi All, I am facing a strange issue with the ioctl commands, and not able to find what wrong I am doing. I am trying with a dummy kernel driver and implemented ioctl command as follow: in my_ioctl.h #define READHWREG_MAGIC_NUMBER 0x15 #define READHWREG_CAM_READPE _IOR(READHWREG_MAGIC_NUMBER, 1, int*) But the value of 'READHWREG_CAM_READPE' is comes out to be different in userspace (in the application) and kernel space (in the driver). In userspace I used ioctl as ... printf("\ncommand %x \n",READHWREG_CAM_READPE); <-- command 80041501 error = ioctl(g_DevFileId, READHWREG_CAM_READPE); .. In kernel space int readHwReg_ioctl(struct inode *node, struct file *filp, unsigned int cmd, unsigned long arg) { ... printk("\n%d %s cmd = %x\n",__LINE__,__FUNCTION__,cmd); <--- cmd = bee6a9d4 ... } I am not able to figure out the root cause, Please help to check... Thanks, Chetan Nanda