switching between display interfaces

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

switching between display interfaces

Jump to solution
954 Views
bobosv
Contributor II

Hello

I am trying to configure the IPU of the imx6q.

I want to be able to switch the framebuffer interface /dev/fb0, normally connected to the LCD display (IPU0 DI0) to send data to a viewfinder (IPU0 DI1) from time to time.

Is it possible to reconfigure the IPU flow to dynamically change the display interface during normal video flows in the system?

I have managed to change the display interface in ipu-common.c by changing the line _ipu_dc_init(....) in MEM_BG_SYNC case to point directly to display interface 1, and i get the screen there during boot!!

But can i do something similiar from userspace during normal execution?

/Bo

Labels (4)
0 Kudos
Reply
1 Solution
816 Views
bobosv
Contributor II

Hmm, in the kernel i've got, it seems that swap_channels pretty much does the job, So with som modifications i am now able to swap the display interface on the IPU.

I can switch from DI0 to DI1 and back to DI0

However, now the display on DI1 starts to blink and complains on IRQ error  "timeout when waiting for alpha flip irq\n" and

   "MXCFB_WAIT_FOR_VSYNC: timeout %d\n",

But i am able to switch once :smileywink:

Now, which bit is causing the error  on IPU0 DI1?

/Bo

View solution in original post

0 Kudos
Reply
2 Replies
816 Views
igorpadykov
NXP Employee
NXP Employee

HI bo

I am afraid this is not possible without ipu driver

modifications. In general one can look for LCD frame buffer

structure at sect.18.3 Modifying Boot Kernel Parameters to Support a New LCD

MX53UG MX53SUG.book

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply
817 Views
bobosv
Contributor II

Hmm, in the kernel i've got, it seems that swap_channels pretty much does the job, So with som modifications i am now able to swap the display interface on the IPU.

I can switch from DI0 to DI1 and back to DI0

However, now the display on DI1 starts to blink and complains on IRQ error  "timeout when waiting for alpha flip irq\n" and

   "MXCFB_WAIT_FOR_VSYNC: timeout %d\n",

But i am able to switch once :smileywink:

Now, which bit is causing the error  on IPU0 DI1?

/Bo

0 Kudos
Reply