-
Notifications
You must be signed in to change notification settings - Fork 267
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
Join forces with hdl/constraints #105
Comments
This repository is really interesting and the idea to avoid doing more than one time the same task is good. |
FTR, now there is a "Constraints" column in the Boards compatibility list, which contains cross-references to hdl/constraints through interpshinx. See #160 and #161. Possible enhancements:
|
Thanks for the update!
|
The documentation of hdl/constraints now contains some data extracted from the doc helpers in this repo. If field Constraints is defined here, the openFPGALoader ID, Memory and Flash fields are shown in hdl.github.io/constraints: Boards. |
It's really awesome! |
I have to update board list with missing ref (and use hdl/constraints to complete the board list / update my shopping list :-) ) boards representation in hdl/constraints looks better than simple array (and it's possible to add note / limitation / informations). The only advantage of the table is to have in few set of lines basic informations (board keywords and name). |
Moved from #102 (comment).
@trabucayre, I would like to propose joining forces with hdl/constraints. Subdir board contains a subdir for each board. There, an
info.yml
file contains the data about the board (label, device, package, part number, docs, programmers, etc.). In some cases, aREADME.md
containing a frontmatter is used instead of the YAML file. See, for instance:Apart from the data, constraint files are provided (in XDC, PCF, LPF, etc.).
Some boards are in the .todo subdir, which means that the constraints were not gathered/reworked yet. However, all of them contain data at least.
The content of hdl/constraints is shown in hdl.github.io/awesome/boards (all boards, "todo" and "not todo"). In the list, the board, the device and a picture are shown, along with icons/references to the constraints repo, the datasheets, git repos, etc. There is a page for each board, where the complete
info.yml
/README.md
content is shown. For instance:Overall, the main purpose of hdl/constraints is for projects such as openFPGALoader to avoid the maintenance burden of gathering all the references. You can use a single link (
hdl.github.io/awesome/boards/BOARDIDENTIFIER
) to access an "entrypoint" containing multiple references for that board. Moreover, we are discussing about generating (interactive) pinout diagrams (maybe automatically from KiCAD sources): hdl/constraints#3. Then, the page of each board would contain the pinout, apart from the photo/render.Therefore, I would be willing to adapt/modify the board info template (https://github.com/hdl/constraints/blob/main/template/board.info.yml) in order to better fit the information about openFPGALoader. Say:
By the same token, driver setup data (https://github.com/trabucayre/openFPGALoader/blob/master/99-openfpgaloader.rules) might be provided in hdl/constraints: prog. Ref: f4pga/f4pga-arch-defs#2240 (comment).
As a result of having the information available in a machine-readable format (fields of a YAML block), the table might be generated automatically. Python can read YAML easily and tabulate allows writing tables in multiple formats, including 'github', 'rst', 'html', 'latex',... (https://github.com/astanin/python-tabulate#table-format). The table might be shown in hdl.github.io/awesome/items/openfpgaloader and/or added as a page to the site of this repo. Obviously, I can contribute the script to do that, either in the CI from hdl/awesome or in here.
/cc @mithro
The text was updated successfully, but these errors were encountered: