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.

[参考译文] AM620-Q1:通过 J1 连接器向 SK-AM62-LP 添加了 CSI-2 摄像头支持

Guru**** 2445440 points
Other Parts Discussed in Thread: SK-AM62-LP

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1541760/am620-q1-adding-csi-2-camera-support-to-sk-am62-lp-via-j1-connector

器件型号:AM620-Q1
主题中讨论的其他器件:SK-AM62-LP

工具/软件:

尊敬的团队:

我们使用的是 SK-AM62-LP 开发套件 希望增加对的支持 J1 连接器来建模 CSI-2 摄像头

我们有一个来自不同器件的参考设备树 Blob (DTB)。
我们可以k3-am62-lp-sk.dts根据参考 dtb 直接修改、
是否有推荐的方法或工具为我们的电路板生成合适的器件树源 (DTS)?

此致、
Gopal Sharma

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

    尊敬的 Gopal:

    如果你有一个 DTB 从不同的设备,你可以把它反编译到 dts 并把它作为一个参考. 您可以将摄像头配置从参考 DTS 重复使用到  k3-am62-lp-sk.dts。这是一种方法。

    理想的方法是您可以应用摄像机设备树叠加。

    例如: — 请参阅 OV5640 覆盖层: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-csi2-tevi-ov5640.dtso?h=ti-linux-6.12.y。 您应该能够重复使用此覆盖层、并且只能根据您的摄像头更改 I2C 地址和“兼容“属性。

    注意:您可以参阅以下链接、以创建 并应用摄像头设备树叠加层。

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/latest/exports/docs/linux/Foundational_Components /内核/Camera/CSI2RX.html Kernel_Drivers

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

    尊敬的 Dilna K:

    我们使用 OV2312 参考驱动程序作为基础集成了 OV2311 驱动程序。 驱动程序探测成功、但我们观察到使用的内存分配devm_kzalloc失败、而使用的内存分配kzalloc按预期工作。

    devm_kzalloc在这种情况下可能失败的具体原因是否存在? 另外、是否必须使用devm_kzalloc、或者是否可以继续kzalloc手动清理?

    任何指导或建议的解决方案都将不胜感激。

    谢谢、
    Gopal Sharma

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

    您好、Gopal、

    想添加对的支持 J1 连接器来建模 CSI-2 摄像头 [/报价]

    只是为了澄清。 您能否分享 SK-AM62-LP 的图片并圈出 J1 连接器? 我只是想确保我明白你的意思。 我不太喜欢 SK-AM62-LP、

    devm_kzalloc在此上下文中可能失败的具体原因是什么? 此外、是否必须使用devm_kzalloc、或者是否可以继续kzalloc手动处理清理?

    devm_kzalloc 是平台设备驱动程序框架中的 kzalloc。 kzalloc 成功后、devm_kzalloc 仍可能失败。  devm_kzalloc() 需要一个有效的 struct device 指针作为其第一个参数。  分配与此器件相关联、并在器件解除绑定或删除后自动释放。  如果父设备未正确初始化或处于资源分配受限的状态、 devm_kzalloc() 则可能会失败。  kzalloc()另一方面、是一个独立的分配、它的基本操作不依赖于设备上下文。  

    因此,我会检查传递给 devm_kzalloc () 的第一个参数是否有效: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/media/i2c/ov2312.c?h=ti-linux-6.1.y#n604

    此致、

    建中

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

    尊敬的建中:

    感谢您的支持。

    devm_kzalloc执行一些代码清理后问题已解决。 现在在地址处检测到设备(摄像头模块 ov2311) 0x54 在 SK-AM62-LP 上(默认不存在此模块的驱动程序)。 在 Raspberry Pi 上、检测到同一器件 0x60 (此模块已提供驱动程序)。

    但是、在读取寄存器时、我们只得到 0xFF

    是否需要任何特定的 I2C 配置?
    我们已使用驱动程序和对此进行了测试i2cdump

    请提出任何可能的解决方案。

    连接器的图像是:-


    我们遵循以下链接中提供的 OV2311 建议:
    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1535894/am620-q1-sample-device-tree-source-dts-for-ov2312-using-2-lane-mipi-csi-2-interface-on-sk-am62-lp?tisearch=e2e-sitesearch&keymatch=%25252520user%2525253A613007# 

    此致、
    Gopal Sharma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid=“613007" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1541760/am620-q1-adding-csi-2-camera-support-to-sk-am62-lp-via-j1-connector/5949271

    devm_kzalloc执行一些代码清理后问题已解决。 现在在地址处检测到设备(摄像头模块 ov2311) 0x54 在 SK-AM62-LP 上(默认不存在此模块的驱动程序)。 在 Raspberry Pi 上、检测到同一器件 0x60 (此模块已提供驱动程序)。

    [/报价]

    同一摄像头模块应具有相同的 I2C 地址。 摄像头的数据表中看到的 I2C 地址是什么?

    您如何将摄像头连接到 AM62 板? 您会不会介意分享图片?

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

      AM620-Q1 继续讨论:SK-AM62-LP 问题 CSI-2 I2C 与 OV2311 SCCB 协议的连接始终从芯片 ID (0x300A) 读取 0x00。 

    关闭这个。