NXP i.MX8 SoC Support Hasn't Yet Worked Its Way Into The Mainline Linux Kernel
There have been patches for the i.MX8 Linux SoC support since January thanks to Pengutronix with GPIO, clock, net, and the core patches being written by the German firm. But unfortunately they haven't yet made it to mainline. For the i.MX8 in the mainline kernel tree as of today with Linux 4.18 there is just the i.MX8QM AHCI SATA support, FEC network driver carried over from earlier Freescale SoCs, and some bits for the the Etnaviv DRM driver with the Vivante GC7000L graphics from the i.MX8M.
The situation doesn't look like it's going to improve either for Linux 4.19. Within the ARM SoC "-next" staging area is unfortunately no i.MX8 bits being introduced (in fact, no new "MX8" mentions in any of the staged commits). There was the i.MX changes queued already that include DeviceTree for the i.MX6SLL SoC, various i.MX6 era boards now having DT support in the mainline kernel, and various other i.MX improvements mostly for the older generations of these NXP/Freescale chips.
So at this stage it doesn't look like the i.MX8 mainline kernel support could be squared away into good shape until the Linux 5.0 kernel expected to follow Linux 4.19. Linux 5.0 will likely be out around the end of the year. What makes the state of the i.MX8 kernel support interesting is that Purism is planning to use this SoC in their upcoming Librem 5 smartphone. Obviously they can be like most ARM hardware vendors and use their own fork/downstream of the Linux kernel at least initially until all the bits are in place, but will be worthwhile having mainline kernel support to enable broader software/distribution support. Purism is still hoping to ship the i.MX8 Librem 5 smartphone beginning in early 2019, so there still stands a chance we could see mainline support around that time if the starts align and they could get all of their changes upstream in Linux 5.0. We'll see.