aboutsummaryrefslogtreecommitdiff
path: root/src/platforms/native/jtagtap.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/platforms/native/jtagtap.c')
-rw-r--r--src/platforms/native/jtagtap.c81
1 files changed, 0 insertions, 81 deletions
diff --git a/src/platforms/native/jtagtap.c b/src/platforms/native/jtagtap.c
deleted file mode 100644
index 8160be8..0000000
--- a/src/platforms/native/jtagtap.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * This file is part of the Black Magic Debug project.
- *
- * Copyright (C) 2011 Black Sphere Technologies Ltd.
- * Written by Gareth McMullin <gareth@blacksphere.co.nz>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/* This file implements the low-level JTAG TAP interface. */
-
-#include <stdio.h>
-
-#include "general.h"
-
-#include "jtagtap.h"
-
-int jtagtap_init(void)
-{
- gpio_set_mode(TMS_PORT, GPIO_MODE_OUTPUT_50_MHZ,
- GPIO_CNF_OUTPUT_PUSHPULL, TMS_PIN);
-
- /* Go to JTAG mode for SWJ-DP */
- for(int i = 0; i <= 50; i++) jtagtap_next(1, 0); /* Reset SW-DP */
- jtagtap_tms_seq(0xE73C, 16); /* SWD to JTAG sequence */
- jtagtap_soft_reset();
-
- return 0;
-}
-
-void jtagtap_reset(void)
-{
- volatile int i;
- gpio_clear(TRST_PORT, TRST_PIN);
- for(i = 0; i < 10000; i++) asm("nop");
- gpio_set(TRST_PORT, TRST_PIN);
- jtagtap_soft_reset();
-}
-
-void jtagtap_srst(void)
-{
- volatile int i;
- gpio_set(SRST_PORT, SRST_PIN);
- for(i = 0; i < 10000; i++) asm("nop");
- gpio_clear(SRST_PORT, SRST_PIN);
-}
-
-inline uint8_t jtagtap_next(uint8_t dTMS, uint8_t dTDO)
-{
- uint16_t ret;
-
- gpio_set_val(TMS_PORT, TMS_PIN, dTMS);
- gpio_set_val(TDI_PORT, TDI_PIN, dTDO);
- gpio_set(TCK_PORT, TCK_PIN);
- ret = gpio_get(TDO_PORT, TDO_PIN);
- gpio_clear(TCK_PORT, TCK_PIN);
-
- DEBUG("jtagtap_next(TMS = %d, TDO = %d) = %d\n", dTMS, dTDO, ret);
-
- return ret != 0;
-}
-
-
-
-#define PROVIDE_GENERIC_JTAGTAP_TMS_SEQ
-#define PROVIDE_GENERIC_JTAGTAP_TDI_TDO_SEQ
-#define PROVIDE_GENERIC_JTAGTAP_TDI_SEQ
-
-#include "jtagtap_generic.c"
-