Tool/software:
Hello everyone,
I am currently working on a project where we are developing an embedded system based on AM3359 running Linux. We are using a 2 x 20 character LCD Display with 6800 family interface. Currently we are interfacing with LCD display by driving GPIO pins from MPU. However, we want to offload this task from MPU. Reading the Technical Reference Manual, I have noticed that AM3359 seems to have an LCD Controller. According to manual, LCD controller supports LCD character displays using 6800 family interface.
Although register level programming model of LCD interface has been explained in detail in Technical Manual, I have not been able to find any example programs or software libraries for LCD controller to be used on Linux. TI Linux SDK for AM335x does not seem to include any examples or drivers, either.
My question is, are there any resources from TI that I can use for this purpose? If there are not any, how would you advise me to proceed? I am considering either developing a Linux Kernel driver for LCD controller, or mapping LCD Controller register using mmap from /dev/mem. Are there any other approaches you might suggest? Lastly, I am also considering using PRU cores for developing LCD firmware.
Thanks in advance for your assistance.
Cheers!
Hi,
We have the linux driver for the LCD controller and it can be fond here: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/gpu/drm/tilcdc?h=ti-linux-6.6.y. Are you looking for anything specific?
Regards,
Krunal
Hi Dear Krunal,
Firstly thanks for your guidance. I have taken a look at LCD Controller Linux Driver and SDK User Manual.
As I understand, driver you linked only supports raster controller mode. However I want to use LCD interface display driver (LIDD) mode as it can interact readily with 6800 family character displays.
Could you validate that existing Linux driver do not support LIDD mode? If it supports LIDD mode, are there any instruction guides or manuals explaining how to use it?
Regards,
Ertuğrul
Hello,
Unfortunately, the driver does not support LIDD and your understanding is correct about the driver only supporting raster mode.
Regards,
Krunal
Hello,
Thanks for clarification Krunal. Now that it is clear that current driver does not support LIDD mode, mMy question is, are there any other resources from TI that I can use for this purpose? If there are not any, how would you advise me to proceed? I am considering either developing a Linux Kernel driver for LCD controller, or mapping LCD Controller register using mmap from /dev/mem. Are there any other approaches you might suggest? Lastly, I am also considering using PRU cores for developing LCD firmware.
Regards,
Ertuğrul
Hi,
No, I don't have any resources that I can share with you and my recommendation would be to check with third parities like Baylibre, They have worked with our HW and SW platforms to enable features. With regards to PRU core, please create another ticket.
Regards,
Krunal