Before registering character devices, you have to define file_operations (called fops) for the device files.
The file_operations structure is generic to all files handled by the Linux kernel. It contains many operations that aren't needed for character drivers.
Here are the most important operations for a character driver. All of them are optional.