What is the difference between MXC IPU3 u-Boot and Linux drivers?

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

What is the difference between MXC IPU3 u-Boot and Linux drivers?

1,322件の閲覧回数
robertspriggs
Contributor I

Our custom i.MX6DL Sabre-based board is booting with the MXC IPU3 driver, and I can see the correct signals on the DISP pads using a scope until Linux loads. The MXC IPU3 driver is also enabled in Linux, but the DISP pads are inactive for some reason. Just before u-Boot starts the OS, it disables all the IPU signals and I'm wondering why. Those signals don't seem to be renabled when Linux loads the IPU driver... Can anyone please explain to me what they think might be happening, and/or what else I can check for to gain some insight?

Also, how do I find where u-boot configuration for the IPU is, and where/how can I configure the IPU driver in Linux to behave the same way?

I inserted debug statements in some of the IPU code to see what was happening:

serial terminal output:

>>>>> ipu_probe <<<<<
>>>>> ipu_reset <<<<<
>>>>> clk_enable <<<<<
>>>>> clk_ipu_enable <<<<<
>>>>> ipu_init_dc_mappings <<<<<
>>>>> ipu_dc_map_config <<<<<
...
>>>>> ipu_dc_map_config <<<<<
>>>>> ipu_dmfc_init <<<<<
>>>>> clk_disable <<<<<
>>>>> clk_ipu_disable <<<<<
>>>>> clk_enable <<<<<
>>>>> clk_ipu_enable <<<<<
>>>>> clk_disable <<<<<
>>>>> clk_ipu_disable <<<<<
>>>>> clk_enable <<<<<
>>>>> clk_ipu_enable <<<<<
>>>>> clk_disable <<<<<
>>>>> clk_ipu_disable <<<<<
>>>>> mxcfb_set_par <<<<<
>>>>> ipu_disable_channel <<<<<
>>>>> ipu_uninit_channel <<<<<
>>>>> init channel = 9 <<<<<
>>>>> clk_enable <<<<<
>>>>> clk_ipu_enable <<<<<
>>>>> ipu_dp_init <<<<<
>>>>> ipu_dc_init <<<<<
>>>>> ipu_init_sync_panel <<<<<
>>>>> adapt_panel_to_ipu_restricitions <<<<<
>>>>> ipu_pixel_clk_set_rate <<<<<
>>>>> ipu_di_data_wave_config <<<<<
>>>>> ipu_di_data_pin_config <<<<<
>>>>> ipu_di_sync_config <<<<<
>>>>> ipu_di_sync_config <<<<<
>>>>> ipu_di_sync_config <<<<<
>>>>> ipu_di_sync_config <<<<<
>>>>> ipu_di_sync_config <<<<<
>>>>> ipu_init_channel_buffer <<<<<
>>>>> ipu_ch_param_init <<<<<
>>>>> ipu_dmfc_init <<<<<
>>>>> ipu_enable_channel <<<<<
>>>>> ipu_dp_dc_enable <<<<<
>>>>> clk_enable <<<<<
>>>>> ipu_pixel_clk_enable <<<<<

...

Kernel image @ 0x12000000 [ 0x000000 - 0x495668 ]
## Flattened Device Tree blob at 18000000
Booting using the fdt blob at 0x18000000
Using Device Tree in place at 18000000, end 1800c002
>>>>> boot_selected_os <<<<<
>>>>> arch_preboot_os <<<<<
>>>>> ipuv3_fb_shutdown <<<<<
>>>>> ipuv3_fb_shutdown <<<<<
>>>>> ipu_disable_channel <<<<<
>>>>> ipu_dp_dc_disable <<<<<
>>>>> clk_disable <<<<<
>>>>> ipu_pixel_clk_disable <<<<<
>>>>> ipu_uninit_channel <<<<<
>>>>> ipu_dp_uninit <<<<<
>>>>> ipu_dc_uninit <<<<<
>>>>> clk_disable <<<<<
>>>>> clk_ipu_disable <<<<<

Starting kernel...

...

>>>>> ipu_gen_init <<<<<
>>>>> ipu_probe <<<<<
>>>>> ipu_mem_reset <<<<<
>>>>> _ipu_init_dc_mappings <<<<<
>>>>> _ipu_dc_map_config <<<<<
...
>>>>> _ipu_dc_map_config <<<<<
>>>>> _ipu_dmfc_init <<<<<
imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
>>>>> ipu_clk_setup_enable <<<<<

ラベル(3)
0 件の賞賛
返信
1 返信

1,142件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi Robert

please check patches providing ipu smooth transition from uboot

to linux

https://community.freescale.com/docs/DOC-98109

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

0 件の賞賛
返信