Драйверы сильно различаются по сложности в зависимости от устройства. Драйверы USB находятся на простой стороне спектра; Драйверы GPU чрезвычайно сложны, и даже авторы этих драйверов обычно не знают всего, что они делают. Я бы порекомендовал сосредоточиться на драйверах для оборудования, которое вас лично волнует, а не пытаться быть мастером на все руки; в конечном итоге это будет легче.
Ответы всех остальных об источниках документации и различных материалах для чтения точны, и вам действительно следует принять один из них.
Многие из более сложных сообществ драйверов также имеют свою собственную информацию о домене. Если вы хотите написать драйвер для графического процессора, сообщества DRI / DRM и Mesa имеют свои собственные вики и списки рассылки, которые вам очень помогут, а также собственную документацию. http://dri.freedesktop.org/ является достойным стартовым местом, как и http://wiki.x.org/.
Надеюсь, это поможет!