cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
1,532 Views
Registered: ‎03-20-2019

SDI RX 3G Level B not working

I am using the SDI RX subsystem in an Ultrascale+ devices. I am able to correctly receive video with 12G, 6G, 3G Level A, HD and SD rates. However, 3G Level B is not working, e.g. 1920x1080p60 is being detected as 1920x1080@120Hz interlaced.

Looking through the driver for the standalone application, the problem seems to be in xv_sdirx_intr.c:

  • The status values seem to be correct:
    • XV_SDIRX_RX_ST352_0_OFFSET = 0x01004B8A (Indicating Level B)
    • XV_SDIRX_MODE_DET_STS_OFFSET = 0x00AA
      • IsLevelB3G = 1
      • Active Streams = 2
      • TMode = 3G
    • XV_SDIRX_TS_DET_STS_OFFSET = 0x0701
      • TRate = 7 (30 fps)
      • TFamily = 0 (ST 274)
      • TScan = 0 (Scan Interlaced)
  • At line 699 of xv_sdirx_intr.c, since it is detected as dual-link ST372, 30 FPS, 422, and 10-bit, it selects 1920x1080 at 120 FPS. 
  • At line 1042, since the transport stream is interlaced, it sets the video to interlaced (incorrect)

I am able to work around this by setting SdiStream->VmId = XVIDC_VM_1920x1080_60_P at line 699, and SdiStream->IsInterlaced = 0x00 at line 1042, and it works great.

What is the correct solution? It seems that all of the frame rates in that section are wrong?

Thanks,

Andy

Tags (1)
0 Kudos
16 Replies
ashokkum
Moderator
Moderator
1,465 Views
Registered: ‎04-09-2019

Hello andy.martin@videon-central.com ,

Thank You for sharing the details. I will check this internally with our engineering team and will get back to You.

With Regards,

Ashok.

0 Kudos
1,419 Views
Registered: ‎03-20-2019

Is there an update on this?

Thanks,

Andy

0 Kudos
stuart.vivian
Observer
Observer
1,371 Views
Registered: ‎03-26-2018

Hi @ashokkum andy.martin@videon-central.com ,

We have just come across this issue as well. Some of the equipment we are using can't be switched to 3G-Level A unfortunately and we know of many examples in the industry where this might cause us a problem when we put our product in users hands.

To add some information:

  • 2020.1 Tools (Vivado and Petalinux)
  • Seen on both ZCU106 eval board with supplied reference designs and on our own board where we compile everything from scratch.
  • VPID of source is 8A 4B 00 01 & 8A 4B 00 41 for the two parts of the dual link stream.
  • I get the same reported values from the SDI RX block registers as Andy.

media-ctl reports the following when in the problem state...

root@vcu_trd:~# media-ctl -p
Media controller API version 5.4.0

Media device information
------------------------
driver xilinx-video
model Xilinx Video Composite Device
serial
bus info
hw revision 0x0
driver version 5.4.0

