I hate to tell you this, and maybe this is different for you if you get an X470, but with my Gigabyte B450 AORUS PRO WIFI ATX, and my R5 3600, with the newest release BIOS F40 (with support for 3rd-Gen Ryzen CPUs), I lost my two SoC-driven (I think, they are a different color) SATA ports. The four chipset SATA ports provided by the B450 chipset work and are detected, but the SoC SATA are not found. So, either I lost a non-name Kodak (EMTEC) 512GB SATA SSD, AND an Intel 512GB 545s SATA SSD at the same time, when I powered down (which seems unlikely, especially losing the Intel just from a power-down), OR, the UEFI from Gigabyte is immature, and needs tweaking to enable the SoC SATA ports. Or maybe, the R5 3600 doesn't support the SoC SATA ports like Zeppelin (1st-Gen Ryzen CPU) does.
So, I see 8 SATA ports on X470 boards. If those are all provided by the X470 chipset, you're probably golden, but if some of those are provided by the SoC SATA ports off of the CPU, you might have issues. Or perhaps, my problem is just a Gigabyte thing. Or maybe, my R5 3600 is simply defective in a manner, or I bent a pin somehow. I haven't dis-mounted it to check, and everything else works fine, and it went in fairly easily, so I don't think that I bent any pins. (This isn't my first build rodeo, not with AM4 either.)
Edit: Yeah, the MSI Tomahawk boards are pretty awesome, if you do end up getting one of those.\
Edit: I haven't tried a physical CMOS CLEAR yet. Although, my short foray into fixed-clock OCing (tried 4.3Ghz, wouldn't go), caused my bootup to prompt me to enter setup, and my time/date was cleared, so I figure, somehow, CMOS got cleared anyways. This board seems to have a failsafe boot feature, which is nice, when you're messing with OC.