From the problem description it's sounds like a kernel issue, so triage needs to involve building custom LE images with kernel changes that attempt to pinpoint changes to the nuvoton driver. The normal git bisect workflow (on the whole kernel) will be challenging to do as rolling back to a much earlier kernel requires more than just the kernel githash to be changed in the LE buildsystem, and you'll end up going down a rabbit hole of changes. I would instead see if there are interesting looking changes that can simply be reverted to see if anything has a positive impact.
This is the history of the driver: https://github.com/torvalds/linux…c/nuvoton-cir.c
If you are sure that problems start around the 5.x to 6.x transition we have to look back some way. Most of the changes look not related and harmless. The first one that sounds a little interesting to me is https://github.com/torvalds/linux…e6233beadc650c4 but to set expectations, I'm not a code guru.
However, to illustrate the process and test the theory I would git clone kernel sources and then revert that specific change with "git revert 4345e2e5c75895232a17e6783e6233beadc650c4" .. and if we are lucky this will revert cleanly. If it does, you can then do "git format-patch HEAD~1" to create a diff patch of the revert commit and copy the patch file to packages/linux/patches/ in the LE buildsystem. If you now respin the image, the buildsystem will detect the patch and only rebuild the kernel package with the patch applied, and then you can test the image. If the git revert fails, it's because there are other changes to the same code area since that commit, then and you need to revert the commits that touch the code in reverse sequence, and that will either be a relatively simple task with a couple more steps (and generating a few more patches to copy/respin/test) or it'll be a huge challenge. The nuvoton driver doesn't look like it had that much real-world change in recent years though, so I have a hunch specific commits will be okay to revert and test. No promises though.
The problem description shows you have a moderate level of Linux skills (enough to compile images at least) so hopefully you might have half a clue on what I'm rambling on about ![]()