Are you a C programmer?
Have you made any other drivers already?

If not, the required knowledge will likely take years to acquire. You can do it, but it won't be easy. You'll learn a bunch and...