爱折腾的老王 2022-08-19 11:58 采纳率: 0%
浏览 74
已结题

全志linux系统如何点亮MIPI屏?

背景
买了一块荣品的全志A40i开发板,默认安卓系统,5寸MIPI屏(友达)。想换成Linux系统,厂家给了个标准SDK但是需要自己改MIPI驱动,扔了两份屏的资料,不知道怎么修改。

尝试过的方法
在SDK的驱动中,找到了一个类似的驱动N080_Panel.c,其中初始化代码是这样的:

img


但是厂商给的一份资料中,参数个数是四个,不知道怎么填进去:

img


另一份资料是excel表,如此这般:

img

我想要达到的结果
该如何修改这个N080_Panel.c里的驱动来适配这个5寸屏?或者有没有其他方法?

  • 写回答

3条回答 默认 最新

  • 优质网络系统领域创作者 网络领域新星创作者 2022-08-23 08:28
    关注

    一、前期准备
    1、准备屏幕数据手册:厂家FAE提供
    2、准备屏幕初始化参数:厂家FAE提供
    3、确定屏幕类型:一般mipi dsi屏幕分为:video mode和commond mode
    4、准备原理图,硬件工程师提供,确定屏幕供电、rst、te、mipi(几lane)、背光bl-en、pwm等引脚
    二、移植驱动
    此处和其他平台有点区别,A40i经过笔者测试发现,生效的地方在uboot,kernel里面的驱动并不起做用
    1、找到lichee\brandy\u-boot-2014.07\drivers\video\sunxi\disp2\disp\lcd目录,参考里面现有驱动,inet_dsi_panel.c
    (1)修改LCM_LT080B21BA94_setting屏幕初始化参数,初始化参数由fae提供
    (2)修改LCD_power_on函数,根据数据手册,增加上电时序
    2、修改参数配置,找到lichee\tools\pack\chips\sun8iw11p1\configs\a40-p1\sys_config.fex
    lcd_used            = 1 //
    lcd_driver_name     = "default_lcd"----->修改为uboot驱动,屏幕的配置字符串inet_dsi_panel,
    lcd_driver_name     = "inet_dsi_panel"
    lcd_x               = 1280 
    lcd_y               = 800 分辨率改为720 * 1280
    修改前后肩参数,根据数据手册查得
    lcd_hbp             = 143
    lcd_ht              = 1503
    lcd_hspw            = 32
    lcd_vbp             = 36
    lcd_vt              = 845
    lcd_vspw            = 10
    lcd_hspw = hsync
    lcd_hbp    = hbp
    lcd_ht       = lcd_x + hsync + hbp + hfp
    lcd_vbp             = vbp
    lcd_vt              = lcd_y + vsync+ vbp + vfp
    lcd_vspw            = vsync
    修改电源和背关
    lcd_bl_en           = port:PB9<1><1>
    ;lcd_gpio_0          = port:PB11<1><0><1>
    lcd_power           = "vcc-lcd"
    修改pwm
    [pwm0]
    pwm_used            = 1
    pwm_positive        = port:PB2<3><0>
    [pwm0_suspend]
    pwm_positive        = port:PB2<7><0>
    修改mipi配置
    lcd_dsi_if          = 2
    lcd_dsi_lane        = 4
    修改完,编译,烧录、验证,经验丰富的话,基本直接就可点亮屏幕了

    评论

报告相同问题?

问题事件

  • 系统已结题 8月27日
  • 创建了问题 8月19日

悬赏问题

  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题