If your company needs to write drivers for some hardware you produce, there are often specific subsystems to target with have their own maintainers and documentation.
Where things get really ugly is when a company decides to cook their own linux platform and they change tons of stuff without always understanding what they are doing.
I guess early android would be a good example of that...