您尚未登录。

楼主 #1 2019-12-06 14:56:32

xd717
会员
注册时间: 2019-10-23
已发帖子: 51
积分: 51

A64 lvds配置 求助!

有大佬A64上用过LVDS屏吗
当前内核版本 4.19.67

内核和设备树要做怎样的配置呢?

目前现象一直是红绿蓝颜色轮换,(一直处在上电检测状态?)

还望有经验的大佬支支招 拜托了!

离线

楼主 #3 2019-12-06 15:10:45

xd717
会员
注册时间: 2019-10-23
已发帖子: 51
积分: 51

Re: A64 lvds配置 求助!

具体怎么配我还有点不清楚
这是从全志生成的dtb 反编译成dts里导出来的节点信息
我目前按这个来的

lcd0@01c0c000 {
			compatible = "allwinner,sunxi-lcd0";
			pinctrl-names = "active", "sleep";
			status = "okay";
			device_type = "lcd0";
			lcd_used = <0x1>;
			lcd_driver_name = "default_lcd";
			lcd_backlight = <0x32>;
			lcd_if = <0x3>;
			lcd_x = <0x500>;
			lcd_y = <0x320>;
			lcd_width = <0x96>;
			lcd_height = <0x5e>;
			lcd_dclk_freq = <0x46>;
			lcd_pwm_used = <0x1>;
			lcd_pwm_ch = <0x0>;
			lcd_pwm_freq = <0xc350>;
			lcd_pwm_pol = <0x1>;
			lcd_pwm_max_limit = <0xff>;
			lcd_hbp = <0x14>;
			lcd_ht = <0x58a>;
			lcd_hspw = <0xa>;
			lcd_vbp = <0xa>;
			lcd_vt = <0x32e>;
			lcd_vspw = <0x5>;
			lcd_lvds_if = <0x0>;
			lcd_lvds_colordepth = <0x1>;
			lcd_lvds_mode = <0x0>;
			lcd_frm = <0x1>;
			lcd_hv_clk_phase = <0x0>;
			lcd_hv_sync_polarity = <0x0>;
			lcd_gamma_en = <0x0>;
			lcd_bright_curve_en = <0x0>;
			lcd_cmap_en = <0x0>;
			lcd_bl_en = <0x31 0x3 0x17 0x1 0x0 0xffffffff 0x1>;
			lcd_bl_en_power = "none";
			lcd_power = "vcc-lcd-0";
			lcd_fix_power = "vcc-dsi-33";
			pinctrl-0 = <0xbe>;
			lcd_pin_power = "vcc-pd";
			pinctrl-1 = <0xbf>;
		};

离线

楼主 #4 2019-12-06 15:15:45

xd717
会员
注册时间: 2019-10-23
已发帖子: 51
积分: 51

Re: A64 lvds配置 求助!

驱动 我只看到内核里 有个Generic LVDS panel driver
还有哪些是相关的?

离线

楼主 #6 2019-12-06 15:29:21

xd717
会员
注册时间: 2019-10-23
已发帖子: 51
积分: 51

Re: A64 lvds配置 求助!

还能这么玩 说:

4.19 是主线 Linux 吧, 不是全志官方的 bsp ?

对的
移植的主线的

离线

楼主 #8 2019-12-06 19:40:57

xd717
会员
注册时间: 2019-10-23
已发帖子: 51
积分: 51

Re: A64 lvds配置 求助!

还能这么玩 说:

4.19 是主线 Linux 吧, 不是全志官方的 bsp ?

你好,我看内核驱动有panel_lvds ,和panle_simple 加载这个再配好dts就可以吗

离线

楼主 #9 2019-12-07 22:28:05

xd717
会员
注册时间: 2019-10-23
已发帖子: 51
积分: 51

Re: A64 lvds配置 求助!

还有人吗T.T 我想用lvds的屏 我用内核4.19.67自带的panel-lvds 驱动 加上如下dts 可行吗 这种思路是对的吗?
&tcon0{
   
    status = "okay";
    compatible ="panel-lvds";  // 使用4.x内核的simple panel框架
    power-supply = <&reg_dc1sw>;
    //power-supply = <&vcc_lcd>; // 因为屏幕不使用gpio供电,所以注释掉
    //backlight = <&backlight>; // 因为屏幕不使用背光调节,所以注释掉
    //bus-format = <MEDIA_BUS_FMT_RBG888_1X24>; // RGB888
    enable-delay-ms = <10>;
    allwinner,data-mapping = "vesa-24"; // lvds数据格式
    allwinner,data-width = <24>; // 24位
    allwinner,output = "lvds"; // lvds接口输出
    allwinner,width-mm=<110>;
    allwinner,height-mm=<56>;
    pinctrl-names = "default";
    pinctrl-0 = <&lvds_pins>;
   
    panel-timing {
       
            clock-frequency = <70000000>; // 参考第1点
            width-mm=<110>;
            height-mm=<56>;
            hactive = <1280>; // 这里填分辨率即可
            vactive = <800>;
            hback-porch = <10>; // 参考第1点
            hfront-porch = <8>; // 参考第1点
            vback-porch = <3>; // 参考第1点
            vfront-porch = <3>; // 参考第1点
            hsync-len = <32>; // 参考第1点
            vsync-len = <6>; // 参考第1点
            hsync-active = <0>; // 参考第2点
            vsync-active = <0>; // 参考第2点
            de-active = <1>; // 参考第2点
            pixelclk-active = <0>; // 参考第2点
       
    };
};

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn