Select one of the symbols to view example projects that use it.
 
Outline
#include "config.h"
#include "or1k_tap.h"
#include "or1k.h"
#include <jtag/jtag.h>
#define OR1K_XILINX_TAP_INST_USER1
or1k_tap_xilinx_bscan_init(struct or1k_jtag *)
xilinx_bscan_tap
or1k_tap_xilinx_bscan_register()
Files
loading...
SourceVuDevelopment ToolsOpenOCDsrc/target/openrisc/or1k_tap_xilinx_bscan.c
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
// SPDX-License-Identifier: GPL-2.0-or-later /*************************************************************************** * Copyright (C) 2013 by Sergio Chico * * sergio.chico@gmail.com * ***************************************************************************//* ... */ #ifdef HAVE_CONFIG_H #include "config.h" #endif #include "or1k_tap.h" #include "or1k.h" #include <jtag/jtag.h> #define OR1K_XILINX_TAP_INST_USER1 0x02 static int or1k_tap_xilinx_bscan_init(struct or1k_jtag *jtag_info) { LOG_DEBUG("Initialising Xilinx Internal JTAG TAP"); /* Put TAP into state where it can talk to the debug interface * by shifting in correct value to IR. *//* ... */ /* Ensure TAP is reset - maybe not necessary*/ jtag_add_tlr(); struct jtag_tap *tap = jtag_info->tap; struct scan_field field; uint8_t ir_value = OR1K_XILINX_TAP_INST_USER1; field.num_bits = tap->ir_length; field.out_value = &ir_value; field.in_value = NULL; jtag_add_ir_scan(tap, &field, TAP_IDLE); return jtag_execute_queue(); }{ ... } static struct or1k_tap_ip xilinx_bscan_tap = { .name = "xilinx_bscan", .init = or1k_tap_xilinx_bscan_init, ...}; int or1k_tap_xilinx_bscan_register(void) { list_add_tail(&xilinx_bscan_tap.list, &tap_list); return 0; }{ ... }
Details
Show:
from
Types: Columns:
Click anywhere in the source to view detailed information here...