origen_swd 1.1.1 → 1.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/config/version.rb +1 -1
- data/lib/origen_swd/driver.rb +24 -5
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bd15e69be465453cd575634e5ece39bf72ea58c1440f34fea544da421a319b87
|
4
|
+
data.tar.gz: 1314d65d5f8330d7c24ef59fbf26608a61df9d001bae0a72e5077a888fdee149
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 22db0093fb1012b2bc0b93d349df06c04a0859914de886ac92290d2f602a754b0cabb3f4e284ecf88b1a233065fc8abc84a51959f1faeb23382326f66ecabfc5
|
7
|
+
data.tar.gz: 4adbf17759b6f65caff38fc7589582ddc41069183bbc2d9a3728cd1be2bbe9774ca03e8af5c0ca36444c8e4d06d66db6e64c170f6b995b77c46ef7432e71e39f
|
data/config/version.rb
CHANGED
data/lib/origen_swd/driver.rb
CHANGED
@@ -68,7 +68,7 @@ module OrigenSWD
|
|
68
68
|
def read(ap_dp, reg_or_val, options = {})
|
69
69
|
addr = extract_address(reg_or_val, options.merge(use_reg_or_val_if_you_must: true))
|
70
70
|
send_header(ap_dp, 1, addr) # send read-specific header (rnw = 1)
|
71
|
-
receive_acknowledgement
|
71
|
+
receive_acknowledgement(options)
|
72
72
|
receive_payload(reg_or_val, options)
|
73
73
|
swd_dio.drive(0)
|
74
74
|
end
|
@@ -177,11 +177,30 @@ module OrigenSWD
|
|
177
177
|
end
|
178
178
|
|
179
179
|
# Waits appropriate number of cycles for the acknowledgement phase
|
180
|
-
|
180
|
+
# @param confirm [Symbol] Indicates what type of acknowledgement confirmation should be used. Options are:
|
181
|
+
# * [:ignore, :none, :skip] -> Ignore the acknowledgement completely.
|
182
|
+
# * [:failure, :fail, :error] -> Verify that the acknowledgement failured; that is,
|
183
|
+
# * [:success] (Default) -> Verify the acknowledgement as normal.
|
184
|
+
# @param options [Hash] Placeholder for other/future options.
|
185
|
+
# @raise [RuntimeError] When an unrecongized :confirm option is given.
|
186
|
+
def receive_acknowledgement(confirm: :success, **options)
|
181
187
|
wait_trn
|
182
|
-
|
183
|
-
|
184
|
-
|
188
|
+
if [:ignore, :none, :skip].include?(confirm)
|
189
|
+
log('Ignoring Acknowledgement Phase')
|
190
|
+
tester.cycle(repeat: 3)
|
191
|
+
elsif [:failure, :fail, :error].include?(confirm)
|
192
|
+
log('Confirming Error Encountered During Acknowledgement Phase')
|
193
|
+
swd_dio.assert!(0)
|
194
|
+
swd_dio.assert!(0)
|
195
|
+
swd_dio.assert!(1)
|
196
|
+
elsif confirm == :success
|
197
|
+
log('Confirming Success During Acknowledgement Phase')
|
198
|
+
swd_dio.assert!(1)
|
199
|
+
swd_dio.assert!(0)
|
200
|
+
swd_dio.assert!(0)
|
201
|
+
else
|
202
|
+
Origen.app!.fail!(message: "OrigenSWD: Origen SWD does not know how to confirm :#{confirm}")
|
203
|
+
end
|
185
204
|
swd_dio.dont_care
|
186
205
|
end
|
187
206
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: origen_swd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ronnie Lajaunie
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-08-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: origen
|