Буквально недавно переносил свой драйвер с OpenSuse 11.3 (версия ядра 2.6) на Astra Linux 1.3 "Смоленск" (версия ядра 3.2). Действительно есть изменения,мне пришлось немного править код в работе с символьным устройством и ioctl. Всю необходимую информацию нашёл в исходниках и документации ядра.
Ну и при обучении мне очень помогла книга "Linux Device Drivers, Third Edition", у меня она есть на русском языке, так что если нужно могу поделиться.