If you use any kernel other than 5.15.0-starfive kernel, pretty much everything that you would want to work probably will not work (yet). What most companies do is take a baseline kernel and a baseline tool set and a baseline development environment and stick to that until a major release, and then rinse and repeat until your working and debugged submissions have been accepted into the Linux kernel. Otherwise you never know if problems are from changes you made or from upstream changes by others, and you spend more time trying to track down why things break or work than actually getting them to work. It is easier to board a stationary train, than one that is travelling at maximum speed when you are still learning to walk.