迅为龙芯2K1000开发板pmon BSP移植之使能背光和PWM
屏幕背光我们要在 pmon 的启动阶段就要使能,不然屏幕就是黑的,在第 9.4 章节我们分析了 pmon 的启动流程,在 Targets/LS2K/ls2k/tgt_machdep.c 文件的 tgt_devconfig 函数里面对显卡进行了初始化,所以我们是不是就可以在这个函数里面对背光进行使能呢?
首先我们要确定屏幕背光的 GPIO 是哪一个,我们找到背光部分的原理图,如下图所示:
可以看出,屏幕背光使用的引脚为 GPIO37 将这个 GPIO 拉高即可,在 BSP 里面,关于背光的代码其实已经给我们写好了,我们稍加修改即可。我们找到 Targets/LS2K/ls2k/tgt_machdep.c 文件的 tgt_devconfig 函数,在这个函数里面调用了 init_pcidev 函数。而 init_pcidev 函数里面通过宏定义 PAI2 包含了 pai2_init 函数,
在 pai2_init 函数里面使能了屏幕背光和 PWM,如下图所示:
在 bsp 里面已经使能了 PWM0,这里我们无需在做修改,代码如下:
如果您要添加一个自己分辨率,比如 600x400,其他参数您可以在 Ubuntu 的电脑终端输入命令 cvt 600400 来自动获取的。如下图所示:
因为这里面 1024x600 的参数已经有了,我们就不必在添加这些参数了,所以这样我们屏幕就适配好了是不是要比 uboot 上移植屏幕简单多了。
更多内容可以关注:北京迅为
首先我们要确定屏幕背光的 GPIO 是哪一个,我们找到背光部分的原理图,如下图所示:
可以看出,屏幕背光使用的引脚为 GPIO37 将这个 GPIO 拉高即可,在 BSP 里面,关于背光的代码其实已经给我们写好了,我们稍加修改即可。我们找到 Targets/LS2K/ls2k/tgt_machdep.c 文件的 tgt_devconfig 函数,在这个函数里面调用了 init_pcidev 函数。而 init_pcidev 函数里面通过宏定义 PAI2 包含了 pai2_init 函数,
在 pai2_init 函数里面使能了屏幕背光和 PWM,如下图所示:
在 bsp 里面已经使能了 PWM0,这里我们无需在做修改,代码如下:
如果您要添加一个自己分辨率,比如 600x400,其他参数您可以在 Ubuntu 的电脑终端输入命令 cvt 600400 来自动获取的。如下图所示:
因为这里面 1024x600 的参数已经有了,我们就不必在添加这些参数了,所以这样我们屏幕就适配好了是不是要比 uboot 上移植屏幕简单多了。
更多内容可以关注:北京迅为