summaryrefslogtreecommitdiff
path: root/src/pc80
diff options
context:
space:
mode:
Diffstat (limited to 'src/pc80')
-rw-r--r--src/pc80/usbdebug_direct_serial.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/pc80/usbdebug_direct_serial.c b/src/pc80/usbdebug_direct_serial.c
new file mode 100644
index 0000000000..e795349a22
--- /dev/null
+++ b/src/pc80/usbdebug_direct_serial.c
@@ -0,0 +1,25 @@
+#include <part/fallback_boot.h>
+#include "../lib/usbdebug_direct.c"
+static void early_usbdebug_direct_init(void)
+{
+ struct ehci_debug_info *dbg_info =
+ (struct ehci_debug_info *)(DCACHE_RAM_BASE + DCACHE_RAM_SIZE - sizeof (struct ehci_debug_info));
+
+ usbdebug_direct_init(EHCI_BAR, EHCI_DEBUG_OFFSET, dbg_info);
+}
+void usbdebug_direct_tx_byte(unsigned char data)
+{
+ struct ehci_debug_info *dbg_info;
+ dbg_info = (struct ehci_debug_info *)(DCACHE_RAM_BASE + DCACHE_RAM_SIZE - sizeof (struct ehci_debug_info)); // in Cache
+ if (dbg_info->ehci_debug) {
+ dbgp_bulk_write_x(dbg_info, &data, 1);
+ }
+}
+void usbdebug_direct_ram_tx_byte(unsigned char data)
+{
+ struct ehci_debug_info *dbg_info;
+ dbg_info = (struct ehci_debug_info *)((CONFIG_LB_MEM_TOPK<<10) - sizeof (struct ehci_debug_info)); //in RAM
+ if (dbg_info->ehci_debug) {
+ dbgp_bulk_write_x(dbg_info, &data, 1);
+ }
+}