summaryrefslogtreecommitdiff
path: root/tb/jtag_uart.hpp
diff options
context:
space:
mode:
authorAlejandro Soto <alejandro@34project.org>2023-10-05 06:31:27 -0600
committerAlejandro Soto <alejandro@34project.org>2023-10-05 13:07:57 -0600
commite2d82e8e18ebddc78a0c187c4b7501b9f3aaa9c5 (patch)
treeeb72ed72e33f3a5ef3d9843ddcff624156177647 /tb/jtag_uart.hpp
parent59caca686d4d7798b617ee2a9f9d4c5d1d27b8ff (diff)
tb: move most C++ source files to tb/top/conspiracion
Diffstat (limited to 'tb/jtag_uart.hpp')
-rw-r--r--tb/jtag_uart.hpp43
1 files changed, 0 insertions, 43 deletions
diff --git a/tb/jtag_uart.hpp b/tb/jtag_uart.hpp
deleted file mode 100644
index 3b8e7e2..0000000
--- a/tb/jtag_uart.hpp
+++ /dev/null
@@ -1,43 +0,0 @@
-#ifndef TALLER_JTAG_UART_HPP
-#define TALLER_JTAG_UART_HPP
-
-#include <cstdint>
-
-#include "avalon.hpp"
-
-namespace taller::avalon
-{
- class jtag_uart : public slave
- {
- public:
- jtag_uart(std::uint32_t base) noexcept;
- ~jtag_uart() noexcept;
-
- virtual void tick() noexcept final override;
-
- inline virtual void bail() noexcept final override
- {
- release();
- }
-
- virtual bool read(std::uint32_t addr, std::uint32_t &data) noexcept final override;
- virtual bool write(std::uint32_t addr, std::uint32_t data, unsigned byte_enable) noexcept final override;
-
- virtual bool irq() noexcept final override;
-
- void takeover() noexcept;
- void release() noexcept;
-
- private:
- unsigned countdown = 0;
- unsigned rx_avail = 0;
- unsigned rx_next = 0;
- bool ctrl_re = false;
- bool ctrl_we = false;
- bool ctrl_ac = true;
- bool took_over = false;
- std::uint8_t rx[64];
- };
-}
-
-#endif