Essential Linux Device Driver code, adapted to latest kernel