Fedora ships only upstream kernels, so working out of the box with Fedora is the same as being in the mainline (Linus) kernel.
That's not right. For example, in my case with wifi the microcode was named incorrectly and one of the other configs needed to be updated, but the drivers were there. Nobody has said what the problem is/is not in Fedora.