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

Open
11 of 19 tasks
imphil opened this issue Sep 29, 2021 · 12 comments
Open
11 of 19 tasks

[tracking] Use ipgen to produce templated IPs #8440

imphil opened this issue Sep 29, 2021 · 12 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: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

  • Remove topgen support for "templated" module "attr" attribute
  • Remove topgen quirks due to templated path searches, as for countermeasures

Blocks which need a closer look:

  • ast
    - [ ] padctrl
  • otp_ctrl
  • sensor_ctrl (not templated)
  • xbar
  • xbar_main
  • xbar_peri
@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

matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
The files are almost identical to the previous ones, except they use
${topname} instead of a specific name and consecutive '#' are escaped
so they are not considered md comments. This escape replaces things like
`###` by `${"###"}`.

Adjust some relative paths to account for the change in the file locations.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
The template core files use instance_vlnv, and declare a virtual target.
Change other core files depending on the template cores to depend on the
corresponding virtual target instead.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Add pinmux in hw/ip_templates/BUILD all_files. Template files are only
intended for code generation, so it makes no sense to build their targets.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
The older way to generate files is preserved.
Add FUSESOC_IGNORE in hw/ip_templates/pinmux: it can be
removed once the pinmux change to ipgen is complete.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Also change the flash_ctrl attr to ipgen.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
This fixes core files outside pinmux to use the correct dependencies.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
The older way to generate files is preserved.
Add FUSESOC_IGNORE in hw/ip_templates/pinmux: it can be
removed once the pinmux change to ipgen is complete.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Also change the flash_ctrl attr to ipgen.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
This fixes core files outside pinmux to use the correct dependencies.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Make this a template file so it is top-independent.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Add pinmux in hw/ip_templates/BUILD all_files. Template files are only
intended for code generation, so it makes no sense to build their targets.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
The older way to generate files is preserved.
Add FUSESOC_IGNORE in hw/ip_templates/pinmux: it can be
removed once the pinmux change to ipgen is complete.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Also change the flash_ctrl attr to ipgen.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
matutem added a commit to matutem/opentitan that referenced this issue Oct 22, 2024
This fixes core files outside pinmux to use the correct dependencies.

Part of pinmux lowRISC#8440

Signed-off-by: Guillermo Maturana <[email protected]>
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: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