> But on that note, I never understood why they track the drivers in the same git repo as the kernel.
Because the advantage of Linux drivers is code sharing, cooperation between different companies include competeting one, hierarchy of maintainers and developers. No driver code can be merged into upstream driver until subsystem maintainer, Linus and planty other developers see it.
So companies that maintain drivers in same subsystem improve and fix each others code. They also can't just merge some mess into upstream and have to follow certain rules that benefit kernel as whole. E.g for instance at least in GPU drivers it's not allowed to add any code upstream if it's only used by proprietary components in userspace.
> They should just develop a stable kernel API for drivers, and have extract the drivers out and track them separately from kernel development.
But on that note, I never understood why they track the drivers in the same git repo as the kernel.
They should just develop a stable kernel API for drivers, and have extract the drivers out and track them separately from kernel development.