Hello guys, i bought a really cheap display having resolution 176x220 and is of 2.2" (3.2$ on aliexpress), and as expected there was no datasheet or driver provided with it or any description of the controller or its name. So, after some search i was able to get hold of the name controller which was S6D0164, so i wrote the display driver using SPI reading its datasheet, but it didn't work for some reason. Then i wrote the display driver using 8bit parallel line and that worked, displayed images and videos and then displayed the default framebuffer onto it by changing its resolution to 220x176.
So, it all works, but the problem is that there is ~25% constant CPU usage when the program is running. I have made the driver in C++(mostly C, but 1 or 2 functions of C++), used wiringPi for GPIO access, will change it to direct register access when the high CPU usage problem is solved, although the current refresh rate is good too.
So i guess it is probably the GPIO access that is eating the CPU since it constantly keeps refreshing the display, so what should i do to decrease the CPU usage? (tried decreasing refresh rate, still same CPU usage) Will direct GPIO register access be able to help me here to decrease CPU usage?