-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsubmodule_script.txt
More file actions
148 lines (137 loc) · 5.26 KB
/
submodule_script.txt
File metadata and controls
148 lines (137 loc) · 5.26 KB
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
This imports the 42 following repositories that were git submodules.
They are imported at the remote origin/master commit, history is preserved where possible.
Only software/test-coreip had a diff from origin/master to the submodule commit, and it was a comment change.
The (old) individual example repos can be marked as 'archived' in github so that they become read-only.
software/hello
software/example-itim
software/software-interrupt
software/timer-interrupt
software/local-interrupt
software/return-fail
software/return-pass
software/example-pmp
software/example-spi
software/empty
software/sifive-welcome
software/dhrystone
software/multicore-hello
software/example-user-mode
software/example-user-syscall
software/coremark
software/test-coreip
software/example-rtc
software/example-watchdog
software/cflush
software/plic-interrupts
software/clic-selective-vector-interrupts
software/clic-hardware-vector-interrupts
software/local-vector-interrupts
software/csr
software/minimal-boot
software/uart-interrupt
software/atomics
software/example-i2c
software/example-pwm
software/clic-nested-interrupts
software/mem-latency
software/example-hpm
software/example-freertos-blinky
software/example-freertos-minimal
software/clic-nonvector-interrupts
software/example-freertos-pmp-blinky
software/example-buserror
software/example-hca-metal
software/example-l2pm
software/example-l2pf
software/example-lim
The PR branch was generated by this script:
#!/bin/bash
set -x
set -e
function convertSubmoduleToSubtree () {
local path=$1
local remoteurl=$2
local remotename=$(basename $remoteurl .git)
local branch=$3
git rm $path
git commit -m "Remove submodule '$path' from '$remoteurl'"
git remote add $remotename $remoteurl
git subtree add --prefix=$path $remotename $branch
}
git clone git@github.com:sifive/freedom-e-sdk
cd freedom-e-sdk
git config -f.gitmodules --get-regexp 'submodule.*.path' | cut -d' ' -f2 | grep '^software/' | \
while read -r path ; do
remoteurl=$(git config -f.gitmodules --get-regexp submodule.${path}.url | cut -d' ' -f2-)
commit=$(git ls-tree HEAD $path | cut -f1 | cut -d' ' -f3)
convertSubmoduleToSubtree $path $remoteurl master # master instead of $commit as that's ok today
done
for a in $(find software -name .gitignore) ; do git rm $a ; done
git commit -m "Remove .gitignore files in software/"
Differences from current submodule pointers compared to master branch
$ git clone git@github.com:sifive/freedom-e-sdk
$ cd freedom-e-sdk
$ git submodule foreach '[[ $sm_path =~ software/.* ]] && git diff origin/master || true'
Entering 'FreeRTOS-metal'
Entering 'doc/html'
Entering 'freedom-devicetree-tools'
Entering 'freedom-metal'
Entering 'scl-metal'
Entering 'scripts/cmsis-svd-generator'
Entering 'scripts/devicetree-overlay-generator'
Entering 'scripts/elf2hex'
Entering 'scripts/esdk-settings-generator'
Entering 'scripts/ldscript-generator'
Entering 'scripts/openocdcfg-generator'
Entering 'software/atomics'
Entering 'software/cflush'
Entering 'software/clic-hardware-vector-interrupts'
Entering 'software/clic-nested-interrupts'
Entering 'software/clic-nonvector-interrupts'
Entering 'software/clic-selective-vector-interrupts'
Entering 'software/coremark'
Entering 'software/csr'
Entering 'software/dhrystone'
Entering 'software/empty'
Entering 'software/example-buserror'
Entering 'software/example-freertos-blinky'
Entering 'software/example-freertos-minimal'
Entering 'software/example-freertos-pmp-blinky'
Entering 'software/example-hca-metal'
Entering 'software/example-hpm'
Entering 'software/example-i2c'
Entering 'software/example-itim'
Entering 'software/example-l2pf'
Entering 'software/example-l2pm'
Entering 'software/example-lim'
Entering 'software/example-pmp'
Entering 'software/example-pwm'
Entering 'software/example-rtc'
Entering 'software/example-spi'
Entering 'software/example-user-mode'
Entering 'software/example-user-syscall'
Entering 'software/example-watchdog'
Entering 'software/hello'
Entering 'software/local-interrupt'
Entering 'software/local-vector-interrupts'
Entering 'software/mem-latency'
Entering 'software/minimal-boot'
Entering 'software/multicore-hello'
Entering 'software/plic-interrupts'
Entering 'software/return-fail'
Entering 'software/return-pass'
Entering 'software/sifive-welcome'
Entering 'software/software-interrupt'
Entering 'software/test-coreip'
iff --git a/README.md b/README.md
index f495010..9feb06e 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,3 @@
# test-coreip
Assembly test code which executes instructions and checks for expected results.
-The framework in this test allows functionality from https://github.com/riscv/riscv-tests to be used directly within the top level source file and executed in RTL Simulation or on the Arty FPGA board, where, upon completion, it will retur
n the appropriate test finisher code to demonstrate pass or fail functionality.
+The tests are designed to work on SiFive CPU designs in RTL simulation or on the Arty FPGA board.
Entering 'software/timer-interrupt'
Entering 'software/uart-interrupt'