Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch icestudio to use 'apio lint' instead of 'apio verify'. #775

Open
zapta opened this issue Oct 20, 2024 · 5 comments
Open

Switch icestudio to use 'apio lint' instead of 'apio verify'. #775

zapta opened this issue Oct 20, 2024 · 5 comments

Comments

@zapta
Copy link

zapta commented Oct 20, 2024

Apio has two commands to verify the code, 'apio lint' and 'apio verify' and this is confusing. I am looking into consolidating both of them into a single 'apio lint', possibly with a flag to achieve (reduced?) functionality similar to 'apio verify'.

This issue is for migrating icestudio to use 'apio lint' instead of 'apio verify'. If 'apio lint' do not meet some must-have requirements, please let me know and I will try to adapt it.

@cavearr
Copy link
Member

cavearr commented Oct 20, 2024

Please, don't remove 'apio verify' until i try your new lint mode, maintain both during transition and if you want check as "deprecated" with some text in the output.

We maintain this thread to talk about the tests

@zapta
Copy link
Author

zapta commented Oct 20, 2024

Sounds good. Will wait for OK from you regarding the deletion of 'apio verify'.

What about 'apio time', does icestudio use it? The new command 'apio report' superceeds it because it also provides utilization information, and timing info for ECP5 and GOWIN ('apio time' is implemented only for ice40).

@zapta
Copy link
Author

zapta commented Oct 20, 2024

... apio lint creates on the fly a restriction file for verilator that limits some tests. For example, for ice40 it looks like the one below. If needed, we can add a flag apio lint --relaxed that disables more lint checks as a replacement for apio verify.

hardware.vlt:

`verilator_config
lint_off -rule COMBDLY      -file "/Users/user/.apio/packages/tools-oss-cad-suite/share/yosys/ice40/*"
lint_off -rule WIDTHEXPAND  -file "/Users/user/.apio/packages/tools-oss-cad-suite/share/yosys/ice40/*"

@cavearr
Copy link
Member

cavearr commented Oct 20, 2024

i'll try 'apio time' and view how to integrate it in icestudio i think could be very useful.

@zapta
Copy link
Author

zapta commented Oct 21, 2024

I suggest not to release icestudio with a dependency on 'apio time', It's going to be replaced by 'apio report' which is more informative and works also for ecp5 and gowin. 'apio report' is already in the apio dev branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants