Hello i am asking question about imx7 and lcd display. we are designed custom board its so simple. I will add lcd panel. i created custom kernel perhaps its have generic lcd driver and backlight .
AT070tn83 LCD Panel, and i cant find " its support via generic driver or oem custom driver " i haven't lcd now and i need this info this LCD or Kernel support generic driver ?
Secondly i am using imx7dsabresd's devicetree and should i edit device tree for this LCD panel ? if it need custom device tree parameter how i can define this parameters
last question am i edit u boot parameters for this panel ?
Hi Atakan
basically for new lcd timings should be adjusted in dts file:
linux/arch/arm/boot/dts/imx7d-sdb.dts
linux-imx.git - i.MX Linux Kernel
display0: display {
bits-per-pixel = <16>;
bus-width = <24>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <9200000>;
hactive = <480>;
vactive = <272>;
hfront-porch = <8>;
hback-porch = <4>;
hsync-len = <41>;
vback-porch = <2>;
vfront-porch = <4>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <0>; };
};
Generic driver is described in Chapter 12 ELCDIF Frame Buffer
Driver attached Linux Manual and boot parameters in Table 11. Common
kernel boot parameters attached Release Notes.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
i compiled this way and actually when i am getting unsupported panel TFT43AB from u boot my panel not connected now i just prepared .
second question maybe wrong some parameters kernel orginal value .bus = ELCDIF1_IPS_BASE_ADDR in u boot looking &lcdif or looking .addr = 0 refer link.
third question how i can control my panel drivers and system without lcd panel
Hello i tried for lcd but perhaps i get some problems I refer https://www.embeddedartists.com/sites/default/files/docs/misc/iMX_Adding_Displays.pdf and this page.
DEVICETREE
I edited for examples this link and others and i edit kernel imx7d-sdb.dts i refer upper link
&lcdif {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lcdif_dat
&pinctrl_lcdif_ctrl>;
enable-gpio = <&gpio_spi 7 GPIO_ACTIVE_LOW>;
display = <&display0>;
status = "okay";
display0: display {
bits-per-pixel = <32>;
bus-width = <24>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <33500000>;
hactive = <800>;
vactive = <480>;
hfront-porch = <164>;
hback-porch = <89>;
hsync-len = <10>;
vback-porch = <75>;
vfront-porch = <75>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <1>;
};
};
};
};
KERNEL
i enabled to kernel to CONFIG_FB_MXS (actually i checked its already enable over /proc/config.gz)
U BOOT PROBLEM
i edit to /boards/freescale/imx7dsabresd/...
İ changed parameters
static struct lcd_panel_info_t const displays[] = {
struct display_info_t const displays[] = {{
.bus = ELCDIF1_IPS_BASE_ADDR,
.addr = 0,
.pixfmt = 24,
.detect = NULL,
.enable = do_enable_parallel_lcd,
.mode = {
.name = "Innolux-AT070TN",
.xres = 800,
.yres = 480,
.pixclock = 29850,
.left_margin = 89,
.right_margin = 164,
.upper_margin = 75,
.lower_margin = 75,
.hsync_len = 10,
.vsync_len = 10,
.sync = 0,
.vmode = FB_VMODE_NONINTERLACED
} } };