Device topology
- entity 1: vcap_sdirx output 0 (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "a0030000.v_smpte_uhdsdi_rx_ss":0 [ENABLED]

- entity 5: a0030000.v_smpte_uhdsdi_rx_ss (1 pad, 1 link)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
pad0: Source
[fmt:UYVY10_1X20/1920x540@1000/60000 field:alternate]
[dv.query:out-of-range]
-> "vcap_sdirx output 0":0 [ENABLED]

... and if we run up a gstreamer pipeline we get the following error message...

ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Device '/dev/video0' does not support interleaved interlacing

An update on this problem would be much appreciated!

Stuart

0 Kudos
ashokkum
Moderator
Moderator
1,328 Views
Registered: ‎04-09-2019

Hello andy.martin@videon-central.com ,

Could you please help me out in knowing the following details,

1. What is the vivado version?

2. What is the source?

3. What is the sink?

4. What is the video resolution?

5. Have you tried to reproduce the same issue using our example design?

6. Have you noticed this issue with any other sources? 

kindly let me know the above details, so that I will try to get the respective solution for the specific vivado version.

Kind Regards,

Ashok.

0 Kudos
1,320 Views
Registered: ‎03-20-2019

Ashok,

Thanks for moving this forward:

  1. Vivado version 2020.1
  2. Have seen this on all 3G-SDI Level B sources that I have tried. Currently using Blackmagic Design Ultrastudio 4K Mini. Have also seen the problem with Blackmagic Design HDMI to SDI Mini-Converter.
  3. The sink is the XCZU4CG-1FBVB900E
  4. 1920x1080p60 using 3G-SDI Level B
  5. I currently do have have access to an EVK. @stuart.vivian comment shows that the problem exists on the ZCU106 with the example design.
  6. See #2.

Thanks!

Andy

0 Kudos
ashokkum
Moderator
Moderator
1,293 Views
Registered: ‎04-09-2019

Hi andy.martin@videon-central.com ,

Thank You for sharing the details.

@stuart.vivian verified the linux application at his end. Hope you are working with bare metal design. So, I want to know that, whether are you able to reproduce the same issue using our bare metal example designs.

Kind Regards,

Ashok.

0 Kudos
1,281 Views
Registered: ‎03-20-2019

@ashokkum ,

That is correct, we are using a standalone BSP. Our application uses the example design. I do not currently have access to an EVK, so I can't run the example on its own. I will see if there is an eval unit available.

Thanks,
Andy

0 Kudos
ashokkum
Moderator
Moderator
1,254 Views
Registered: ‎04-09-2019

Thank You andy.martin@videon-central.com 

I already working with engineering team regarding @stuart.vivian  case through an SR. most probably today I'll get an update regarding this case. Once, I have the update I will keep posting here.

Kind Regards,

Ashok.

0 Kudos
1,217 Views
Registered: ‎03-20-2019

Ashok,

Do you have any updates?

Thanks,

Andy

0 Kudos
ashokkum
Moderator
Moderator
1,194 Views
Registered: ‎04-09-2019

Hello andy.martin@videon-central.com ,

We are working on this issue with engineering team, through a CR against to this case. post this CR validation will release an answer record with a suitable patch to cover this issue.

Hope this information is helpful to you.

Kind Regards,

Ashok.

0 Kudos
1,179 Views
Registered: ‎03-20-2019

Thank you!

0 Kudos
ali88z
Participant
Participant
894 Views
Registered: ‎06-14-2019

Is there a solution now? I met same problem as vivian

0 Kudos
ashokkum
Moderator
Moderator
827 Views
Registered: ‎04-09-2019

Hello @ali88z ,

 please modify the condition

https://github.com/Xilinx/linux-xlnx/blob/master/drivers/media/platform/xilinx/xilinx-sdirxss.c#L1325

to the below one as, @stuart.vivian tried at his end and it worked for him.

 

if (byte1 == XST352_BYTE1_ST372_DL_3GB)

       format->field = V4L2_FIELD_NONE;

Please let me know, if you have any questions.

Kind Regards,

Ashok.

798 Views
Registered: ‎03-20-2019

@ali88z ,

This seems to be fixed in 2020.2.

Thanks,
Andy

ashokkum
Moderator
Moderator
355 Views
Registered: ‎04-09-2019

Hello andy.martin@videon-central.com & @stuart.vivian ,

I hope your issue was resolved, by upgrading the design to 2020.2 for bare metal solution. Where as for linux application, user needs to modify the code as I suggested above. So, kindly  mark the post as "Accept Solution" that helps for you. Because, it helps to others who were facing the same issue. I'm planning to write an AR, against this issue, Even that also helps to other customers facing this issue.

With Regards,

Ashok.

0 Kudos
322 Views
Registered: ‎03-20-2019

Ashok,

Actually, I found that this problem is not fixed in 2020.2 or 2021.1. In my test on 3/20, I was using a source that used Level-A instead of Level-B. I have attached the modified file that I am using, but I don't know if this is the "right" fix or not.

Thanks,

Andy

0 Kudos