diff options
author | Tim Newsome <tim@sifive.com> | 2017-02-06 20:15:34 -0800 |
---|---|---|
committer | Tim Newsome <tim@sifive.com> | 2017-02-06 20:15:34 -0800 |
commit | 1f65ba49ea665ceed2774a1a62ac32076e4d3025 (patch) | |
tree | f0352004b32a8176170a60ca269e8b4239bbe8cb /riscv/remote_bitbang.h | |
parent | 4695be7cea868b34082787d5728c35577d0c05d1 (diff) | |
download | riscv-isa-sim-1f65ba49ea665ceed2774a1a62ac32076e4d3025.zip riscv-isa-sim-1f65ba49ea665ceed2774a1a62ac32076e4d3025.tar.gz riscv-isa-sim-1f65ba49ea665ceed2774a1a62ac32076e4d3025.tar.bz2 |
Remove unnecessary circular buffer code.
Diffstat (limited to 'riscv/remote_bitbang.h')
-rw-r--r-- | riscv/remote_bitbang.h | 50 |
1 files changed, 2 insertions, 48 deletions
diff --git a/riscv/remote_bitbang.h b/riscv/remote_bitbang.h index c0aa7e0..289fbb3 100644 --- a/riscv/remote_bitbang.h +++ b/riscv/remote_bitbang.h @@ -5,45 +5,6 @@ #include "jtag_dtm.h" -template <typename T> -class circular_buffer_t -{ -public: - // The buffer can store capacity-1 data elements. - circular_buffer_t(unsigned int capacity) : data(new T[capacity]), - start(0), end(0), capacity(capacity) {} - circular_buffer_t() : start(0), end(0), capacity(0) {} - ~circular_buffer_t() { delete[] data; } - - T *data; - unsigned int start; // Data start, inclusive. - unsigned int end; // Data end, exclusive. - unsigned int capacity; // Size of the buffer. - unsigned int size() const; - bool empty() const { return start == end; } - bool full() const { return ((end+1) % capacity) == start; } - T entry(unsigned index) { return data[(start + index) % capacity]; } - - // Return size and address of the block of RAM where more data can be copied - // to be added to the buffer. - unsigned int contiguous_empty_size() const; - T *contiguous_empty() { return data + end; } - void data_added(unsigned int bytes); - - unsigned int contiguous_data_size() const; - T *contiguous_data() { return data + start; } - // Tell the buffer that some bytes were consumed from the start of the - // buffer. - void consume(unsigned int bytes); - - void reset(); - - T operator[](unsigned int i) const { return data[(start + i) % capacity]; } - - void append(const T *src, unsigned int count); - void append(T value); -}; - class remote_bitbang_t { public: @@ -59,18 +20,11 @@ private: int socket_fd; int client_fd; - circular_buffer_t<uint8_t> recv_buf; - circular_buffer_t<uint8_t> send_buf; // Check for a client connecting, and accept if there is one. void accept(); - // Read as much into recv_buf as possible. - void read(); - // Write as much of send_buf as possible. - void write(); - - // Process the input buffer. - void process_input(); + // Execute any commands the client has for us. + void execute_commands(); }; #endif |