If you really must keep it closed source, then you cannot use the code from class.c, but have to implement the same functionality yourself (to whatever sub-level it takes). The whole point of the GPL is that end-users should not be restricted from viewing/changing source code (the very license that lets you use class.c in the first place).
But I'd encourage your employer to consider the GPL license, especially if you are a hardware manufacturer.
On the plus side, the GPL is there so that those you distribute to (your customers) have reasonable access to the source code. It is only a license (it does not hand over copyright to the customer), and it does not mean that you have to open the source to the whole world, only to those who you distribute to.
On the caveat side, the customer will now have a license to redistribute the source code, and any proprietary secrets in the driver will be easier to access than if the customer had to disassemble the binary.
If there are significant proprietary secrets, you can often move them out of the driver and into the user application, unless the device has a very wide interface (eg a graphics card).