Hi TI,
I designed an AM4378 custom board to interface INNONUX EJ101IA-02G with 1280*800 which pixel clock 71.1MHz.
For the use of this LCD, I modified the DTS file and panel-simple.c as follows.
lcd_bl: backlight {
compatible = "pwm-backlight";
pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>;
brightness-levels = <0 51 53 56 62 75 101 152 255>;
default-brightness-level = <6>;
};
lcd0: display {
compatible = "innolux,ej101ia-01g", "panel-dpi";
label = "lcd";
pinctrl-names = "default";
pinctrl-0 = <&lcd_pins>;
backlight = <&lcd_bl>;
enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
port {
lcd_in: endpoint {
remote-endpoint = <&dpi_out>;
};
};
};
static const struct display_timing innolux_ej101ia_01g_timing = {
.pixelclock = { 68900000, 71100000, 73400000 },
.hactive = { 1280, 1280, 1280 },
.hfront_porch = { 57, 114, 142 },
.hback_porch = { 15, 30, 37 },
.hsync_len = { 16, 16, 16 },
.vactive = { 800, 800, 800 },
.vfront_porch = { 5, 10, 14 },
.vback_porch = { 4, 9, 13 },
.vsync_len = { 4, 4, 4 },
.flags = DISPLAY_FLAGS_DE_HIGH,
};
static const struct panel_desc innolux_ej101ia_01g = {
.timings = &innolux_ej101ia_01g_timing,
.num_timings = 1,
.bpc = 8,
.size = {
.width = 217,
.height = 135,
},
.delay = {
.enable = 200,
.disable = 200,
},
.bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,
};
Then, the board sucessfully boot up. But LCD didn't work and no pclock & signal from DSS.
There are some errors on kenel log..
[ 1.451996] omapdss_dss 4832a000.dss: 4832a000.dss supply vdda_video not found, using dummy regulator
[ 1.461372] omapdss_dss 4832a000.dss: Linked as a consumer to regulator.0
[ 1.468274] DSS: OMAP DSS rev 2.0
[ 1.472619] omapdss_dss 4832a000.dss: bound 4832a400.dispc (ops dispc_component_ops)
[ 1.480916] omapdrm omapdrm.0: DMM not available, disable DMM support
[ 1.487660] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 1.494349] [drm] No driver support for vblank timestamp query.
[ 1.500635] [drm] Cannot find any crtc or sizes
[ 1.505923] [drm] Initialized omapdrm 1.0.0 20110917 for omapdrm.0 on minor 0
[ 1.513565] cpu cpu0: Linked as a consumer to regulator.3
[ 1.519035] cpu cpu0: Dropping the link to regulator.3
[ 1.524401] cpu cpu0: Linked as a consumer to regulator.3
In command Line,
root@am437x-evm:~# systemctl stop weston
root@am437x-evm:~# kmstest --flip
terminate called after throwing an instance of 'std::invalid_argument'
what(): no modes available
Aborted (core dumped)
root@am437x-evm:~# kmscube
trying to load module omapdrm...success.
### Display [0]: CRTC = 47, Connector = 46, format = 0x34325258
Segmentation fault (core dumped)
In SDK Document, I read the board only supports a maxinum of 720p@60 due to memory bandwidth linitation.
Is it means 1280x800@60 LCD can not be used with am4378 board ??
No way to use this LCD ??
SDK Version is processor-sdk-linux-am437x-evm-06.01.00.08 and reference design is AM437x GP-EVM.
Any help would be greatly appreciated.