Difference between revisions of "Add support for serial-only targets to Fuego"

From eLinux.org
Jump to: navigation, search
Line 15: Line 15:
  
 
Fuego already includes stubs for where to place the commands to perform execution and file transfer.
 
Fuego already includes stubs for where to place the commands to perform execution and file transfer.
Please see the file: fuego-core/engine/overlays/base/base-board.class,
+
Please, in see the file, the functions:
the functions ov_transport_get(), ov_transport_put() and ov_transport_cmd()
+
* fuego-core/engine/overlays/base/base-board.fuegoclass,
 +
** ov_transport_get()
 +
** ov_transport_put()
 +
** ov_transport_cmd()
 +
 
 +
All of these functions take multiple arguments.  In the case of get(), the
 +
first argument is the source, and subsequent arguments are the destinations.
 +
 
 +
''Note: This makes no sense - it should be all but last argument are sources, and last argument is the destination''
 +
 
 +
The first argument may contain a wildcard.
 +
 
 +
In the case of put(), all but the last argument are the sources, and the last argument is the destination.
 +
 
 +
In the case of cmd(), all arguments are passed as a single string to the target to execute.
 +
 
  
 
=== Details ===
 
=== Details ===

Revision as of 15:53, 22 April 2016

Summary
Add support for serial-only targets to Fuego
Proposer
Tim Bird

Description

Currently, the Fuego test system supports targets that have an ssh daemon running on the target. ssh is used for command execution and file transfer operations.

This project will consist of adding support to the Fuego test system for command execution, file transfer operations, and log retrieval for targets that only support a serial console.

It is envisioned that something like zmodem will be used on both host and target side to transfer files over the serial connection, and that command execution will be accomplished by just echoing the command to the shell on the serial console.

Fuego already includes stubs for where to place the commands to perform execution and file transfer. Please, in see the file, the functions:

  • fuego-core/engine/overlays/base/base-board.fuegoclass,
    • ov_transport_get()
    • ov_transport_put()
    • ov_transport_cmd()

All of these functions take multiple arguments. In the case of get(), the first argument is the source, and subsequent arguments are the destinations.

Note: This makes no sense - it should be all but last argument are sources, and last argument is the destination

The first argument may contain a wildcard.

In the case of put(), all but the last argument are the sources, and the last argument is the destination.

In the case of cmd(), all arguments are passed as a single string to the target to execute.


Details

  • add the lrzsz package to DockerFile container build script
  • add lrzsz package as a test to Fuego
    • This should allow it to be built for an arbitrary target, using the target SDK installed for Fuego
  • add appropriate commands in base-boards.class
  • make a test to verify that it is working
  • run Fuego test suite on a beaglebone, using the serial transport option

Related work

  • see the lrzsz package for Debian and Ubuntu
  • See the Fuego page on this wiki

Scope

I would expect this to take about 2 weeks, including test time.

Contractor Candidates

  • Cogent Embedded
  • others?

Comments