|
rk3399 折腾分享---ov13850
发表于 2017-3-15 13:40:19
浏览:69217
|
回复:35
打印
只看该作者
[复制链接]
楼主
本帖最后由 loading 于 2017-3-21 19:02 编辑
rk3399 折腾分享,新手适用,老鸟请指点
1. 资料下载,关键是源码
http://www.t-firefly.com/zh/firenow/Firefly-rk3399/download/
2. 源码解压,编译步骤,环境配置
http://wiki.t-firefly.com/index. ... 8.BD.BD_Android_SDK
3. 折腾开始,点eDP 接口屏,后续其他模块也会在这更新
先看图片 O(∩_∩)O哈哈~
3.1 拿到开发板,接HDMI 感觉不方便,想着飞线直接点eDP 1080分辨率的屏,飞完线开机,背光是亮,没显示;
又对一遍定义及飞线情况,还是没显示,把屏拿起来有显示了,但是会闪屏,
原来是飞线地方没处理好,后来用导电胶布一包就正常了,飞线的看图片12v,3v3,两路数据
3.2 屏参看图片,弄成单独的dtsi 放在这个路径:kernel/include/dt-bindings/display/screen-timing/lcd-edp-1920x1080.dtsi
3.3 配置方面
config 里面去掉mipi 选择这个 LCD Panel Select (General lcd panel)
dts 文件用这个 rk3399-firefly-mini-edp.dts
在dts 里面include 屏参dtsi
4. 买官方的OV13850 用官方的固件是可以打开的, 说明硬件正常
但是自己编译的固件打不开, i2c 读写错误, 排查发现电源问题
然后参考rk3288 的wiki 配置cifpower 引脚, 重新编译正常
http://wiki.t-firefly.com/index.php/Firefly-RK3288/Camera
4.1 dts 里面添加
&isp0 {
status = "okay";
rockchip,gpios-cifpower = <&gpio1 22 GPIO_ACTIVE_HIGH>;
};
&isp1 {
status = "okay";
rockchip,gpios-cifpower = <&gpio1 22 GPIO_ACTIVE_HIGH>;
};
4.2 drivers/media/video/rk_camsys/camsys_drv.c 里面添加
enum of_gpio_flags flags;
int cifpower_io;
int io_ret;
cifpower_io = of_get_named_gpio_flags(dev->of_node, "rockchip,gpios-cifpower", 0, &flags);
camsys_trace(1, "1-gpios-cifpower: gpio=%d", cifpower_io);
if(gpio_is_valid(cifpower_io)) {
cifpower_io = of_get_named_gpio_flags(dev->of_node, "rockchip,gpios-cifpower", 0, &flags);
camsys_trace(1, "gpios-cifpower: gpio_request");
io_ret = gpio_request(cifpower_io,"cifpower");
camsys_trace(1, "1-gpios-cifpower: gpio_request=%d", io_ret);
if(io_ret < 0){
camsys_err("Request %s(%d) failed","cifpower", cifpower_io);
} else {
gpio_direction_output(cifpower_io, 1);
gpio_set_value(cifpower_io, 1);
camsys_trace(1, "gpios-cifpower: %d high", cifpower_io);
}
}
|
|