I'm quite new to linux drivers and just trying to understand the flow of the concepts.
As I see it till now:
- Create a .c file which gonna be considered as the kernel module.
- Register major & minor numbers.
- Load it with insmod() to the kernel.
So far so good (I hope. correct me if I'm wrong). That module is now considered as a driver?
My confusion starts about now: now what? I understood that the next step is to create a device file that contains the major & minor numbers so it can refer to the driver. Is it to allow the user to interact with the driver I created before?
Eventually, all the user need to do is to open a /dev file to interact with my driver that (will) involve hardware?
Am i getting it right?