I was about to say the same thing, but I think he’s talking about how GPL2 requires the company to give OP the kernel source code. OP mentioned that he didn’t have the kernel headers for DKMS.
Ah sure, if it's not a stock kernel then yes you'd need to distribute the code for it (although there's no requirement for it to be able boot from any replacement kernel you provide)
I wonder if the kernel's license covers any device tree overlays you create for a board. Technically, the kernel provides the device tree compiler. You write one, compile it, and supply it to the kernel at boot time (or compile it in).
The end goal of Linux for ARM would be to completely avoid needing anything other than the upstream kernel (all drivers and CPU quirks being upstream), the .config for the kernel, and a device tree overlay.