This should server two purposes. The code will function as an example of proper structure and coding ethics, (which will be explained in the comments) and the documentation should lay down the theory. It's just like school, you have theory classes and lab classes. The theory classes explain the why, and the lab classes explain the how.
In the same vain the documentation should explain why graphics drivers are structured the way they are, and the example driver should be commented to explain how it was structured the way it was.