打印
[i.MX]

adv7180的IPU1 csi0 改为IPU2 csi1 需要改哪些地方啊

[复制链接]
2212|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
adv7180  IPU1 csi0 改为IPU2 csi1
板子是官方的imx6Q sabreauto的,版本是用kk4.4.2 ,新手求各位前辈指教。。。各位前辈指教。。。

现在
adv7180.cadv7180_probe中改了
        /* Set initial values for the sensor struct. */
        memset(&adv7180_data, 0, sizeof(adv7180_data));
        adv7180_data.sen.i2c_client = client;
        adv7180_data.sen.streamcap.timeperframe.denominator = 30;
        adv7180_data.sen.streamcap.timeperframe.numerator = 1;
        adv7180_data.std_id = V4L2_STD_ALL;
        video_idx = ADV7180_NOT_LOCKED;
        adv7180_data.sen.pix.width = video_fmts[video_idx].raw_width;
        adv7180_data.sen.pix.height = video_fmts[video_idx].raw_height;
        adv7180_data.sen.pix.pixelformat = V4L2_PIX_FMT_UYVY;  /* YUV422 */
        //adv7180_data.sen.pix.pixelformat = V4L2_PIX_FMT_RGB565;  /* by ruofeng add*/
        adv7180_data.sen.pix.priv = 1;  /* 1 is used to indicate TV in */
        adv7180_data.sen.on = true;
        adv7180_data.sen.csi = 1;//by ruofeng add


board_mx6_sabreauto.c
static struct fsl_mxc_capture_platform_data capture_data[] = {
        {
                //.csi = 0,
                //.ipu = 0,
                .csi = 1,//add by ruofeng
                .ipu = 1,//add by ruofeng
                .mclk_source = 0,
                .is_mipi = 0,
        }, {
                .csi = 1,
                .ipu = 0,
                .mclk_source = 0,
                .is_mipi = 1,
        },
};


board_mx6_sabreauto.h


static iomux_v3_cfg_t mx6q_sabreauto_pads[] = {
        ......
/**by ruofeng*/
#if 0
        /* ipu1 csi0 */
        MX6Q_PAD_CSI0_DAT4__IPU1_CSI0_D_4,
        MX6Q_PAD_CSI0_DAT5__IPU1_CSI0_D_5,
        MX6Q_PAD_CSI0_DAT6__IPU1_CSI0_D_6,
        MX6Q_PAD_CSI0_DAT7__IPU1_CSI0_D_7,
        MX6Q_PAD_CSI0_DAT8__IPU1_CSI0_D_8,
        MX6Q_PAD_CSI0_DAT9__IPU1_CSI0_D_9,
        MX6Q_PAD_CSI0_DAT10__IPU1_CSI0_D_10,
        MX6Q_PAD_CSI0_DAT11__IPU1_CSI0_D_11,
        MX6Q_PAD_CSI0_DAT12__IPU1_CSI0_D_12,
        MX6Q_PAD_CSI0_DAT13__IPU1_CSI0_D_13,
        MX6Q_PAD_CSI0_DAT14__IPU1_CSI0_D_14,
        MX6Q_PAD_CSI0_DAT15__IPU1_CSI0_D_15,
        MX6Q_PAD_CSI0_DAT16__IPU1_CSI0_D_16,
        MX6Q_PAD_CSI0_DAT17__IPU1_CSI0_D_17,
        MX6Q_PAD_CSI0_DAT18__IPU1_CSI0_D_18,
        MX6Q_PAD_CSI0_DAT19__IPU1_CSI0_D_19,
        MX6Q_PAD_CSI0_VSYNC__IPU1_CSI0_VSYNC,
        MX6Q_PAD_CSI0_MCLK__IPU1_CSI0_HSYNC,
        MX6Q_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK,
#else
        MX6Q_PAD_EIM_DA0__IPU2_CSI1_D_9,
        MX6Q_PAD_EIM_DA1__IPU2_CSI1_D_8,
        MX6Q_PAD_EIM_DA2__IPU2_CSI1_D_7,
        MX6Q_PAD_EIM_DA3__IPU2_CSI1_D_6,
        MX6Q_PAD_EIM_DA4__IPU2_CSI1_D_5,
        MX6Q_PAD_EIM_DA5__IPU2_CSI1_D_4,
        MX6Q_PAD_EIM_DA6__IPU2_CSI1_D_3,
        MX6Q_PAD_EIM_DA8__IPU2_CSI1_D_1,
        MX6Q_PAD_EIM_DA9__IPU2_CSI1_D_0,
         MX6Q_PAD_EIM_EB1__IPU2_CSI1_D_10,
         MX6Q_PAD_EIM_EB0__IPU2_CSI1_D_11,
         MX6Q_PAD_EIM_A17__IPU2_CSI1_D_12,
         MX6Q_PAD_EIM_A18__IPU2_CSI1_D_13,
         MX6Q_PAD_EIM_A21__IPU2_CSI1_D_16,
         MX6Q_PAD_EIM_A23__IPU2_CSI1_D_18,
         MX6Q_PAD_EIM_A24__IPU2_CSI1_D_19,
         MX6Q_PAD_EIM_DA11__IPU2_CSI1_HSYNC,
         MX6Q_PAD_EIM_DA12__IPU2_CSI1_VSYNC,
         MX6Q_PAD_EIM_A16__IPU2_CSI1_PIXCLK,
#endif       


框架有点搞不懂。。。不知道该怎么改。。。呼叫支援!!求指教!!

相关下载

相关帖子

沙发
ruofeng1008|  楼主 | 2015-12-24 11:28 | 只看该作者
IO口也改了  

6C@2]E97`%$I0Z260P6WLDQ.png (22.14 KB )

6C@2]E97`%$I0Z260P6WLDQ.png

