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

[tracking] Use ipgen to produce templated IPs #8440

Closed
17 tasks done
imphil opened this issue Sep 29, 2021 · 13 comments
Closed
17 tasks done

[tracking] Use ipgen to produce templated IPs #8440

imphil opened this issue Sep 29, 2021 · 13 comments
Assignees
Labels
Component:Tooling Issues related to tooling, e.g. tools/scripts for doc, code generation (docgen, reggen), CSR Earlgrey-PROD Candidate Temporary label to triage issues into Earlgrey-PROD Milestones IP:clkmgr IP:flash_ctrl IP:otp_ctrl IP:pwrmgr IP:rstmgr Priority:P2 Priority: medium Triaging:MultipleBlocks Issue is relevant for the triage of multiple HW blocks Type:Cleanup Cleanup tasks
Milestone

Comments

@imphil
Copy link
Contributor

imphil commented Sep 29, 2021

The following IP blocks are actually templates at the moment and need to be converted to be using ipgen (slides discussing motivation and general approach).

When the list above is done

Blocks which were unclear, and their resolution:

  • ast: doesn't need generation
  • xbar: xbars have their own dedicated generation
  • xbar_main: xbars have their own dedicated generation
  • xbar_peri: xbars have their own dedicated generation
@imphil imphil added the Type:Enhancement Feature requests, enhancements label Sep 29, 2021
@imphil imphil self-assigned this Sep 29, 2021
@msfschaffner msfschaffner added Component:Tooling Issues related to tooling, e.g. tools/scripts for doc, code generation (docgen, reggen), CSR Priority:P2 Priority: medium labels Mar 8, 2022
@msfschaffner msfschaffner added this to the Project: M2 milestone Mar 8, 2022
@msfschaffner msfschaffner added Type:Cleanup Cleanup tasks and removed Type:Enhancement Feature requests, enhancements labels Mar 8, 2022
@msfschaffner msfschaffner mentioned this issue Jun 28, 2022
9 tasks
@msfschaffner msfschaffner modified the milestones: Project: M2, Project: M3 Jul 20, 2022
@msfschaffner
Copy link
Contributor

CC @alphan

@GregAC GregAC added the Triaging:MultipleBlocks Issue is relevant for the triage of multiple HW blocks label Feb 22, 2023
@GregAC GregAC modified the milestones: Discrete: M3, Backlog Feb 22, 2023
@GregAC GregAC added the Type:FutureRelease Not relevant to currently planned releases/milestones label Feb 22, 2023
@GregAC
Copy link
Contributor

GregAC commented Feb 22, 2023

Triaging for flash_ctrl. This is a significant chunk of work and not required for M2.5, however it is likely useful for integrated.

@andreaskurth
Copy link
Contributor

Triaged for pwrmgr - agree

andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
The older way to generate files is preserved.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
Changes paths to pinmux to new ip_autogen files or to non-template
files in ip_templates when linked from directories in plain hw/ip.

Run cmdgen.py to populate contents of pinmux autogen registers and
interfaces md files.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
Also change the flash_ctrl attr to ipgen.
Change top_earlgrey_fpv_ip_cfgs.hjson to run both pinmux tbs,
adjust paths, and fusesoc targets.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
This fixes core files outside pinmux to use the correct dependencies.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
andrea-caforio pushed a commit to andrea-caforio/opentitan that referenced this issue Nov 12, 2024
This deletes all hw/ip/pinmux and hw/top_earlgrey/ip/pinmux files
since they are no longer used.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 13, 2024
Check modules have no 'attr' field, or it is ipgen, reggen_top,
or reggen_only.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 14, 2024
Render ip description now requires an hjson.tpl file: it used to
accept a non-template one, but those have already been removed
from the repo.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 14, 2024
Check modules have no 'attr' field, or it is ipgen, reggen_top,
or reggen_only.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 14, 2024
Render ip description now requires an hjson.tpl file: it used to
accept a non-template one, but those have already been removed
from the repo.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 15, 2024
Check modules have no 'attr' field, or it is ipgen, reggen_top,
or reggen_only.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 15, 2024
Render ip description now requires an hjson.tpl file: it used to
accept a non-template one, but those have already been removed
from the repo.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 15, 2024
Check modules have no 'attr' field, or it is ipgen, reggen_top,
or reggen_only.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 15, 2024
Render ip description now requires an hjson.tpl file: it used to
accept a non-template one, but those have already been removed
from the repo.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 15, 2024
Check modules have no 'attr' field, or it is ipgen, reggen_top,
or reggen_only.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 15, 2024
Render ip description now requires an hjson.tpl file: it used to
accept a non-template one, but those have already been removed
from the repo.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 15, 2024
Check modules have no 'attr' field, or it is ipgen, reggen_top,
or reggen_only.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 15, 2024
Render ip description now requires an hjson.tpl file: it used to
accept a non-template one, but those have already been removed
from the repo.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 16, 2024
Check modules have no 'attr' field, or it is ipgen, reggen_top,
or reggen_only.
Remove handling of templated ips in a few places under the util tree.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Nov 16, 2024
Render ip description now requires an hjson.tpl file: it used to
accept a non-template one, but those have already been removed
from the repo.

Part of lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit that referenced this issue Nov 19, 2024
Check modules have no 'attr' field, or it is ipgen, reggen_top,
or reggen_only.
Remove handling of templated ips in a few places under the util tree.

Part of #8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit that referenced this issue Nov 19, 2024
Render ip description now requires an hjson.tpl file: it used to
accept a non-template one, but those have already been removed
from the repo.

Part of #8440

Signed-off-by: Guillermo Maturana <[email protected]>
@matutem
Copy link
Contributor

matutem commented Nov 19, 2024

Closing this since the work on otp_ctrl is tracked in a separate issue: #25019

@matutem matutem closed this as completed Nov 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component:Tooling Issues related to tooling, e.g. tools/scripts for doc, code generation (docgen, reggen), CSR Earlgrey-PROD Candidate Temporary label to triage issues into Earlgrey-PROD Milestones IP:clkmgr IP:flash_ctrl IP:otp_ctrl IP:pwrmgr IP:rstmgr Priority:P2 Priority: medium Triaging:MultipleBlocks Issue is relevant for the triage of multiple HW blocks Type:Cleanup Cleanup tasks
Projects
None yet
Development

No branches or pull requests