cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
joseer
Voyager
Voyager
756 Views
Registered: ‎07-06-2016

VPSS IP config from user space

Jump to solution

Hello,

I need to use the VPSS IP core in color correction mode. In my design (for another issues) I have not a media0 device create so I can't use the v4l2 drivers to customize the IP.

Would it be possible to access to the control registers using devmem or UIO driver from user space? or only can it be used within a proper v4l2 pipeline framework?

Thanks in advance.

 

0 Kudos
1 Solution

Accepted Solutions
joseer
Voyager
Voyager
668 Views
Registered: ‎07-06-2016

I'll test it and I'll get back with the result.

Edit:

I did test the next IP's successfully using uio:

VPSS color mode. (I've only checked registers read/write and it did work ok. I'm finally not using it in my design so I haven't tested functionality)

Gamma (fully working)

Sensor demosaic (fully working)

 

View solution in original post

5 Replies
sandeepg
Moderator
Moderator
702 Views
Registered: ‎04-24-2017

Hi @joseer ,

We haven't tested VPSS from use space and can't guarantee it works out of box. But some tips so you can debug.

 

When media device (/dev/media0) not created

  1. If you do not see a media device (/dev/media0 in the single pipeline case) the frequently common reasons are: video DMA element (FBWR or VDMA) not probing successfully, video device not being created, sub-devices not being registered.
  2. If all of the above have happened correctly and you still don't see a media node, that could be due to a incorrect graph.
  3. Each port in a sub-device describes whether it is a sink or a source.
  4. If the pad is a sink pad, it also has a reference to the source pad that feeds it, or if it is a source then it also has a phandle to the sink that it is connected to.
  5. If you have circular or incorrect phandles in describing this media "graph", you could end up with no media device.
Thanks,
Sandeep
PetaLinux Yocto | Embedded SW Support

---------------------------------------------------------------------------
Don’t forget to Reply, Kudo, and Accept as Solution.
---------------------------------------------------------------------------
0 Kudos
florentw
Moderator
Moderator
683 Views
Registered: ‎11-09-2015

Hi @sandeepg 

The VPSS might also not appear if you are not in one of the 2 supported modes (scaler only or Color Space Conversion only).

@joseer 

I am not sure what configuration you are using for the VPSS. As mentioned, using the user space is not supported.

But with that say, if you follow careffuly the AXI4-Lite transactions from the baremetal example design, it should work.

Regards


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
joseer
Voyager
Voyager
675 Views
Registered: ‎07-06-2016

Hi @sandeepg , @florentw ,

Thanks for the answers, and help. Unfortunately in my design I can't use the v4l2 drivers because I'm already using the a mem2mem framework in order to send video frames from PS to PL and back to PS. The pipeline I've got already working is:

Frame read -> sensor demosaic  -> frame write

I'm able to access and write to the sensor demosaic IP registers using devmem and this IP works, so I'm assuming that I should be able to use the UIO driver to do the config. (I haven't test it yet though), so I'd like to do the same with the VPSS IP (use UIO to setup the registers) and the new pipeline would be:

Frame read -> sensor demosaic -> VPSS (color mode) -> frame write

@florentw , if I understood correctly, if I'm using UIO driver for VPSS register access and follow the baremetal example transactions should it work, right?

0 Kudos
florentw
Moderator
Moderator
672 Views
Registered: ‎11-09-2015

Hi @joseer 

@florentw , if I understood correctly, if I'm using UIO driver for VPSS register access and follow the baremetal example transactions should it work, right?

> Yes it should. But once again, this is not supported as it was never tested


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
joseer
Voyager
Voyager
669 Views
Registered: ‎07-06-2016

I'll test it and I'll get back with the result.

Edit:

I did test the next IP's successfully using uio:

VPSS color mode. (I've only checked registers read/write and it did work ok. I'm finally not using it in my design so I haven't tested functionality)

Gamma (fully working)

Sensor demosaic (fully working)

 

View solution in original post