origen_arm_debug 0.9.0 → 0.10.0.pre0

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
  SHA1:
3
- metadata.gz: f4a9f1dc701be4b75209634978ffff6e9c608ea6
4
- data.tar.gz: f4ac35a546afb37109a02b46fdd099cdb51c2b74
3
+ metadata.gz: 66853aab2d9e6fe3b32b0ac16c9ef5f64eb04bf1
4
+ data.tar.gz: 511bfce260da1acec74db03809663b1c8f811a4c
5
5
  SHA512:
6
- metadata.gz: 9bd87b22a6ba0fa200c94b42554cf365461f845f71823579069c986aedda124dcd9c225d0e5a1fab77bae6a1684fc579e7a82c6e2fdb9878bb58c286db0ea45e
7
- data.tar.gz: d1e8c9efbbd74db7d121a900781ba5e245473d8acb1bc78f1655dca5df9bb0937417bdbb173c8103708deb3963a5d7bb6b0aba3cf18b923f1839817b6f7923f2
6
+ metadata.gz: 527132a80c2ac9fe48695d7321d4121c88c8aea2e94ca6096b4f29dd7c7efddc3a19f1dcac3b1bb508d9c4165a3f70c0ed4028f24c12f9fbf7e84d79db072f3e
7
+ data.tar.gz: 6a433640fd0a47fa972056a1d1dbc9875cb800dd3263b77f487f56fdd02f46edeb46832e2c7e1b8f135ac3923964c19eabfb5d02066b7a4b0dbc486e8d8ca4fa
@@ -42,6 +42,7 @@ class OrigenARMDebugApplication < Origen::Application
42
42
  def before_deploy_site
43
43
  Dir.chdir Origen.root do
44
44
  system "origen examples -c"
45
+ system "origen specs -c"
45
46
  dir = "#{Origen.root}/web/output/coverage"
46
47
  FileUtils.remove_dir(dir, true) if File.exists?(dir)
47
48
  system "mv #{Origen.root}/coverage #{dir}"
data/config/version.rb CHANGED
@@ -1,8 +1,8 @@
1
1
  module OrigenARMDebug
2
2
  MAJOR = 0
3
- MINOR = 9
3
+ MINOR = 10
4
4
  BUGFIX = 0
5
- DEV = nil
5
+ DEV = 0
6
6
 
7
7
  VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
8
8
  end
@@ -34,6 +34,9 @@ module OrigenARMDebug
34
34
 
35
35
  add_reg :ir, 0x00, 4, data: { pos: 0, bits: 4 } # ARM-JTAG Instruction Register
36
36
 
37
+ add_reg :swd_dp, 0x00, 32, data: { pos: 0, bits: 32 } # SWD Register
38
+
39
+ # jtag-dp only
37
40
  add_reg :dpacc, 0x00, 35, rnw: { pos: 0 }, # DP-Access Register (DPACC)
38
41
  a: { pos: 1, bits: 2 },
39
42
  data: { pos: 3, bits: 32 }
@@ -42,7 +45,6 @@ module OrigenARMDebug
42
45
  a: { pos: 1, bits: 2 },
43
46
  data: { pos: 0, bits: 32 }
44
47
 
45
- # jtag-dp only
46
48
  add_reg :idcode, 0x00, 32, data: { pos: 0, bits: 32 } # Device ID Code Register (IDCODE)
47
49
  add_reg :abort, 0x00, 35, rnw: { pos: 0 }, # Abort Register (ABORT)
48
50
  a: { pos: 1, bits: 2 },
@@ -69,7 +71,7 @@ module OrigenARMDebug
69
71
  if protocol == :swd
70
72
  case name
71
73
  when :idcode, :ctrl_stat, :rdbuff, :wcr, :resend
72
- dpacc_access(name, 1, random, options)
74
+ dpacc_access(name, 1, data, options)
73
75
  when :abort, :ctrl_stat
74
76
  log.error "#{name} #{protocol.to_s.upcase}-DP register is write-only!"
75
77
  else
@@ -282,9 +284,22 @@ module OrigenARMDebug
282
284
  def acc_access_swd(addr, rwb, ap_dp, data, options = {})
283
285
  _name = options.delete(:name)
284
286
  if (rwb == 1)
285
- swd.read(ap_dp, addr, options)
287
+ reg(:swd_dp).address = addr
288
+ reg(:swd_dp).bits(:data).clear_flags
289
+ reg(:swd_dp).bits(:data).write(data)
290
+ _mask = options[:mask] || 0xFFFFFFFF
291
+ _store = options[:store] || 0x00000000
292
+ 0.upto(31) do |i|
293
+ reg(:swd_dp).bits(:data)[i].read if _mask[i] == 1
294
+ reg(:swd_dp).bits(:data)[i].store if _store[i] == 1
295
+ end
296
+ options = options.merge(size: reg(:swd_dp).size)
297
+ swd.read(ap_dp, reg(:swd_dp), options)
286
298
  else
287
- swd.write(ap_dp, addr, data, options)
299
+ reg(:swd_dp).bits(:data).write(data)
300
+ reg(:dpacc).address = addr
301
+ options = options.merge(size: reg(:swd_dp).size)
302
+ swd.write(ap_dp, reg(:swd_dp), reg(:swd_dp).data, options)
288
303
  end
289
304
  options = { w_delay: 10 }.merge(options)
290
305
  swd.swd_dio_to_0(options[:w_delay])
@@ -1,5 +1,9 @@
1
1
  Pattern.create do
2
2
  $dut_swd = $dut
3
+
4
+ $dut_swd.reg(:test).write!(0x0000FF01)
5
+ $dut.reg(:test).read(0xAAAAAAAA)
6
+
3
7
  $dut_swd.arm_debug.swj_dp.read_dp(:idcode, 0xba5eba11, mask: 0x00000000)
4
8
  $dut_swd.arm_debug.swj_dp.read_dp(:idcode, 0xba5eba11)
5
9
  $dut_swd.arm_debug.swj_dp.read_dp(:wcr, 0x00000000)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: origen_arm_debug
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.10.0.pre0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ronnie Lajaunie
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-29 00:00:00.000000000 Z
11
+ date: 2016-03-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: origen