工具/软件:Linux
大家好、
我添加了 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)
当我们为 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