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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b399ee4c1b8351d8fa4cee70481f86ae8cd57de69c8ae13a8c96f7ff5775bf9e
4
- data.tar.gz: 60a1823aff88c501b169a26b07a4d5c6de517c58bedda449cb189553689939da
3
+ metadata.gz: bd15e69be465453cd575634e5ece39bf72ea58c1440f34fea544da421a319b87
4
+ data.tar.gz: 1314d65d5f8330d7c24ef59fbf26608a61df9d001bae0a72e5077a888fdee149
5
5
  SHA512:
6
- metadata.gz: 4ec8eb5d2530edf0b259d3aa834629bfbca20b96ada266bd398e020bb7b1b882d4869441972a538d91e6789d3abf6b6fb530edefed68097a252217d7ddd5982d
7
- data.tar.gz: d200cc98d56717983494074c2633cb48080633544213c16168ee7944af078d0e93bf08ea9fcbe2a7ba86e8960e5abe2c50de684586058e8697196ace9ce1f13f
6
+ metadata.gz: 22db0093fb1012b2bc0b93d349df06c04a0859914de886ac92290d2f602a754b0cabb3f4e284ecf88b1a233065fc8abc84a51959f1faeb23382326f66ecabfc5
7
+ data.tar.gz: 4adbf17759b6f65caff38fc7589582ddc41069183bbc2d9a3728cd1be2bbe9774ca03e8af5c0ca36444c8e4d06d66db6e64c170f6b995b77c46ef7432e71e39f
data/config/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module OrigenSWD
2
2
  MAJOR = 1
3
3
  MINOR = 1
4
- BUGFIX = 1
4
+ BUGFIX = 2
5
5
  DEV = nil
6
6
 
7
7
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
@@ -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
- def receive_acknowledgement
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
- swd_dio.assert!(1)
183
- swd_dio.assert!(0)
184
- swd_dio.assert!(0)
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.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-03-15 00:00:00.000000000 Z
11
+ date: 2019-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: origen