Swap the order of machine device and platform device registration.
This change ensures that even if the codec enumeration falls late - during the driver module or topology reload - i2s_dev field is always ready to be used.
Are you sure?
The platform device will register the DAIs that are used by the machine driver, don't you have a risk of missing dependencies during the card registration with this change?
Put differently, why do this now when the existing code has been 'working' for a number of years without needing such a change?
This change was tested on multiple platforms (including production laptops) and did not show any issues. Anyway, in patchset v2 the alt_tplg_name creation mechanism was slightly changed and this patch was removed.
Thanks for your input, Mateusz