Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

os/board/rtl8730e/src: MIPI command mode implementation #6280

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

edwakuwaku
Copy link
Contributor

  • MIPI command mode implementation

@@ -48,6 +48,8 @@
static u32 vo_freq;
static u32 send_cmd_done = 0;

#define MIPI_PAYLOAD_MAX_LEN 3840 /* (480 * 64) bits */
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If it never changed based on type of LCD, it should be defined in mipi_dsi.h or some header, because both of here and mipi_lcd.c refer to this.
But it seems that it's not referred by code here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello @Taejun-Kwon , this is a PoC on using MIPI command mode for frame update. As you can see this PR is still messy, many places still require cleanup to follow the structure it supposed to (ie. driver layer). It is still pending for discussion on how to revise the LCD driver to support both MIPI command + video mode during runtime.
Also, this definition is not a MIPI protocol definition, whereas it is specific to chipset MIPI driver, RTL8730E has a MIPI buffer of size = 480 * 64 bits. I added this just for the convenience of initial implementation.
Anyway, thank you for your review~

@edwakuwaku
Copy link
Contributor Author

Hello @anjana348 , I have rebased my PR~

@anjana348
Copy link
Contributor

Hi @edwakuwaku
When we are updating full frame using command mode, the last pixels of each subarea remains unwritten.
Means we are sending data of length 3840 , it first set coordinates
0 0 5 319 so the last pixel can be seen without data, it looks like noise on boundary.
Can you please check on your side ?

@edwakuwaku
Copy link
Contributor Author

edwakuwaku commented Jul 12, 2024

Hi @edwakuwaku When we are updating full frame using command mode, the last pixels of each subarea remains unwritten. Means we are sending data of length 3840 , it first set coordinates 0 0 5 319 so the last pixel can be seen without data, it looks like noise on boundary. Can you please check on your side ?

Hello Anjana, we need to carry the command id in the first byte of the buffer (ie. cmd_buffer[0]), thus, I think the max length should be (3840 - 2) bytes. Because we are using RGB565 (ie. 2 bytes) for each pixel.
Could you update the max slicing size in driver layer?

@edwakuwaku edwakuwaku changed the title [DO NOT MERGE] os/board/rtl8730e/src: MIPI command mode implementation os/board/rtl8730e/src: MIPI command mode implementation Jul 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants