你好:
现在我用rk3399pro开发板开发项目,其中用到mipi_dsi接口输出视频, mipi_dsi接口接了一个lt8912芯片(mipi转hdmi)。
我现在移植mipi_dsi驱动,如下是我的移植操作:
一.由于要用到mipi接口,所以先要在menuconfig里打开mipi。
(1)-> Device Drivers
| → Graphics support
| → Rockchip Misc Video drive
| → LCD Panel Select (rk mipi dsi lcd)
(2)-> Device Drivers
| → Graphics support
| → Rockchip Misc Video driver
| → RockChip display transmitter support
RK32 RGB to DisplayPort transmitter support
Rockchip MIPI DSI support
配置完上面的驱动保存后,打开.config文件,如果文件里面有如下3条数据,说明配置成功。
CONFIG_LCD_MIPI=y
CONFIG_MIPI_DSI=y
CONFIG_RK32_MIPI_DSI=y
还有个驱动需要勾选上
→ Device Drivers
| → Graphics support
| → Display Panels —><*> support for simple panel
二 打开mipi后,在kernel 目录下执行
make -j8 ARCH=arm64 rk3399pro-firefly-aiojd4.img 命令,编译内核,编译不成功,报如下错误。drivers/built-in.o:在函数‘edp_psr_state’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1460:对‘rk_fb_poll_wait_frame_complete’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1460:(.text+0x48e38): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 rk_fb_poll_wait_frame_completedrivers/built-in.o:在函数‘rk32_edp_probe’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1762:对‘rk_fb_get_prmry_screen’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1762:(.text+0x491e0): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 rk_fb_get_prmry_screen/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1836:对‘support_uboot_display’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1836:(.text+0x4941c): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 support_uboot_display/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1850:对‘support_uboot_display’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1850:(.text+0x49490): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 support_uboot_display/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1854:对‘support_uboot_display’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1854:(.text+0x494b0): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 support_uboot_display/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1860:对‘rk_fb_trsm_ops_register’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:1860:(.text+0x494e4): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 rk_fb_trsm_ops_registerdrivers/built-in.o:在函数‘rk32_edp_init_edp’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:133:对‘rk_fb_get_prmry_screen’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_dp.c:133:(.text+0x49678): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 rk_fb_get_prmry_screendrivers/built-in.o:在函数‘rk32_dsi_enable’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1610:对‘rk_fb_get_prmry_screen’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1610:(.text+0x4bb84): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 rk_fb_get_prmry_screendrivers/built-in.o:在函数‘rockchip_3399_grf_config’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1731:对‘rk_mipi_get_dsi_num’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1731:(.text+0x4bba8): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 rk_mipi_get_dsi_numdrivers/built-in.o:在函数‘rk32_dsi_enable’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1615:对‘rk_mipi_get_dsi_num’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1615:(.text+0x4bbf0): 截断重寻址至相符: R_AARCH64_CALL26 针对未定义的符号 rk_mipi_get_dsi_num/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1618:对‘rk_mipi_screen_standby’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1618:(.text+0x4bc0c): 从输出所省略的额外重寻址溢出/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1625:对‘rk_mipi_get_dsi_num’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1630:对‘rk_mipi_get_dsi_num’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1634:对‘rk_mipi_get_dsi_num’未定义的引用drivers/built-in.o:在函数‘rk32_mipi_dsi_probe’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:2001:对‘rk_fb_get_prmry_screen’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:2038:对‘rk_mipi_get_dsi_lane’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:2039:对‘rk_mipi_get_dsi_lane’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:2040:对‘rk_mipi_get_dsi_clk’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:2060:对‘rk_fb_trsm_ops_register’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:2074:对‘support_uboot_display’未定义的引用drivers/built-in.o:在函数‘rockchip_mipi_cmd_mode_refresh’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1674:对‘rk_mipi_get_dsi_num’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1687:对‘rk_mipi_get_dsi_num’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1696:对‘rk_mipi_get_dsi_num’未定义的引用drivers/built-in.o:在函数‘rk32_mipi_power_down_DDR’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1819:对‘rk_mipi_get_dsi_num’未定义的引用drivers/built-in.o:在函数‘rk32_mipi_power_up_DDR’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1827:对‘rk_mipi_get_dsi_num’未定义的引用drivers/built-in.o:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1832: 跟着更多未定义的参考到 rk_mipi_get_dsi_numdrivers/built-in.o:在函数‘rk32_dsi_disable’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1706:对‘rk_mipi_screen_standby’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1708:对‘rk_mipi_get_dsi_num’未定义的引用drivers/built-in.o:在函数‘rk_mipi_dsi_init’中:/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1011:对‘rk_fb_get_prmry_screen_pixclock’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1006:对‘rk_mipi_get_dsi_num’未定义的引用/home/wzb/rk3399-pro/Android8.1/AIO-RK3399ProJD4/firenow-oreo-rk3399pro/kernel/drivers/video/rockchip/transmitter/rk32_mipi_dsi.c:1006:对‘rk_mipi_get_dsi_num’未定义的引用
请问下,是否有别的配置项没有配置呢。请不瑟吝教,谢谢。