Starting wfd-server
Screen and OpenWF Display Server share the same graphic configuration file. Ensure that Screen and its associated libraries, along with the libraries associated with the OpenWF Display Server are available on your target.
Typically, you start the OpenWF Display Server (wfd-server) and Screen (screen) in the boot script of your system that's running QNX OS. Note that wfd-server and Screen put themselves into the background when they are ready.
Your Screen applications start after wfd-server, screen, and all the necessary drivers and filesystems are ready. For graphics applications that aren't using Screen, these can start after wfd-server and necessary drivers and filesystems; these applications have no dependency on screen.
Refer to the "Making an OS Image" and "Sample Buildfiles" sections of Building Embedded Systems for more information on how to start applications.
wfd-server
Start OpenWF Display Server services
Syntax:
wfd-server -c filename
[-e]
[-s]
[-u user_info]
[-v]
Runs on:
QNX OS
Options:
- -c filename
-
Use filename as the absolute pathname to the graphics configuration file for wfd-server to use.
Make sure you modify the configuration file by defining your WFD device as stated in the Configuring OpenWF Display Server section. All libraries that you specify in the khronos section need to reside in the same directory as the configuration file.
Ensure that you remove the alloc-config parameter from the winmgr configuration section.
An example of starting wfd-server:
where platform is the name of your target's platform (e.g., J721e)$ wfd-server -c /usr/lib/graphics/platform/graphics-wfd-server.conf
Note:The filename that you specify in this option for wfd-server must be the same file that you specify in the -c option when you start screen. - -e
-
Query the driver's WFD capabilities (depends on display hardware) for information (e.g., number of ports and pipelines), display this information, and exit. For example:
$ wfd-server -c /user/lib/graphics/platform/graphics-wfd-server.conf -e 4 port(s): [ 0]: port-id= 1 [ 1]: port-id= 2 [ 2]: port-id= 3 [ 3]: port-id= 4 13 pipeline(s): [ 0]: pipeline-id= 1 (pipeline-layer = 1). [ 1]: pipeline-id= 2 (pipeline-layer = 2). [ 2]: pipeline-id= 3 (pipeline-layer = 3). [ 3]: pipeline-id= 5 (pipeline-layer = 5). [ 4]: pipeline-id= 6 (pipeline-layer = 6). [ 5]: pipeline-id= 7 (pipeline-layer = 7). [ 6]: pipeline-id= 8 (pipeline-layer = 8). [ 7]: pipeline-id= 9 (pipeline-layer = 9). [ 8]: pipeline-id=10 (pipeline-layer = 10). [ 9]: pipeline-id=11 (pipeline-layer = 11). [10]: pipeline-id=12 (pipeline-layer = 12). [11]: pipeline-id=13 (pipeline-layer = 13). [12]: pipeline-id=14 (pipeline-layer = 14). 2 client(s). client with ID 1 owns the pipeline(s): 1 2 3 5 6 7 9 10 11 12 13 14 client with ID 2 owns the pipeline(s): 8
- -s
-
Skip calling wfdDestroyDevice(), wfdDestroyPort(), and wfdDestroyPipeline(). WFD drivers that are not wfd-server compliant may have issues with these functions. To clean up after the driver, a client can call the destroy functions directly, or wait for the default where wfd-server calls the destroy functions once the last client disconnects.
- A client can call the functions directly.
- wfd-server calls the destroy functions once the last client disconnects. This is the default.
- -u user_info
-
Switch to the specified user after initialization.
- -v
-
Increase verbosity.
Examples:
To run wfd-server and screen on your target system:
-
Run wfd-server from a shell. For example:
wfd-server -c /usr/lib/graphics/J721e/graphics-wfd-server.conf
-
Run screen with the same configuration file that you used to start wfd-server.
screen -c /usr/lib/graphics/J721e/graphics-wfd-server.conf