I think only the wifi driver is closed source. There might be some stuff that is not implemented in newer kernel, and some user space changes might be neede, but other than the wifi everything is doable (and probably not very hard).