Hi all,
I have 2 usecases
Case1
I have Ixora Carrier Board with imx6 module attached. In the uboot commandline terminal I have passed following command
setenv vidargs ‘mxc_hdmi.only_cea=1 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb0:off video=mxcfb2:off video=mxcfb3:off fbmem=32M’
The board is boot. Once booted then I connect the HDMI-HDMI cable to the display and I see the display. This event logs are given below
[ 8.617164] mxc_hdmi 20e0000.hdmi_video: FB BLANK state no changed!
[ 8.634165] mxc_hdmi 20e0000.hdmi_video: event=FB_EVENT_MODE_CHANGE
[ 9.023730] mxc_sdc_fb fb@1: 1920x1080 h_sync,r,l: 44,88,148 v_sync,l,u: 5,4,36 pixclock=148500000 Hz
[ 9.053614] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_init
[ 9.053693] mxc_hdmi 20e0000.hdmi_video: event=FB_EVENT_MODE_CHANGE
[ 9.054276] mxc_hdmi 20e0000.hdmi_video: event=FB_EVENT_BLANK - UNBLANK
--------------->HDMI cable is connected to Eval board
[ 107.058033] mxc_hdmi 20e0000.hdmi_video: my_trace HDMI_DVI_IH_STAT= 3d, HDMI_IH_PHY_STAT0= 104
[ 107.058069] mxc_hdmi 20e0000.hdmi_video: Hotplug interrupt received
[ 107.058094] mxc_hdmi 20e0000.hdmi_video: my_trace AFTER HDMI_DVI_IH_STAT= 3d, HDMI_IH_PHY_STAT0= 104
[ 107.083114] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_stat0=0xf0, hdmi_phy_pol0=0xf2
[ 107.083146] mxc_hdmi 20e0000.hdmi_video: my_trace HDMI_DVI_STAT= f2, hdmi_phy_stat0= f0
[ 107.083187] mxc_hdmi 20e0000.hdmi_video: EVENT=plugin
[ 107.083210] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_cable_connected
[ 107.083231] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_read_edid
[ 107.083709] mxc_hdmi 20e0000.hdmi_video: read failed
[ 107.083731] mxc_hdmi 20e0000.hdmi_video: my_trace Read EDID again
[ 107.083751] mxc_hdmi 20e0000.hdmi_video: my_trace dev_info Read EDID again
[ 107.083769] mxc_hdmi 20e0000.hdmi_video: my_trace dev_dbg Read EDID again
[ 107.303131] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_read_edid
[ 107.324181] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_set_mode_to_vga_dvi
[ 107.324207] hdmi_disable_overflow_interrupts
[ 107.324223] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_notify_fb
[ 107.324246] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_disable
[ 107.337011] mxc_sdc_fb fb@1: 640x480 h_sync,r,l: 96,16,48 v_sync,l,u: 2,10,33 pixclock=25175000 Hz
[ 107.363155] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_init
[ 107.363164] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.376202] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.389234] hdmi_enable_overflow_interrupts
[ 107.389267] mxc_hdmi 20e0000.hdmi_video: event=FB_EVENT_MODE_CHANGE
[ 107.389274] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_setup
[ 107.389284] fb_videomode = 59 640 480 39721 48 16 33 10 96 2 0 16 32
[ 107.389292] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_setup - video mode changed
[ 107.389295] hdmi_disable_overflow_interrupts
[ 107.389301] mxc_hdmi 20e0000.hdmi_video: CEA mode used vic=0
[ 107.389308] mxc_hdmi 20e0000.hdmi_video: hdmi_av_composer
[ 107.389315] mxc_hdmi 20e0000.hdmi_video: final pixclk = 24780000
[ 107.389321] mxc_hdmi 20e0000.hdmi_video: hdmi_av_composer exit
[ 107.389326] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_init
[ 107.389334] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.402372] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.415404] hdmi_enable_overflow_interrupts
[ 107.415411] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_enable_video_path
[ 107.415419] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_setup CEA mode
[ 107.415426] mxc_hdmi 20e0000.hdmi_video: hdmi_enable_audio_clk
[ 107.415434] mxc_hdmi 20e0000.hdmi_video: set up AVI frame
[ 107.453076] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_setup exit
[ 107.453149] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_notify_fb exit
[ 107.453162] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_edid_rebuild_modelist
[ 107.453188] mxc_hdmi 20e0000.hdmi_video: Added mode 0:
[ 107.453198] mxc_hdmi 20e0000.hdmi_video: xres = 1920, yres = 1080, freq = 60, vmode = 0, flag = 17
[ 107.453210] mxc_hdmi 20e0000.hdmi_video: Added mode 2:
[ 107.453218] mxc_hdmi 20e0000.hdmi_video: xres = 640, yres = 480, freq = 60, vmode = 0, flag = 4
[ 107.453242] mxc_hdmi 20e0000.hdmi_video: Added mode 14:
[ 107.453251] mxc_hdmi 20e0000.hdmi_video: xres = 1920, yres = 1080, freq = 60, vmode = 32, flag = 2
[ 107.453257] mxc_hdmi 20e0000.hdmi_video: Added mode 16:
[ 107.453265] mxc_hdmi 20e0000.hdmi_video: xres = 1280, yres = 720, freq = 60, vmode = 32, flag = 2
[ 107.453272] mxc_hdmi 20e0000.hdmi_video: Added mode 17:
[ 107.453279] mxc_hdmi 20e0000.hdmi_video: xres = 720, yres = 480, freq = 60, vmode = 32, flag = 2
[ 107.453285] mxc_hdmi 20e0000.hdmi_video: Added mode 18:
[ 107.453292] mxc_hdmi 20e0000.hdmi_video: xres = 720, yres = 480, freq = 60, vmode = 16, flag = 2
[ 107.453298] mxc_hdmi 20e0000.hdmi_video: Added mode 20:
[ 107.453308] mxc_hdmi 20e0000.hdmi_video: xres = 640, yres = 480, freq = 60, vmode = 16, flag = 2
[ 107.453314] mxc_hdmi 20e0000.hdmi_video: Added mode 22:
[ 107.453321] mxc_hdmi 20e0000.hdmi_video: xres = 720, yres = 576, freq = 50, vmode = 16, flag = 2
[ 107.453328] mxc_hdmi 20e0000.hdmi_video: Added mode 23:
[ 107.453336] mxc_hdmi 20e0000.hdmi_video: xres = 720, yres = 576, freq = 50, vmode = 32, flag = 2
[ 107.453343] mxc_hdmi 20e0000.hdmi_video: Added mode 24:
[ 107.453350] mxc_hdmi 20e0000.hdmi_video: xres = 1280, yres = 720, freq = 50, vmode = 32, flag = 2
[ 107.453357] mxc_hdmi 20e0000.hdmi_video: Added mode 26:
[ 107.453365] mxc_hdmi 20e0000.hdmi_video: xres = 1920, yres = 1080, freq = 50, vmode = 32, flag = 2
[ 107.453372] mxc_hdmi 20e0000.hdmi_video: Added mode 27:
[ 107.453379] mxc_hdmi 20e0000.hdmi_video: xres = 1920, yres = 1080, freq = 60, vmode = 32, flag = 1
[ 107.453385] mxc_hdmi 20e0000.hdmi_video: Added mode 29:
[ 107.453391] mxc_hdmi 20e0000.hdmi_video: xres = 1280, yres = 720, freq = 60, vmode = 32, flag = 1
[ 107.453397] mxc_hdmi 20e0000.hdmi_video: Added mode 30:
[ 107.453404] mxc_hdmi 20e0000.hdmi_video: xres = 720, yres = 480, freq = 59, vmode = 32, flag = 1
[ 107.463168] mxc_sdc_fb fb@1: 1920x1080 h_sync,r,l: 44,88,148 v_sync,l,u: 5,4,36 pixclock=148500000 Hz
[ 107.493667] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_init
[ 107.493677] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.505719] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.517753] hdmi_enable_overflow_interrupts
[ 107.527079] mxc_sdc_fb fb@1: 1920x1080 h_sync,r,l: 44,88,148 v_sync,l,u: 5,4,36 pixclock=148500000 Hz
[ 107.553617] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_init
[ 107.553626] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.565663] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.577693] hdmi_enable_overflow_interrupts
[ 107.577864] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_set_mode
[ 107.577878] fb_videomode = 60 1920 1080 6734 148 88 36 4 44 5 3 32 32
[ 107.577887] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_set_mode: New video mode
[ 107.577898] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_set_mode_to_vga_dvi
[ 107.577905] hdmi_disable_overflow_interrupts
[ 107.577912] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_notify_fb
[ 107.577923] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_disable
[ 107.577930] hdmi_disable_overflow_interrupts
[ 107.577940] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_disable - exit
[ 107.587004] mxc_sdc_fb fb@1: 640x480 h_sync,r,l: 96,16,48 v_sync,l,u: 2,10,33 pixclock=25175000 Hz
[ 107.613147] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_init
[ 107.613156] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.626195] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.639227] hdmi_enable_overflow_interrupts
[ 107.639258] mxc_hdmi 20e0000.hdmi_video: event=FB_EVENT_MODE_CHANGE
[ 107.639294] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_notify_fb exit
[ 107.639304] fb_videomode = 60 1920 1080 6734 148 88 36 4 44 5 3 32 2
[ 107.639313] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_notify_fb
[ 107.639320] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_disable
[ 107.639326] hdmi_disable_overflow_interrupts
[ 107.639336] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_disable - exit
[ 107.646343] mxc_sdc_fb fb@1: 1920x1080 h_sync,r,l: 44,88,148 v_sync,l,u: 5,4,36 pixclock=148500000 Hz
[ 107.673620] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_init
[ 107.673629] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.685668] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.697699] hdmi_enable_overflow_interrupts
[ 107.697760] mxc_hdmi 20e0000.hdmi_video: event=FB_EVENT_MODE_CHANGE
[ 107.697766] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_setup
[ 107.697776] fb_videomode = 60 1920 1080 6734 148 88 36 4 44 5 3 32 32
[ 107.697782] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_setup - video mode changed
[ 107.697785] edid mode
[ 107.697793] fb_videomode = 60 1920 1080 6734 148 88 36 4 44 5 3 32 2
[ 107.697798] hdmi_disable_overflow_interrupts
[ 107.697804] mxc_hdmi 20e0000.hdmi_video: CEA mode used vic=16
[ 107.697812] mxc_hdmi 20e0000.hdmi_video: hdmi_av_composer
[ 107.697818] mxc_hdmi 20e0000.hdmi_video: final pixclk = 148500000
[ 107.697824] mxc_hdmi 20e0000.hdmi_video: hdmi_av_composer exit
[ 107.697829] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_phy_init
[ 107.697837] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.709873] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_configure
[ 107.721903] hdmi_enable_overflow_interrupts
[ 107.721910] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_enable_video_path
[ 107.721919] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_setup CEA mode
[ 107.721928] mxc_hdmi 20e0000.hdmi_video: hdmi_enable_audio_clk
[ 107.721934] mxc_hdmi 20e0000.hdmi_video: set up AVI frame
[ 107.753079] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_setup exit
[ 107.753155] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_notify_fb exit
[ 107.753162] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_cable_connected exit
Corresponding complete logs are attached.
log_case1_1_05102023.txt (59.8 KB)
Case2
imx6 module is attached on the proprietry carrier board which has display port. uboot vidargs are the same
Once the board is booted then I connect the DP-HDMI adapter and HDMI-HDMI cable. There is no handshake of this event seen in the logs
But what I have observed that during the boot of the module I see following logs everytime although no DP-HDMI adapter and HDMI-HDMI cable attached with the carrier board.
[ 0.383101] mxc_hdmi 20e0000.hdmi_video: hdmi_phy_stat0=0x2, hdmi_phy_pol0=0xf2
[ 0.383245] mxc_hdmi 20e0000.hdmi_video: my_trace HDMI_DVI_STAT= f2, hdmi_phy_stat0= 2
[ 0.383389] mxc_hdmi 20e0000.hdmi_video: EVENT=plugin
[ 0.383485] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_cable_connected
[ 0.383599] mxc_hdmi 20e0000.hdmi_video: mxc_hdmi_read_edid
[ 0.384035] mxc_hdmi 20e0000.hdmi_video: read failed
[ 0.384134] mxc_hdmi 20e0000.hdmi_video: my_trace Read EDID again
[ 0.384247] mxc_hdmi 20e0000.hdmi_video: my_trace dev_info Read EDID again
[ 0.384374] mxc_hdmi 20e0000.hdmi_video: my_trace dev_dbg Read EDID again
Corresponding complete logs are attached.
log_case5_06102023.txt (43.7 KB)
The dts_file which I have used is fdt_file=imx6q-apalis-ixora-v1.1.dtb in both cases
I have converted this file to dts and attached here as well
imx6q-apalis-ixora-v1.1.dts (73.5 KB)
My question is what are the possible ways in order to bringup the display in the Case2. Should there be any modifications in the kernel side device tree or in the hardware level interrupts should be changed.
I shall be thankful to you for the solution.