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.

SK-AM62A-LP: 调试 IMX390、DS90UB953和 DS90UB954

Part Number: SK-AM62A-LP
Other Parts Discussed in Thread: DS90UB960-Q1, DS90UB953-Q1,

SDK版本是08_06_00_45

此版本内核下没有DS90UB954驱动,可否提供一下DS90UB954驱动代码

  • 可以用SDK里的DS90UB960 driver,可以用上 DS90UB954。

  • 需要改代码吗,还是直接用

  • 不需要修改,直接用。UB954寄存器和DS90UB960 driver兼容。

  • 加载不上ko

  • 是要编进内核吗还是编成ko也可以?

  • 你这个报错可以参考一下 blog.csdn.net/.../103233736

  • 报错我已经解决了,出现下面报错

    960驱动代码需要改什么东西吗

    设备树配置如下:

    &exp2 {
    p19-hog {
    /* P19 - CSI_SEL2 */
    gpio-hog;
    gpios = <19 GPIO_ACTIVE_HIGH>;
    output-low;
    line-name = "CSI_SEL2";
    };
    };

    &main_i2c2 {
    #address-cells = <1>;
    #size-cells = <0>;
    status = "okay";

    i2c-switch@71 {
    compatible = "nxp,pca9543";
    #address-cells = <1>;
    #size-cells = <0>;
    reg = <0x71>;

    cam0_i2c: i2c@1 {
    #address-cells = <1>;
    #size-cells = <0>;
    reg = <1>;

    ds90ub960_0: deser@3d {
    compatible = "ti,ds90ub960-q1";

    reg-names = "main", "ser0", "ser1", "ser2", "ser3";
    reg = <0x3d>, <0x44>, <0x45>, <0x46>, <0x47>;

    clocks = <&clk_fusion_25M_fixed>;

    i2c-alias-pool = /bits/ 16 <0x4a 0x4b 0x4c 0x4d 0x4e 0x4f>;

    data-rate = <1600000000>;

    #clock-cells = <0>;

    ds90ub960_0_ports: ports {
    #address-cells = <1>;
    #size-cells = <0>;

    /* CSI-2 */
    port@4 {
    reg = <4>;
    ds90ub960_0_csi_out: endpoint {
    clock-lanes = <0>;
    data-lanes = <1 2 3 4>;
    remote-endpoint = <&csi2_phy0>;
    };
    };
    };

    ds90ub960_0_atr: i2c-atr {
    #address-cells = <1>;
    #size-cells = <0>;
    };
    };
    };
    };
    };

    &csi0_port0 {
    status = "okay";

    csi2_phy0: endpoint {
    remote-endpoint = <&ds90ub960_0_csi_out>;
    clock-lanes = <0>;
    data-lanes = <1 2 3 4>;
    };
    };

    &ds90ub960_0_ports {
    #address-cells = <1>;
    #size-cells = <0>;

    /* FPDLink RX 0 */
    port@0 {
    reg = <0>;

    ds90ub960_fpd3_in: endpoint {
    remote-endpoint = <&ub953_out>;

    mode = <3>;
    bc-freq = <50000000>;

    serializer: remote-chip {
    compatible = "ti,ds90ub953-q1";
    clocks = <&ds90ub960_0>;

    gpio-controller;
    #gpio-cells = <2>;

    #clock-cells = <0>;
    ports {
    #address-cells = <1>;
    #size-cells = <0>;

    port@0 {
    reg = <0>;
    ub953_in: endpoint {
    remote-endpoint = <&sensor_out>;
    data-lanes = <0 1 2 3>;
    };
    };

    port@1 {
    reg = <1>;

    ub953_out: endpoint {
    remote-endpoint = <&ds90ub960_fpd3_in>;
    };
    };
    };
    };
    };
    };
    };

    &ds90ub960_0_atr {
    #address-cells = <1>;
    #size-cells = <0>;

    i2c@0 {
    reg = <0>;
    #address-cells = <1>;
    #size-cells = <0>;

    sensor@1a {
    compatible = "sony,imx390";
    reg = <0x1a>;

    clocks = <&serializer>;
    clock-names = "inck";
    assigned-clocks = <&serializer>;
    assigned-clock-rates = <27000000>;

    xclr-gpios = <&serializer 1 GPIO_ACTIVE_LOW>;
    error0-gpios = <&serializer 2 GPIO_ACTIVE_HIGH>;
    error1-gpios = <&serializer 3 GPIO_ACTIVE_HIGH>;
    comready-gpios = <&serializer 0 GPIO_ACTIVE_HIGH>;

    port {
    sensor_out: endpoint {
    remote-endpoint = <&ub953_in>;
    };
    };
    };
    };
    };

  • 您好,可以尽快看看吗,有点急

  • 您好,可以尽快看看吗,有点急

  • 现在i2c通了,把imx390.ko、ds90ub953.ko、ds90ub960.ko都加载上了

    但是media -p拓扑结构上只有解串器

    还需要配置什么东西吗

    拓扑如下:

    root@am62axx-evm:/opt/edgeai-gst-apps# media-ctl -p
    Media controller API version 5.10.168

    Media device information
    ------------------------
    driver j721e-csi2rx
    model TI-CSI2RX
    serial
    bus info platform:30102000.ticsi2rx
    hw revision 0x1
    driver version 5.10.168

    Device topology
    - entity 1: 30102000.ticsi2rx (7 pads, 7 links, 1 route)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev0
    routes:
    0/0 -> 1/0 [ACTIVE]
    pad0: Sink
    [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
    <- "cdns_csi2rx.30101000.csi-bridge":1 [ENABLED,IMMUTABLE]
    pad1: Source
    [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
    -> "30102000.ticsi2rx context 0":0 [ENABLED,IMMUTABLE]
    pad2: Source
    -> "30102000.ticsi2rx context 1":0 [ENABLED,IMMUTABLE]
    pad3: Source
    -> "30102000.ticsi2rx context 2":0 [ENABLED,IMMUTABLE]
    pad4: Source
    -> "30102000.ticsi2rx context 3":0 [ENABLED,IMMUTABLE]
    pad5: Source
    -> "30102000.ticsi2rx context 4":0 [ENABLED,IMMUTABLE]
    pad6: Source
    -> "30102000.ticsi2rx context 5":0 [ENABLED,IMMUTABLE]

    - entity 9: cdns_csi2rx.30101000.csi-bridge (5 pads, 2 links, 0 route)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev1
    pad0: Sink
    [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
    <- "ds90ub960 4-0030":4 [ENABLED,IMMUTABLE]
    pad1: Source
    [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
    -> "30102000.ticsi2rx":0 [ENABLED,IMMUTABLE]
    pad2: Source
    [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
    pad3: Source
    [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
    pad4: Source
    [stream:0 fmt:UYVY8_1X16/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]

    - entity 15: ds90ub960 4-0030 (6 pads, 1 link, 1 route)
    type V4L2 subdev subtype Unknown flags 0
    device node name /dev/v4l-subdev2
    routes:
    0/0 -> 4/0 [ACTIVE]
    pad0: Sink
    [stream:0 fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
    pad1: Sink
    pad2: Sink
    pad3: Sink
    pad4: Source
    [stream:0 fmt:UYVY8_2X8/640x480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range]
    -> "cdns_csi2rx.30101000.csi-bridge":0 [ENABLED,IMMUTABLE]
    pad5: Source

    - entity 26: 30102000.ticsi2rx context 0 (1 pad, 1 link, 0 route)
    type Node subtype V4L flags 0
    device node name /dev/video2
    pad0: Sink
    <- "30102000.ticsi2rx":1 [ENABLED,IMMUTABLE]

    - entity 32: 30102000.ticsi2rx context 1 (1 pad, 1 link, 0 route)
    type Node subtype V4L flags 0
    device node name /dev/video3
    pad0: Sink
    <- "30102000.ticsi2rx":2 [ENABLED,IMMUTABLE]

    - entity 38: 30102000.ticsi2rx context 2 (1 pad, 1 link, 0 route)
    type Node subtype V4L flags 0
    device node name /dev/video4
    pad0: Sink
    <- "30102000.ticsi2rx":3 [ENABLED,IMMUTABLE]

    - entity 44: 30102000.ticsi2rx context 3 (1 pad, 1 link, 0 route)
    type Node subtype V4L flags 0
    device node name /dev/video5
    pad0: Sink
    <- "30102000.ticsi2rx":4 [ENABLED,IMMUTABLE]

    - entity 50: 30102000.ticsi2rx context 4 (1 pad, 1 link, 0 route)
    type Node subtype V4L flags 0
    device node name /dev/video6
    pad0: Sink
    <- "30102000.ticsi2rx":5 [ENABLED,IMMUTABLE]

    - entity 56: 30102000.ticsi2rx context 5 (1 pad, 1 link, 0 route)
    type Node subtype V4L flags 0
    device node name /dev/video7
    pad0: Sink
    <- "30102000.ticsi2rx":6 [ENABLED,IMMUTABLE]

    root@am62axx-evm:/opt/edgeai-gst-apps#

  • 通过954读953的ID没读到

    没link上

  • 我需要咨询一下产品线工程师。

  • link上了

    但是拓扑不正确,如下。还需要设置什么东西吗

  • 能否回复一下下面的问题?

    Is your customer using the SK-AM62A-LP board, or their custom board? How do they connect IMX390 to the board? Which IMX390 module are they using?

  • 用的SK-AM62A-LP板子。imx390--->ds90ub953--->ds90ub954--->主控。          imx390摄像头模组内部自带isp,出来就是yuv数据

  • 这个有点急

  • 请看下面e2e工程师的回复。
    Thanks for providing the diagram. I was asking how they connected the camera to our SK-AM62A-LP board. Are they using the Fusion board or UB954-Q1 EVM? 

    如果着急的话,可以直接在e2e帖子上回复工程师。

  • UB954-Q1连到SK-AM62A-LP board

  • 前面我不是说了吗,这样连接

    imx390--->ds90ub953--->ds90ub954--->主控

  • 这有时差怎么弄啊,问题都没法解决,已经拖了一周了

  • 工程师已有回复,请查看。

    The UB954-Q1 EVM has two Samtec MIPI connectors. Which one are they using? I assume they have an E1 version of the SK-AM62A-LP which has a Samtec MIPI connector. Is that right?

    Would you mind asking them to provide a picture of their complete HW setup (camera, UB954-Q1 EVM, SK-AM62A, etc)? 

    Also just to confirm, their IMX390 camera module has integrated ISP, and the output is yuv data, so they won't need to use the ISP on AM62A. Is this correct?

  • 这有时差怎么弄呢,这问题没法解决

  • 我们一般是24小时之内给客户回复,如果复杂的问题,可能需要更长的时间。我看e2e的工程师已经在尽快回复您了。

    Ok. Thanks for the clarification. If you use J26, you'll need to populate the zero ohm resistors on the bottom of the board, as documented in the User's Guide, section 4.4 MIPI CSI-2 Output Signals.