使用特权

评论回复
板凳
ruofeng1008|  楼主 | 2015-12-24 11:32 | 只看该作者
自己顶!!!坐等!!
在线等!!!!

使用特权

评论回复
地板
ruofeng1008|  楼主 | 2015-12-24 12:56 | 只看该作者
大神在哪。。。

使用特权

评论回复
5
mini1986| | 2015-12-28 09:39 | 只看该作者
static struct fsl_mxc_capture_platform_data capture_data[] = {
        {
                //.csi = 0,
                //.ipu = 0,
                .csi = 1,//add by ruofeng
                .ipu = 1,//add by ruofeng
                .mclk_source = 0,
                .is_mipi = 0,
        }, {
                .csi = 1,
                .ipu = 0,
                .mclk_source = 0,
                .is_mipi = 1,
        },
};
主要就是修改这个,调试调试,还有就是pinmux配置好就可以了......再不行,看看信号......

使用特权

评论回复
6
ruofeng1008|  楼主 | 2015-12-28 15:58 | 只看该作者
mini1986 发表于 2015-12-28 09:39
static struct fsl_mxc_capture_platform_data capture_data[] = {
        {
                //.csi = 0, ...

我有个疑问,就是原理图只接了CSI0的PIN,内存映射不是固定了吗?CSI1硬件没接,配置了引脚,这行吗?还是我理解错误了。请您指点!


aa.png (233.58 KB )

硬件原理图

硬件原理图

使用特权

评论回复
7
mini1986| | 2015-12-28 16:26 | 只看该作者
ruofeng1008 发表于 2015-12-28 15:58
我有个疑问,就是原理图只接了CSI0的PIN,内存映射不是固定了吗?CSI1硬件没接,配置了引脚,这行吗?还 ...

你用csi0,你就配置csi0,不用csi1的话,一般配为gpio......

使用特权

评论回复
8
ruofeng1008|  楼主 | 2015-12-28 16:29 | 只看该作者
本帖最后由 ruofeng1008 于 2015-12-29 14:09 编辑
mini1986 发表于 2015-12-28 16:26
你用csi0,你就配置csi0,不用csi1的话,一般配为gpio......

你好,IPU1 CSI0和IPU2 CSI1是并行接口,但是CSI0为16位数据,而CSI1则是20位。不知道该怎么改啊。按照上面的寄存器配置的话,会显示找不到摄像头。肿么办啊

使用特权

评论回复
9
ruofeng1008|  楼主 | 2015-12-29 09:08 | 只看该作者
有没有人啊。。。。自己顶!!!!!

使用特权

评论回复
10
ruofeng1008|  楼主 | 2015-12-31 09:29 | 只看该作者
没有人??

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

31

帖子

2

粉丝