diff options
| author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2014-01-11 19:22:09 -0600 |
|---|---|---|
| committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2014-01-11 19:22:09 -0600 |
| commit | 13aee3afa9400efaca8d3521390bd74d65dd7c48 (patch) | |
| tree | 1ae5e3c158455ce39b08b6f0ed473c66d20171fd /servers/fpga_server_lin/src/fpga_conn.cpp | |
| parent | 1eb48edeba028f17697ed4de52a69801eafa7e34 (diff) | |
| parent | 32b7b87d3dcd0d0f780fdfa8d5c2859bda8b175a (diff) | |
| download | ulab-13aee3afa9400efaca8d3521390bd74d65dd7c48.tar.gz ulab-13aee3afa9400efaca8d3521390bd74d65dd7c48.zip | |
Merge branch 'master' of http://scm.trinitydesktop.org/scm/git/remotelaboratory
Diffstat (limited to 'servers/fpga_server_lin/src/fpga_conn.cpp')
| -rw-r--r-- | servers/fpga_server_lin/src/fpga_conn.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/servers/fpga_server_lin/src/fpga_conn.cpp b/servers/fpga_server_lin/src/fpga_conn.cpp index a20cad9..e17f134 100644 --- a/servers/fpga_server_lin/src/fpga_conn.cpp +++ b/servers/fpga_server_lin/src/fpga_conn.cpp @@ -369,6 +369,9 @@ void FPGASocket::commandLoop() { if (m_stateImageRXCounter >= dsp_ram_size) { m_stateImageRXRequested = false; m_stateImageTXRequested = true; + + // Start user processing + write_gpmc(0x0a, read_gpmc(0x0a) | 0x01); } } else { @@ -398,6 +401,16 @@ void FPGASocket::commandLoop() { write_gpmc(0x05, buffer[read_offset+4]); read_offset = read_offset + 6; } + else if (buffer[read_offset+0] == 'R') { + write_gpmc(0x0c, read_gpmc(0x0c) | 0x01); + usleep(100); + write_gpmc(0x0c, read_gpmc(0x0c) & ~0x01); + read_offset = read_offset + 2; + } + else { + printf("[WARNING] Received invalid command '%c' from client! Dazed and confused, but continuing...\n", buffer[read_offset+0]); + read_offset = read_offset + 2; + } } if (m_stateImageTXRequested) { m_stateImageTXRequested = false; |
