switching between display interfaces

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

switching between display interfaces

跳至解决方案
1,476 次查看
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

标签 (4)
0 项奖励
回复
1 解答
1,338 次查看
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 项奖励
回复
2 回复数
1,338 次查看
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 项奖励
回复
1,339 次查看
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 项奖励
回复