origen_jtag 0.22.3 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1e408b1d8688221c536224742008b1e8816f175f7204a042f6227cfc92a3c938
4
- data.tar.gz: 8038f326e6d212978e7f21404319b1178c89d3ee12a01fca74f5abbaa0b9536e
3
+ metadata.gz: f35598ac42f1777161dd331813478d87b5743bf62129f5d1f2369566274458db
4
+ data.tar.gz: c253b56dbfbb7ab740506229529750a2cabbc4eab91ca0cb1658e90711ece80f
5
5
  SHA512:
6
- metadata.gz: db3581cd8d7d7cababf02df48b7f8e3ad7478f657c9c88e8db68e7de88fa95693c107a06e0bc1bf6b7ad7bb0d4d47009283de60744d921db03a36f20347e4b3e
7
- data.tar.gz: fa0a8fa73da0f59d2ea3f4fd23a352022b8498c925c901709b7fcc41ac18bc77ce8992aacb4a842eebfaf5803f11e729052d073775abad31eaf3bc3649dbbcfd
6
+ metadata.gz: 1bf45ebff1da523a2f9d3e236895cca4c17919f120197cd7f931d0d7013079f628a2871a5735b32ddb7409a6159668b179af57471f72035bafd079a68c7ac209
7
+ data.tar.gz: 964c51ae9af8b23f381f63246cdd80cfb895a2f0ee387425ed39a5d4778ee82520c819bf4092dee7bd298800251a00720e7a8870e4e7992b97be212d031c883b
@@ -1,65 +1,65 @@
1
- class OrigenJTAGApplication < Origen::Application
2
-
3
- # This file contains examples of some of the most common configuration options,
4
- # to see a real production example from a large application have a look at:
5
- # sync://sync-15088:15088/Projects/common_tester_blocks/blocks/C90TFS_NVM_tester/tool_data/origen_v2/config/application.rb
6
-
7
- # This information is used in headers and email templates, set it specific
8
- # to your application
9
- config.name = "Origen JTAG"
10
- config.initials = "OrigenJTAG"
11
- # Force naming for gem, done here because JTAG will not automatically convert to
12
- # 'jtag' when OrigenJTAG is snakecased
13
- self.name = "origen_jtag"
14
- self.namespace = "OrigenJTAG"
15
- config.rc_url = "git@github.com:Origen-SDK/origen_jtag.git"
16
- config.release_externally = true
17
-
18
- # To enable deployment of your documentation to a web server (via the 'origen web'
19
- # command) fill in these attributes.
20
- config.web_directory = "git@github.com:Origen-SDK/Origen-SDK.github.io.git/jtag"
21
- #config.web_directory = "https://github.com/Origen-SDK/Origen-SDK.github.io.git/jtag"
22
- config.web_domain = "http://origen-sdk.org/jtag"
23
-
24
- config.semantically_version = true
25
-
26
- config.lint_test = {
27
- # Require the lint tests to pass before allowing a release to proceed
28
- run_on_tag: true,
29
- # Auto correct violations where possible whenever 'origen lint' is run
30
- auto_correct: true,
31
- # Limit the testing for large legacy applications
32
- #level: :easy,
33
- # Run on these directories/files by default
34
- #files: ["lib", "config/application.rb"],
35
- }
36
-
37
- # Ensure that all tests pass before allowing a release to continue
38
- def validate_release
39
- if !system("origen examples") #|| !system("origen specs")
40
- puts "Sorry but you can't release with failing tests, please fix them and try again."
41
- exit 1
42
- else
43
- puts "All tests passing, proceeding with release process!"
44
- end
45
- end
46
-
47
- # Run code coverage when deploying the web site
48
- def before_deploy_site
49
- Dir.chdir Origen.root do
50
- system "origen examples -c"
51
- dir = "#{Origen.root}/web/output/coverage"
52
- FileUtils.remove_dir(dir, true) if File.exists?(dir)
53
- system "mv #{Origen.root}/coverage #{dir}"
54
- end
55
- end
56
-
57
- # Deploy the website automatically after a production tag
58
- def after_release_email(tag, note, type, selector, options)
59
- command = "origen web compile --remote --api"
60
- Dir.chdir Origen.root do
61
- system command
62
- end
63
- end
64
-
65
- end
1
+ class OrigenJTAGApplication < Origen::Application
2
+
3
+ # This file contains examples of some of the most common configuration options,
4
+ # to see a real production example from a large application have a look at:
5
+ # sync://sync-15088:15088/Projects/common_tester_blocks/blocks/C90TFS_NVM_tester/tool_data/origen_v2/config/application.rb
6
+
7
+ # This information is used in headers and email templates, set it specific
8
+ # to your application
9
+ config.name = "Origen JTAG"
10
+ config.initials = "OrigenJTAG"
11
+ # Force naming for gem, done here because JTAG will not automatically convert to
12
+ # 'jtag' when OrigenJTAG is snakecased
13
+ self.name = "origen_jtag"
14
+ self.namespace = "OrigenJTAG"
15
+ config.rc_url = "git@github.com:Origen-SDK/origen_jtag.git"
16
+ config.release_externally = true
17
+
18
+ # To enable deployment of your documentation to a web server (via the 'origen web'
19
+ # command) fill in these attributes.
20
+ config.web_directory = "git@github.com:Origen-SDK/Origen-SDK.github.io.git/jtag"
21
+ #config.web_directory = "https://github.com/Origen-SDK/Origen-SDK.github.io.git/jtag"
22
+ config.web_domain = "http://origen-sdk.org/jtag"
23
+
24
+ config.semantically_version = true
25
+
26
+ config.lint_test = {
27
+ # Require the lint tests to pass before allowing a release to proceed
28
+ run_on_tag: true,
29
+ # Auto correct violations where possible whenever 'origen lint' is run
30
+ auto_correct: true,
31
+ # Limit the testing for large legacy applications
32
+ #level: :easy,
33
+ # Run on these directories/files by default
34
+ #files: ["lib", "config/application.rb"],
35
+ }
36
+
37
+ # Ensure that all tests pass before allowing a release to continue
38
+ def validate_release
39
+ if !system("origen examples") #|| !system("origen specs")
40
+ puts "Sorry but you can't release with failing tests, please fix them and try again."
41
+ exit 1
42
+ else
43
+ puts "All tests passing, proceeding with release process!"
44
+ end
45
+ end
46
+
47
+ # Run code coverage when deploying the web site
48
+ def before_deploy_site
49
+ Dir.chdir Origen.root do
50
+ system "origen examples -c"
51
+ dir = "#{Origen.root}/web/output/coverage"
52
+ FileUtils.remove_dir(dir, true) if File.exists?(dir)
53
+ system "mv #{Origen.root}/coverage #{dir}"
54
+ end
55
+ end
56
+
57
+ # Deploy the website automatically after a production tag
58
+ def after_release_email(tag, note, type, selector, options)
59
+ command = "origen web compile --remote --api"
60
+ Dir.chdir Origen.root do
61
+ system command
62
+ end
63
+ end
64
+
65
+ end
data/config/boot.rb CHANGED
@@ -1,24 +1,24 @@
1
- # This file is used to boot your plugin when it is running in standalone mode
2
- # from its own workspace - i.e. when the plugin is being developed.
3
- #
4
- # It will not be loaded when the plugin is imported by a 3rd party app - in that
5
- # case only lib/origen_jtag.rb is loaded.
6
- #
7
- # Therefore this file can be used to load anything extra that you need to boot
8
- # the development environment for this app. For example this is typically used
9
- # to load some additional test classes to use your plugin APIs so that they can
10
- # be tested and/or interacted with in the console.
11
- require 'origen_jtag'
12
-
13
- module OrigenJTAGDev
14
- # Example of how to explicitly require a file
15
- # require "origen_jtag_dev/my_file"
16
-
17
- # Load all files in the lib/origen_jtag_dev directory.
18
- # Note that there is no problem from requiring a file twice (Ruby will ignore
19
- # the second require), so if you have a file that must be required first, then
20
- # explicitly require it up above and then let this take care of the rest.
21
- Dir.glob("#{File.dirname(__FILE__)}/../lib/origen_jtag_dev/**/*.rb").sort.each do |file|
22
- require file
23
- end
24
- end
1
+ # This file is used to boot your plugin when it is running in standalone mode
2
+ # from its own workspace - i.e. when the plugin is being developed.
3
+ #
4
+ # It will not be loaded when the plugin is imported by a 3rd party app - in that
5
+ # case only lib/origen_jtag.rb is loaded.
6
+ #
7
+ # Therefore this file can be used to load anything extra that you need to boot
8
+ # the development environment for this app. For example this is typically used
9
+ # to load some additional test classes to use your plugin APIs so that they can
10
+ # be tested and/or interacted with in the console.
11
+ require 'origen_jtag'
12
+
13
+ module OrigenJTAGDev
14
+ # Example of how to explicitly require a file
15
+ # require "origen_jtag_dev/my_file"
16
+
17
+ # Load all files in the lib/origen_jtag_dev directory.
18
+ # Note that there is no problem from requiring a file twice (Ruby will ignore
19
+ # the second require), so if you have a file that must be required first, then
20
+ # explicitly require it up above and then let this take care of the rest.
21
+ Dir.glob("#{File.dirname(__FILE__)}/../lib/origen_jtag_dev/**/*.rb").sort.each do |file|
22
+ require file
23
+ end
24
+ end
data/config/commands.rb CHANGED
@@ -1,130 +1,137 @@
1
- # This file should be used to extend the origen command line tool with tasks
2
- # specific to your application.
3
- #
4
- # Also see the official docs on adding commands:
5
- # http://origen-sdk.org/origen/guides/custom/commands/
6
-
7
- # Map any command aliases here, for example to allow origen -x to refer to a
8
- # command called execute you would add a reference as shown below:
9
- aliases ={
10
- # "-x" => "execute",
11
- }
12
-
13
- # The requested command is passed in here as @command, this checks it against
14
- # the above alias table and should not be removed.
15
- @command = aliases[@command] || @command
16
-
17
- # Now branch to the specific task code
18
- case @command
19
-
20
- ## Run the unit tests
21
- when "specs"
22
- require "rspec"
23
- exit RSpec::Core::Runner.run(['spec'])
24
-
25
- when "examples", "test"
26
- Origen.load_application
27
- status = 0
28
-
29
- # Pattern generator tests
30
- ARGV = %w(jtag_workout -t RH1.rb -e v93k -r approved)
31
- load "#{Origen.top}/lib/origen/commands/generate.rb"
32
- ARGV = %w(jtag_workout -t RH1.rb -e j750.rb -r approved)
33
- load "#{Origen.top}/lib/origen/commands/generate.rb"
34
- ARGV = %w(jtag_workout -t RL1.rb -e j750.rb -r approved)
35
- load "#{Origen.top}/lib/origen/commands/generate.rb"
36
-
37
- ARGV = %w(jtag_workout -t RH2.rb -e j750.rb -r approved)
38
- load "#{Origen.top}/lib/origen/commands/generate.rb"
39
- ARGV = %w(jtag_workout -t RH2_1.rb -e j750.rb -r approved)
40
- load "#{Origen.top}/lib/origen/commands/generate.rb"
41
-
42
- ARGV = %w(jtag_workout -t RH4.rb -e v93k -r approved)
43
- load "#{Origen.top}/lib/origen/commands/generate.rb"
44
- ARGV = %w(jtag_workout -t RH4.rb -e j750.rb -r approved)
45
- load "#{Origen.top}/lib/origen/commands/generate.rb"
46
- ARGV = %w(jtag_workout -t RL4.rb -e j750.rb -r approved)
47
- load "#{Origen.top}/lib/origen/commands/generate.rb"
48
-
49
- ARGV = %w(rww_test -t RH4.rb -e j750.rb -r approved)
50
- load "#{Origen.top}/lib/origen/commands/generate.rb"
51
-
52
- ARGV = %w(global_label_test -t RH1.rb -e j750.rb -r approved)
53
- load "#{Origen.top}/lib/origen/commands/generate.rb"
54
-
55
- ARGV = %w(full_reg_ovly_cap -t RH4.rb -e uflex.rb -r approved)
56
- load "#{Origen.top}/lib/origen/commands/generate.rb"
57
-
58
- # Pattern generator tests -- confirm sub_block instanced jtag gives same results
59
- ARGV = %w(jtag_workout -t new_RH1 -e v93k -r approved)
60
- load "#{Origen.top}/lib/origen/commands/generate.rb"
61
- ARGV = %w(jtag_workout -t new_RH1 -e j750.rb -r approved)
62
- load "#{Origen.top}/lib/origen/commands/generate.rb"
63
- ARGV = %w(jtag_workout -t new_RL1 -e j750.rb -r approved)
64
- load "#{Origen.top}/lib/origen/commands/generate.rb"
65
-
66
- ARGV = %w(jtag_workout -t new_RH2.rb -e j750.rb -r approved)
67
- load "#{Origen.top}/lib/origen/commands/generate.rb"
68
- ARGV = %w(jtag_workout -t new_RH2_1.rb -e j750.rb -r approved)
69
- load "#{Origen.top}/lib/origen/commands/generate.rb"
70
-
71
- ARGV = %w(jtag_workout -t new_RH4 -e v93k -r approved)
72
- load "#{Origen.top}/lib/origen/commands/generate.rb"
73
- ARGV = %w(jtag_workout -t new_RH4 -e j750.rb -r approved)
74
- load "#{Origen.top}/lib/origen/commands/generate.rb"
75
- ARGV = %w(jtag_workout -t new_RL4 -e j750.rb -r approved)
76
- load "#{Origen.top}/lib/origen/commands/generate.rb"
77
-
78
- ARGV = %w(rww_test -t new_RH4 -e j750.rb -r approved)
79
- load "#{Origen.top}/lib/origen/commands/generate.rb"
80
-
81
- ARGV = %w(global_label_test -t new_RH1 -e j750.rb -r approved)
82
- load "#{Origen.top}/lib/origen/commands/generate.rb"
83
-
84
- ARGV = %w(full_reg_ovly_cap -t new_RH4 -e uflex.rb -r approved)
85
- load "#{Origen.top}/lib/origen/commands/generate.rb"
86
-
87
- ARGV = %w(two_port -t new_2port_RH4 -e j750.rb -r approved)
88
- load "#{Origen.top}/lib/origen/commands/generate.rb"
89
-
90
- ARGV = %w(jtag_workout -t new_P1 -e v93k -r approved)
91
- load "#{Origen.top}/lib/origen/commands/generate.rb"
92
-
93
- ARGV = %w(jtag_workout -t new_P4 -e v93k -r approved)
94
- load "#{Origen.top}/lib/origen/commands/generate.rb"
95
-
96
- ARGV = %w(jtag_workout -t serial_P1 -e v93k -r approved)
97
- load "#{Origen.top}/lib/origen/commands/generate.rb"
98
-
99
- if Origen.app.stats.changed_files == 0 &&
100
- Origen.app.stats.new_files == 0 &&
101
- Origen.app.stats.changed_patterns == 0 &&
102
- Origen.app.stats.new_patterns == 0
103
-
104
- Origen.app.stats.report_pass
105
- else
106
- Origen.app.stats.report_fail
107
- status = 1
108
- end
109
- puts
110
- if @command == "test"
111
- Origen.app.unload_target!
112
- require "rspec"
113
- result = RSpec::Core::Runner.run(['spec'])
114
- status = status == 1 ? 1 : result
115
- end
116
- exit status
117
-
118
- # Always leave an else clause to allow control to fall back through to the
119
- # Origen command handler.
120
- # You probably want to also add the command details to the help shown via
121
- # origen -h, you can do this be assigning the required text to @application_commands
122
- # before handing control back to Origen. Un-comment the example below to get started.
123
- else
124
- @application_commands = <<-EOT
125
- specs Run the specs (tests), -c will enable coverage
126
- examples Run the examples (tests), -c will enable coverage
127
- test Run both specs and examples, -c will enable coverage
128
- EOT
129
-
130
- end
1
+ # This file should be used to extend the origen command line tool with tasks
2
+ # specific to your application.
3
+ #
4
+ # Also see the official docs on adding commands:
5
+ # http://origen-sdk.org/origen/guides/custom/commands/
6
+
7
+ # Map any command aliases here, for example to allow origen -x to refer to a
8
+ # command called execute you would add a reference as shown below:
9
+ aliases ={
10
+ # "-x" => "execute",
11
+ }
12
+
13
+ # The requested command is passed in here as @command, this checks it against
14
+ # the above alias table and should not be removed.
15
+ @command = aliases[@command] || @command
16
+
17
+ # Now branch to the specific task code
18
+ case @command
19
+
20
+ ## Run the unit tests
21
+ when "specs"
22
+ require "rspec"
23
+ exit RSpec::Core::Runner.run(['spec'])
24
+
25
+ when "examples", "test"
26
+ Origen.load_application
27
+ status = 0
28
+
29
+ # Pattern generator tests
30
+ ARGV = %w(jtag_workout -t RH1.rb -e v93k -r approved)
31
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
32
+ ARGV = %w(jtag_workout -t RH1.rb -e j750.rb -r approved)
33
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
34
+ ARGV = %w(jtag_workout -t RL1.rb -e j750.rb -r approved)
35
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
36
+
37
+ ARGV = %w(jtag_workout -t RH2.rb -e j750.rb -r approved)
38
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
39
+ ARGV = %w(jtag_workout -t RH2_1.rb -e j750.rb -r approved)
40
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
41
+
42
+ ARGV = %w(jtag_workout -t RH4.rb -e v93k -r approved)
43
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
44
+ ARGV = %w(jtag_workout -t RH4.rb -e j750.rb -r approved)
45
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
46
+ ARGV = %w(jtag_workout -t RL4.rb -e j750.rb -r approved)
47
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
48
+
49
+ ARGV = %w(rww_test -t RH4.rb -e j750.rb -r approved)
50
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
51
+
52
+ ARGV = %w(global_label_test -t RH1.rb -e j750.rb -r approved)
53
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
54
+
55
+ ARGV = %w(full_reg_ovly_cap -t RH4.rb -e uflex.rb -r approved)
56
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
57
+
58
+ # Pattern generator tests -- confirm sub_block instanced jtag gives same results
59
+ ARGV = %w(jtag_workout -t new_RH1 -e v93k -r approved)
60
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
61
+ ARGV = %w(jtag_workout -t new_RH1 -e j750.rb -r approved)
62
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
63
+ ARGV = %w(jtag_workout -t new_RL1 -e j750.rb -r approved)
64
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
65
+
66
+ ARGV = %w(jtag_workout -t new_RH2.rb -e j750.rb -r approved)
67
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
68
+ ARGV = %w(jtag_workout -t new_RH2_1.rb -e j750.rb -r approved)
69
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
70
+
71
+ ARGV = %w(jtag_workout -t new_RH4 -e v93k -r approved)
72
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
73
+ ARGV = %w(jtag_workout -t new_RH4 -e j750.rb -r approved)
74
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
75
+ ARGV = %w(jtag_workout -t new_RL4 -e j750.rb -r approved)
76
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
77
+
78
+ ARGV = %w(rww_test -t new_RH4 -e j750.rb -r approved)
79
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
80
+
81
+ ARGV = %w(global_label_test -t new_RH1 -e j750.rb -r approved)
82
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
83
+
84
+ ARGV = %w(full_reg_ovly_cap -t new_RH4 -e uflex.rb -r approved)
85
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
86
+
87
+ ARGV = %w(two_port -t new_2port_RH4 -e j750.rb -r approved)
88
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
89
+
90
+ ARGV = %w(jtag_workout -t new_P1 -e v93k -r approved)
91
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
92
+
93
+ ARGV = %w(jtag_workout -t new_P4 -e v93k -r approved)
94
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
95
+
96
+ ARGV = %w(jtag_workout -t serial_P1 -e v93k -r approved)
97
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
98
+
99
+ ARGV = %w(chained_devices_test -t new_RH4 -e uflex.rb -r approved)
100
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
101
+
102
+ # defaults to subroutine overlay, check behavior
103
+ ARGV = %w(chained_devices_test -t new_RH4 -e v93k -r approved)
104
+ load "#{Origen.top}/lib/origen/commands/generate.rb"
105
+
106
+ if Origen.app.stats.changed_files == 0 &&
107
+ Origen.app.stats.new_files == 0 &&
108
+ Origen.app.stats.changed_patterns == 0 &&
109
+ Origen.app.stats.new_patterns == 0
110
+
111
+ Origen.app.stats.report_pass
112
+ else
113
+ Origen.app.stats.report_fail
114
+ status = 1
115
+ end
116
+ puts
117
+ if @command == "test"
118
+ Origen.app.unload_target!
119
+ require "rspec"
120
+ result = RSpec::Core::Runner.run(['spec'])
121
+ status = status == 1 ? 1 : result
122
+ end
123
+ exit status
124
+
125
+ # Always leave an else clause to allow control to fall back through to the
126
+ # Origen command handler.
127
+ # You probably want to also add the command details to the help shown via
128
+ # origen -h, you can do this be assigning the required text to @application_commands
129
+ # before handing control back to Origen. Un-comment the example below to get started.
130
+ else
131
+ @application_commands = <<-EOT
132
+ specs Run the specs (tests), -c will enable coverage
133
+ examples Run the examples (tests), -c will enable coverage
134
+ test Run both specs and examples, -c will enable coverage
135
+ EOT
136
+
137
+ end
data/config/version.rb CHANGED
@@ -1,7 +1,7 @@
1
- module OrigenJTAG
2
- MAJOR = 0
3
- MINOR = 22
4
- BUGFIX = 3
5
- DEV = nil
6
- VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
7
- end
1
+ module OrigenJTAG
2
+ MAJOR = 0
3
+ MINOR = 23
4
+ BUGFIX = 0
5
+ DEV = nil
6
+ VERSION = [MAJOR, MINOR, BUGFIX].join(".") + (DEV ? ".pre#{DEV}" : '')
7
+ end