打印
[i.MX]

imx6q和imx6d的kernel问题。(已解决)

[复制链接]
8727|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
calmtjie|  楼主 | 2014-7-28 16:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 FSL_TICS_A 于 2014-8-7 15:59 编辑

我们现在用的cpu是双核IMX6D,在以前,旧版kernel(3.0.35),uboot(2009)和四核cpu IMX6Q是通用的。
    现在我们用的uboot是uboot2013.04,编译出的kernel3.10.17,在imx6q上可以正常启动,而用于imx6d会卡死在“GAL device”初始化上。如果在内核中裁剪掉gpu驱动,imx6d也可以启动了。就说明问题出在gpu上。

   新版的kernel驱动机制是dts,请问这两个cpu驱动的差异,应该怎么配置??

相关帖子

沙发
FSL_TICS_Rita| | 2014-7-28 16:19 | 只看该作者
楼主你好,请问你使用的板子是飞思卡尔的开发板,还是自己设计的?

使用特权

评论回复
板凳
calmtjie|  楼主 | 2014-7-28 16:36 | 只看该作者
FSL_TICS_Rita 发表于 2014-7-28 16:19
楼主你好,请问你使用的板子是飞思卡尔的开发板,还是自己设计的?

板子是我们自己的板子,cpu是IMX6D,
也买了飞思卡尔官方的4核开发板imx6q。

使用特权

评论回复
地板
calmtjie|  楼主 | 2014-7-28 16:38 | 只看该作者
进入内核,添加打印追踪信息,发现启动后挂在“\drivers\mxc\gpu-viv\hal\os\linux\kernel\gc_hal_kernel_driver.c”中的

/* Create the GAL device. */
    gcmkONERROR(gckGALDEVICE_Construct(
        irqLine,
        registerMemBase, registerMemSize,
        irqLine2D,
        registerMemBase2D, registerMemSize2D,
        irqLineVG,
        registerMemBaseVG, registerMemSizeVG,
        contiguousBase, contiguousSize,
        bankSize, fastClear, compression, baseAddress, physSize, signal,
        logFileSize,
        pdev,
        powerManagement,
        gpuProfiler,
        &device
        ));

这个函数里面。

  

     进一步跟踪内核,可知程序最终是进入 “\drivers\mxc\gpu-viv\hal\os\linux\kernel\gc_hal_kernel_os.c”的函数gckOS_WriteRegisterEx中的 writel(Data, (gctUINT8 *)Os->device->registerBases[Core] + Address)这一步挂掉的:

gckOS_WriteRegisterEx(
    IN gckOS Os,
    IN gceCORE Core,
    IN gctUINT32 Address,
    IN gctUINT32 Data
    )
{
    gcmkHEADER_ARG("Os=0x%X Core=%d Address=0x%X Data=0x%08x", Os, Core, Address, Data);
    gcmkVERIFY_ARGUMENT(Address < Os->device->requestedRegisterMemSizes[Core]);
    writel(Data, (gctUINT8 *)Os->device->registerBases[Core] + Address);
    /* Success. */
    gcmkFOOTER_NO();
    return gcvSTATUS_OK;
}

使用特权

评论回复
5
FSL_TICS_Rita| | 2014-7-28 16:58 | 只看该作者
calmtjie 发表于 2014-7-28 16:38
进入内核,添加打印追踪信息,发现启动后挂在“\drivers\mxc\gpu-viv\hal\os\linux\kernel\gc_hal_kernel_ ...

楼主你好,关于这个问题建议你到https://bbs.21ic.com/icview-684518-1-1.html提交一个SR技术服务请求~~

使用特权

评论回复
6
calmtjie|  楼主 | 2014-7-28 17:05 | 只看该作者
FSL_TICS_Rita 发表于 2014-7-28 16:58
楼主你好,关于这个问题建议你到https://bbs.21ic.com/icview-684518-1-1.html提交一个SR技术服务请求~~ ...

好,谢谢!!

使用特权

评论回复
7
FSL_TICS_Rita| | 2014-7-28 17:19 | 只看该作者
calmtjie 发表于 2014-7-28 17:05
好,谢谢!!

不客气的,欢迎有问题继续在本论坛中交流哈:)~~

使用特权

评论回复
8
ecoren| | 2015-5-15 11:17 | 只看该作者
FSL_TICS_Rita 发表于 2014-7-28 17:19
不客气的,欢迎有问题继续在本论坛中交流哈~~

IMX6Q四核全部调用,发热严重,一个CPU差不多的散热片根本hold不助它,老是降频重启,温度能达到110度,该怎么办呢,我们用的是汽车级,设备空间局限,根本不能加fans,求帮助,谢谢。

使用特权

评论回复
9
mini1986| | 2015-5-18 13:37 | 只看该作者
个人认为,device tree一点都不好用......cpu的差异得看具体的datasheet了

使用特权

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

本版积分规则

2

主题

5

帖子

0

粉丝