nVidia cannot "open source" their source code for their driver blob because they don't own rights to a good deal of it. That simply canot happen, forget it.
However, what nVidia CAN can feasibly do, but for some reason they don't, is release programming specifications, such as AMD/ATI have done.
This documentation doesn't expose any nVidia IP, nor does it expose any third party's IP that is in nVidias binary blob driver. It merely is documentation on how a driver may be written to interface to the GPU hardware. In the linked documents it is for AMD/ATI hardware, what is wanted is the equivalent documentation for nVidia GPUs.
Releasing this documentation would make it feasible to use nVidia GPUs for Linux machines. Whilst Linux machines don't have significant market share on the desktop, they dominate in every other market, and a lot of those machines do have graphical UI and video requirements. Failure of nVidia to release programming specifications for its GPUs is eventually going to hand over this huge market to Intel and AMD/ATI.
Why? Why don't nVidia release the programming specifications? Releasing them would eliminate all the negative PR, it would enable access to a huge market, it would cost next to nothing, and it would not divulge any nVidia IP or third party IP.
So why not? What is there to lose nVidia?