This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux/DM388:i2c2和 i2c3配置

Guru**** 2596835 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/647638/linux-dm388-i2c2-and-i2c3-configuartion

器件型号:DM388

工具/软件:Linux

大家好、

我使用的是具有 IPNC 3.9.1 RDK 的 DM388 EVM。

默认情况下、我想配置 i2c2和 i2c3、但未配置。

下面、我添加了 t181xx.dtsi

i2c3:I2C@19c000{
                               兼容="ti、OMAP4-i2c";
                               #address-cells =<1>;
                               #size-cells =<0>;
                               ti、hwmods ="i2c3";
                               reg =<0x19c000 0x1000>;
                               中断=<30>;
                       };
                       i2c4:I2C@19e000{
                               兼容="ti、OMAP4-i2c";
                               #address-cells =<1>;
                               #size-cells =<0>;
                               ti、hwmods ="i2c4";
                               reg =<0x19e000 0x1000>;
                               中断=<31>;
                       };

我遇到了类似的错误

                        Platform 4819c000.i2c:无法查找 hwmod 'i2c3'
[0.279043]   platform 4819e000.i2c:无法查找 hwmod 'i2c4'
[0.404691]   OMAP_i2c 4819c000.i2c:_od_fail_runtime_resume:FIXME:缺少 hwmod/OMA_dev 信息
[0.413820]   omap_i2c 4819e000.i2c:_od_fail_runtime_resume:FIXME:缺少 hwmod/OMAP-dev 信息

此致、

Raj M

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Raj、

    I2C2连接到摄像头传感器、因此由 M3内核而不是 A8控制。
    除非您编写一个特殊的软件来管理多个主器件(主机)、否则 I2C2在 Linux 端保持不变是理想之选。

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Ravikiran:

    我知道我们无法同时使用 i2c by M3内核和 A8。
    我们不想在 i2c2上使用摄像头。 我们只想在 A8侧控制 i2c2 &i2c3。
    在上述帖子中,我甚至无法注册 i2c 总线?

    'i2c2'和'i2c3'控制器的 ti、hwmod 是什么?

    此致、
    Raj M
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我添加了 ti_tools/IPNC_PSP_Arago/kernel/arch/arm/mach-OMAP2/omap_hwmod_81xx_data.c

    我在 ti81xx_hwmod_opc_ifs_dm38x、dm814x_hwmod_opc_IFS 中添加结构

    静态结构 omap_hwmod dm81xx_i2c3_hwmod ={
    .name ="i2c3"、
    clkdm_name ="alwin_l3s_clkdm"、
    main_clk ="i2c3_fclk"、
    .prcm ={
    .OMAP4 ={
    clkctrl_fs = DM81XX_CM_ALWON_I2C_0_CLKCTRL、
    .modulemode = MODULEMODE_SWCTRL、
    }、
    }、
    .class =&i2c_class、
    };

    静态结构 omap_hwmod_opc_if dm81xx_l4_ls_i2c3 ={
    .master =&dm81xx_L4_ls_hwmod、
    .slave =&dm81xx_i2c3_hwmod、
    .clk ="sysclk6_ck"、
    .user = OCP_USER_MPU、
    };

    我还添加了 ti_tools/IPNC_PSP_Arago/kernel/drivers/clk/ti/clk-814x.c
    DT_CLK (NULL、"i2c3_fck"、"i2c3_fck")、


    日志:
    [0.382004] OMAP_i2c 48028000.i2c:总线0 rev0.11、频率为400kHz
    [0.388613] omap_i2c 4802a000.i2c:100kHz 时的总线1 rev0.11
    [0.395084] OMAP_i2c 4819c000.i2c:总线2 rev0.11、频率为400kHz


    它会崩溃
    欢迎来到 Arago 2016.05!

    [1.861454] systemd[1]:将主机名设置为 。
    [2.047787]未处理故障:在0xf902a02c 处对非线性获取(0x1028)执行外部中止
    [2.055498] PgD = c0004000
    [2.058218][f902a02c]* PgD=48011452 (BAD)
    [2.062265]内部错误:1028 [#1] ARM
    [2.066465]链接的模块:
    [2.069545] CPU:0 PID:9 Comm:kwork/0:1未被污染4.4.12 #7
    [2.07564]硬件名称:通用 TI81xx (平展器件树)
    [2.081800]工作队列:PM Pm_runtime_work
    [2.085834]任务:c493e000 ti:c4940000 task.ti:c4940000
    [2.091266] PC 处于 OMAP-i2c_runtime _suspend+0x24/0x9C
    [2.096514] LR 位于0xf902a02c
    [2.099671] PC:[ ] LR:[ ] PSR:a00e0013
    [2.099671] sp:c4941e38 IP:c0507578 FP:c4941e4c
    [2.111199 r10:c06d9ac0 r9:00000008 r8:00000000
    [2.116446] r7:c06d9ac0 r6:0000000a r5:c00202a4 r4:c4919210
    [2.123002] r3:c49a2410 r2:f902a000 r1:00000000 r0:c4919210
    [2.129560]标志:模式 SVC_32 ISA ARM 段内核上 FIQ 上的 NzCv IRQ
    [2.136902]控制:10c5387d 表:8257c019 DAC:00000055
    [2.142673]进程 kwork/0:1 (pid:9、栈限制= 0xc4940208)
    [2.148880]堆栈:(0xc4941e38至0xc4942000)

    此致、
    Raj M

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、

    当我们为 i2c1和 i2c2设置"status=disabled"时
    现在我可以访问 i2c3和 i2c4

    [0.328938] omap_i2c 4819c000.i2c:总线2 rev0.11、频率为400kHz
    [0.335587] OMAP_i2c 4819e000.i2c:总线3 rev0.11、频率为400kHz

    在 A8侧使用所有4 i2c 控制器是否有任何限制?

    此致、
    Raj M
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、

    有更新吗?

    此致、
    Raj M